mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-10 14:53:26 +09:00
![]() Currently the AHB1 clock speed is configured as 200MHz by the SPL, but this causes a subtle and hard to reproduce data corruption in SRAM C (for example, this can't be easily detected with a trivial memset/memcmp test). For what it's worth, the Allwinner's BSP configures AHB1 as 200MHz, as can be verified by running the devmem2 tool in the system running the Allwinner's kernel 3.10.x: 0x1C20028: PLL_PERIPH0_CTRL_REG = 0x90041811 0x1C20054: AHB1_APB1_CFG_REG = 0x3180 0x1C20058: APB2_CFG_REG = 0x1000000 0x1C2005C: AHB2_CFG_REG = 0x1 However the FEL mode uses more conservative settings (100MHz for AHB1): 0x1C20028: PLL_PERIPH0_CTRL_REG = 0x90041811 0x1C20054: AHB1_APB1_CFG_REG = 0x3190 0x1C20058: APB2_CFG_REG = 0x1000000 0x1C2005C: AHB2_CFG_REG = 0x0 It is yet to be confirmed whether faster AHB1/AHB2 clock settings can be used safely if we initialize the AXP803 PMIC instead of using reset defaults. But in order to resolve the data corruption problem right now, it's best to downclock AHB1 to a safe level. Note that this issue only affects the SPL, which is not fully supported on Allwinner A64 yet and it should not affect the boot0 usage (unless somebody can confirm SRAM C corruption with the boot0 too). Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> |
||
---|---|---|
.. | ||
boot0.h | ||
clock_sun4i.h | ||
clock_sun6i.h | ||
clock_sun8i_a83t.h | ||
clock_sun9i.h | ||
clock.h | ||
cpu_sun4i.h | ||
cpu_sun9i.h | ||
cpu.h | ||
cpucfg_sun6i.h | ||
display.h | ||
dma_sun4i.h | ||
dma.h | ||
dram_sun4i.h | ||
dram_sun6i.h | ||
dram_sun8i_a23.h | ||
dram_sun8i_a33.h | ||
dram_sun8i_a83t.h | ||
dram_sun8i_h3.h | ||
dram.h | ||
gpio.h | ||
i2c.h | ||
mmc.h | ||
p2wi.h | ||
pmic_bus.h | ||
prcm.h | ||
rsb.h | ||
spl.h | ||
sys_proto.h | ||
timer.h | ||
tzpc.h | ||
usb_phy.h | ||
watchdog.h |