u-boot/arch/x86/cpu/quark
Bin Meng c6d4705f41 x86: quark: Configure MTRR to enable cache
Quark SoC does not support MSR MTRRs. Fixed and variable range MTRRs
are accessed indirectly via the message port and not the traditional
MSR mechanism. Only UC, WT and WB cache types are supported.

We configure all the fixed range MTRRs with common values (VGA RAM
as UC, others as WB) and 3 variable range MTRRs for ROM/eSRAM/RAM as
WB, which significantly improves the boot time performance.

With this commit, it takes only 2 seconds for U-Boot to boot to shell
on Intel Galileo board. Previously it took about 6 seconds.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
2015-09-16 19:53:53 -06:00
..
car.S x86: quark: Add Cache-As-RAM initialization 2015-02-06 12:07:41 -07:00
dram.c x86: quark: Configure MTRR to enable cache 2015-09-16 19:53:53 -06:00
hte.c x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00
hte.h x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00
Kconfig x86: quark: Bypass TSC calibration 2015-02-06 12:07:42 -07:00
Makefile x86: Convert to use driver model pci on quark/galileo 2015-09-09 07:48:03 -06:00
mrc.c arch/x86/cpu/quark/mrc.c: Switch to U_BOOT_DATE / U_BOOT_TIME 2015-03-24 21:22:37 -06:00
mrc_util.c x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00
mrc_util.h x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00
msg_port.c x86: quark: Optimize MRC execution time 2015-09-09 07:48:03 -06:00
quark.c x86: quark: Configure MTRR to enable cache 2015-09-16 19:53:53 -06:00
smc.c x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00
smc.h x86: quark: MRC codes clean up 2015-03-24 21:22:37 -06:00