2ddae9cc04
When booting directly into a kernel, bypassing the boot loader, the CPU and UART clocks are not set up correctly. This makes the system appear very slow, and causes the initrd boot test to fail when optimization is off. The UART clock must run at 24 MHz. The default 25 MHz reference clock cannot achieve this, so switch to PLL2/2 @ 480 MHz, which works perfectly with the default /20 divider. The CPU clock should run at 800 MHz, so switch it to PLL1/2. PLL1 runs at 800 MHz by default, so we need to double the feedback divider as well to make it run at 1600 MHz (so PLL1/2 runs at 800 MHz). We don't bother checking for PLL lock because we know our emulated PLLs lock instantly. Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Havard Skinnemoen <hskinnemoen@google.com> Message-id: 20200911052101.2602693-13-hskinnemoen@google.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org> |
||
---|---|---|
.. | ||
allwinner-a10.h | ||
allwinner-h3.h | ||
armsse.h | ||
armv7m.h | ||
aspeed_soc.h | ||
aspeed.h | ||
bcm2835_peripherals.h | ||
bcm2836.h | ||
boot.h | ||
digic.h | ||
exynos4210.h | ||
fdt.h | ||
fsl-imx6.h | ||
fsl-imx6ul.h | ||
fsl-imx7.h | ||
fsl-imx25.h | ||
fsl-imx31.h | ||
linux-boot-if.h | ||
msf2-soc.h | ||
npcm7xx.h | ||
nrf51_soc.h | ||
nrf51.h | ||
omap.h | ||
primecell.h | ||
pxa.h | ||
raspi_platform.h | ||
sharpsl.h | ||
smmu-common.h | ||
smmuv3.h | ||
soc_dma.h | ||
stm32f205_soc.h | ||
stm32f405_soc.h | ||
sysbus-fdt.h | ||
virt.h | ||
xlnx-versal.h | ||
xlnx-zynqmp.h |