Part Number: TMDSIDK574
Hello.
I have a custom board based on TMDSIDK574 (AM5749).
There is a problem that the u-boot is stopped while it is in progress. I am asking for help to solve this problem.
The circuit diagram and related materials are attached.
- schematic
3465.ti cpu-am5749abzxea-20201229(fi.pdf5531.ti cpu-am5749abzxea-base-0201-a5.pdf
- pinmux changes
5140.TIAM57x-pinmux-config.xlsx
- custom board boot log message
4035.am57_jmt-COM9-115200-8N1-2021-10-29_1728.log
- emif tool custom board file
7571.EMIF_RegisterConfig-JMTECH - 1866.xlsm
- custom board eeprom skip
From d8a87913088b840921c52b5b0896c577acd3b0be Mon Sep 17 00:00:00 2001 From: wjchoi <red_ice@naver.com> Date: 수, 16 6월 2021 16:27:34 +0900 Subject: [PATCH] not eeprom support --- board/ti/common/board_detect.c | 34 ++++++++++++++++++++++++++++++++++ 1 files changed, 34 insertions(+), 0 deletions(-) diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c index e150d23..8845aba 100644 --- a/board/ti/common/board_detect.c +++ b/board/ti/common/board_detect.c @@ -174,6 +174,9 @@ int __maybe_unused ti_i2c_eeprom_am_set(const char *name, const char *rev) { +#if 1 // wj@dev210506 - eeprom board info setting + return 0; +#else struct ti_common_eeprom *ep; if (!name || !rev) @@ -194,10 +197,36 @@ already_set: return 0; +#endif } int __maybe_unused ti_i2c_eeprom_am_get(int bus_addr, int dev_addr) { +#if 1 // wj@dev210506 - eeprom board info setting + struct ti_common_eeprom *ep; + + ep = TI_EEPROM_DATA; +#ifndef CONFIG_SPL_BUILD + if (ep->header == TI_EEPROM_HEADER_MAGIC) + return 0; /* EEPROM has already been read */ +#endif + + /* Initialize with a known bad marker for i2c fails.. */ + ep->header = TI_DEAD_EEPROM_MAGIC; + ep->name[0] = 0x0; + ep->version[0] = 0x0; + ep->serial[0] = 0x0; + ep->config[0] = 0x0; + + ep->header = TI_EEPROM_HEADER_MAGIC; + strlcpy(ep->name, "AM574IDK", TI_EEPROM_HDR_NAME_LEN + 1); + ti_eeprom_string_cleanup(ep->name); + strlcpy(ep->version, "1.3D", TI_EEPROM_HDR_REV_LEN + 1); + ti_eeprom_string_cleanup(ep->version); + strlcpy(ep->serial, "23204P770087", TI_EEPROM_HDR_SERIAL_LEN + 1); + ti_eeprom_string_cleanup(ep->serial); + return 0; +#else int rc; struct ti_am_eeprom am_ep; struct ti_common_eeprom *ep; @@ -240,6 +269,7 @@ TI_EEPROM_HDR_NO_OF_MAC_ADDR * TI_EEPROM_HDR_ETH_ALEN); return 0; +#endif } int __maybe_unused ti_emmc_boardid_get(void) @@ -557,11 +587,15 @@ bool __maybe_unused board_ti_is(char *name_tag) { +#if 1 // wj@dev210506 - eeprom board info setting + return !strcmp("AM574IDK", name_tag); +#else struct ti_common_eeprom *ep = TI_EEPROM_DATA; if (ep->header == TI_DEAD_EEPROM_MAGIC) return false; return !strncmp(ep->name, name_tag, TI_EEPROM_HDR_NAME_LEN); +#endif } bool __maybe_unused board_ti_rev_is(char *rev_tag, int cmp_len) -- Gitblit v1.8.0
Symptoms of the current custom board
1. WARM RESET does not work normally.
- After inputting CPU RESETn in WARM RESET S/W, RESET OUT from CPU is normal.
- WARMRESETdp input of RESET OUT has been confirmed - PMIC RESSET_OUT does not work. (Condition is that BOOT1 is VRTC, Pullup, GPIO7 High) are all satisfied.
- PMIC VIO_IN 3.3 input has been confirmed, there is no 32KGO signal.
- 16.384MHz OSC Load Capacito has 27pF, but OSC is 18p. Unable to determine if it is normal 32KGO was checked, but there is no signal. (TMDSIDK574 also confirms no signal)
- An attempt was made to check the PMIC Power Good signal, but the location was not confirmed.
- When WARM RESET SW is pressed, RESETn operates in CPU, and this pin operates nRESETWARM of PMIC.
If BOOT1 is VRTC_OUT and GPIO 7 is VDD3.3, PMIC_RESET_OUTn should drop to Low, but it is not operating. (The operation was confirmed with TMDSIDK574.)
2. PMIC ON custom board booting without Power On button
3. Stopped during u-boot. The stopping point is changed according to the progress of time
- DDR Speed change (ddr_dpll_params_2664mhz -> 2128mhz) Probability increases until u-boot load progresses. Message output stopped
- u-boot last message
DELETE CANDIDATE: "optargs"
hdelete: DELETE key "optargs"
DELETE ERROR ################################
- Apply EMIF TOOL custom settings