u-boot/arch/x86/cpu
Simon Glass d496162c85 x86: spi: Add helper functions for Intel Fast SPI
Most x86 CPUs use a mechanism where the SPI flash is mapped into the very
top of 32-bit address space, so that it can be executed in place and read
simply by copying from memory. For an 8MB ROM the mapping starts at
0xff800000.

However some recent Intel CPUs do not use a simple 1:1 memory map. Instead
the map starts at a different address and not all of the SPI flash is
accessible through the map. This 'Fast SPI' feature requires that U-Boot
check the location of the map. It is also possible (optionally) to read
from the SPI flash using a driver.

Add support for booting from Fast SPI. The memory-mapped version is used
by both TPL and SPL on Apollo Lake.

In respect of a SPI flash driver, the actual SPI driver is ich.c - this
just adds a few helper functions and definitions.

This is used by Apollo Lake.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-12-15 11:44:08 +08:00
..
baytrail x86: Tidy up some duplicate MSR defines 2019-10-08 13:57:47 +08:00
braswell x86: Rename some FSP functions to have an fsp_ prefix 2019-10-08 13:53:34 +08:00
broadwell common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
coreboot common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
efi common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
i386 common: Move interrupt functions into a new header 2019-12-02 18:25:00 -05:00
intel_common x86: spi: Add helper functions for Intel Fast SPI 2019-12-15 11:44:08 +08:00
ivybridge common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
qemu common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
quark common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
queensbay x86: Rename some FSP functions to have an fsp_ prefix 2019-10-08 13:53:34 +08:00
slimbootloader common: Move board_get_usable_ram_top() out of common.h 2019-12-02 18:25:04 -05:00
tangier common: Move checkcpu() out of common.h 2019-12-02 18:23:14 -05:00
x86_64 common: Move interrupt functions into a new header 2019-12-02 18:25:00 -05:00
call32.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
config.mk x86: Drop RESET_SEG_SIZE 2019-10-11 17:37:34 +08:00
cpu.c common: Move some cache and MMU functions out of common.h 2019-12-02 18:23:55 -05:00
cpu_x86.c cpu: Add DM_FLAG_PRE_RELOC flag to various cpu drivers 2018-11-14 09:16:28 -08:00
ioapic.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
irq.c x86: irq: Support discrete PIRQ routing registers via device tree 2018-06-13 09:50:57 +08:00
lapic.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile x86: cpu: Don't include the cpu driver in TPL 2019-10-08 13:57:49 +08:00
mp_init.c x86: mp_init: Use proper error numbers 2019-05-08 13:02:11 +08:00
mtrr.c common: Move some cache and MMU functions out of common.h 2019-12-02 18:23:55 -05:00
pci.c x86: pci: Drop the first parameter in pci_x86_r/w_config() 2019-10-08 13:57:46 +08:00
resetvec.S x86: Reduce resetvec size 2019-10-11 17:37:38 +08:00
sipi_vector.S SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
start.S x86: Add more comments to the start-up code 2019-10-08 13:57:36 +08:00
start16.S x86: simplify ljmp to 32-bit code 2019-12-08 19:10:21 +08:00
start64.S x86: start64: Fix copyright message 2019-05-08 13:02:10 +08:00
start_from_spl.S x86: Move CPU init to before spl_init() 2019-11-03 07:20:28 +08:00
start_from_tpl.S x86: Add more comments to the start-up code 2019-10-08 13:57:36 +08:00
turbo.c x86: Tidy up some duplicate MSR defines 2019-10-08 13:57:47 +08:00
u-boot-64.lds x86: Include bss subsections in linker script 2018-08-20 14:17:43 +02:00
u-boot-spl.lds x86: Add binman symbols to the image 2019-10-08 13:57:35 +08:00
u-boot.lds x86: Include bss subsections in linker script 2018-08-20 14:17:43 +02:00
wakeup.S x86: Move acpi_s3.h to a common location 2019-10-08 13:57:46 +08:00