mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
spi: Add support for memory-mapped flash
On x86 platforms the SPI flash can be mapped into memory so that the contents can be read with normal memory accesses. Add a new SPI method to find the location of the SPI flash in memory. This differs from the existing device-tree "memory-map" mechanism in that the location can be discovered at run-time. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
@@ -23,6 +23,9 @@ static int dm_test_spi_flash(struct unit_test_state *uts)
|
||||
int full_size = 0x200000;
|
||||
int size = 0x10000;
|
||||
u8 *src, *dst;
|
||||
uint map_size;
|
||||
ulong map_base;
|
||||
uint offset;
|
||||
int i;
|
||||
|
||||
src = map_sysmem(0x20000, full_size);
|
||||
@@ -54,6 +57,12 @@ static int dm_test_spi_flash(struct unit_test_state *uts)
|
||||
sandbox_sf_set_block_protect(emul, 0);
|
||||
ut_asserteq(0, spl_flash_get_sw_write_prot(dev));
|
||||
|
||||
/* Check mapping */
|
||||
ut_assertok(dm_spi_get_mmap(dev, &map_base, &map_size, &offset));
|
||||
ut_asserteq(0x1000, map_base);
|
||||
ut_asserteq(0x2000, map_size);
|
||||
ut_asserteq(0x100, offset);
|
||||
|
||||
/*
|
||||
* Since we are about to destroy all devices, we must tell sandbox
|
||||
* to forget the emulation device
|
||||
|
||||
Reference in New Issue
Block a user