Hi,
Our system is the fllowing in details
・i.MX6Solo custom board
・BSP version is imx-yocto-L4.14.78_1.0.0_ga
・DDR3 name is MT41K256M16TW-093-P
Our system is hang when low frequency mode enables.
After busfreq driver is disable, Our system is work.
To disable the bus frequency driver, use the following command:
# echo 0 > /sys/bus/platform/drivers/imx_busfreq/soc\:busfreq/enable
This hang cause is two patterns.
source:arch/arm/mach-imx/ddr3_freq_imx6.S
function:mx6_ddr3_freq_change
Pttern1
After DDR3 is at 24 MHz, DDR3 setting changes the following
ldr r0, =0x00018031
str r0, [r5, #MMDC0_MDSCR]
ldr r0, =0x00018039
str r0, [r5, #MMDC0_MDSCR]
ldr r0, =0x08208030
str r0, [r5, #MMDC0_MDSCR]
ldr r0, =0x08208038
str r0, [r5, #MMDC0_MDSCR]
ldr r0, =0x00088032
str r0, [r5, #MMDC0_MDSCR]
ldr r0, =0x0008803A
str r0, [r5, #MMDC0_MDSCR]
Pttern2
1073 line
/* flush the TLB */
ldr r6, =0x0
mcr p15, 0, r6, c8, c3, 0
dsb
isb
This hang is i.MX6Solo only problem or errata ?
Because i.MX6DL sabresd is work.
Best Regards
Hi MasakiHayakawa
issue may be caused by mmdc settings, one can run latest ddr test and use RPA tool
https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX6ULL-LPDDR2-Script-Aid/ta-p/1121785
then update image (uboot dcd header below), use nxp uboot/linux from
source.codeaurora.org/external/imx repository
Best regards
igor
Hi igor,
Thank you for your reply, the hang problem was solved.
MMDC0_MDREF was wrong setting.
wrong setting
0x21b0020 0x00007800
correct setting
0x21b0020 0x00005800
We changed tREFI from 3.9μs to 7.8μs.
Thanks