mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-22 03:03:05 +00:00
d496162c85
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>
20 lines
331 B
C
20 lines
331 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (C) 2017 Google, Inc
|
|
* Written by Simon Glass <sjg@chromium.org>
|
|
*/
|
|
|
|
#ifndef __asm_spl_h
|
|
#define __asm_spl_h
|
|
|
|
#define CONFIG_SPL_BOARD_LOAD_IMAGE
|
|
|
|
enum {
|
|
BOOT_DEVICE_SPI_MMAP = 10,
|
|
BOOT_DEVICE_FAST_SPI,
|
|
BOOT_DEVICE_CROS_VBOOT,
|
|
};
|
|
|
|
void jump_to_spl(ulong entry);
|
|
|
|
#endif
|