diff options
-rw-r--r-- | flashrom.c | 12 | ||||
-rw-r--r-- | include/programmer.h | 2 | ||||
-rw-r--r-- | parallel.c | 2 | ||||
-rw-r--r-- | programmer.c | 17 |
4 files changed, 8 insertions, 25 deletions
@@ -215,11 +215,15 @@ void *master_map_flash_region(const struct registered_master *mst, else if (mst->buses_supported & BUS_NONSPI) map_flash_region = mst->par.map_flash_region; - void *ret; + /* A result of NULL causes mapped addresses to be chip physical + * addresses, assuming only a single region is mapped (the entire flash + * space). Chips with a second region (like a register map) require a + * real memory mapping to distinguish the different ranges. Those chips + * are FWH/LPC, so the bus master provides a real mapping. + */ + void *ret = NULL; if (map_flash_region) ret = map_flash_region(descr, phys_addr, len); - else - ret = fallback_map(descr, phys_addr, len); msg_gspew("%s: mapping %s from 0x%0*" PRIxPTR " to 0x%0*" PRIxPTR "\n", __func__, descr, PRIxPTR_WIDTH, phys_addr, PRIxPTR_WIDTH, (uintptr_t) ret); return ret; @@ -236,8 +240,6 @@ void master_unmap_flash_region(const struct registered_master *mst, if (unmap_flash_region) unmap_flash_region(virt_addr, len); - else - fallback_unmap(virt_addr, len); msg_gspew("%s: unmapped 0x%0*" PRIxPTR "\n", __func__, PRIxPTR_WIDTH, (uintptr_t)virt_addr); } diff --git a/include/programmer.h b/include/programmer.h index 386e6ecc..55e300a9 100644 --- a/include/programmer.h +++ b/include/programmer.h @@ -439,8 +439,6 @@ struct par_master { int register_par_master(const struct par_master *mst, const enum chipbustype buses, void *data); /* programmer.c */ -void *fallback_map(const char *descr, uintptr_t phys_addr, size_t len); -void fallback_unmap(void *virt_addr, size_t len); void fallback_chip_writew(const struct flashctx *flash, uint16_t val, chipaddr addr); void fallback_chip_writel(const struct flashctx *flash, uint32_t val, chipaddr addr); void fallback_chip_writen(const struct flashctx *flash, const uint8_t *buf, chipaddr addr, size_t len); @@ -76,7 +76,7 @@ int register_par_master(const struct par_master *mst, } } - /* Bus masters supporting FWH/LPC cannot use fallback_map(), distinct + /* Bus masters supporting FWH/LPC cannot use chip physical maps, distinct * mappings are needed to support chips with FEATURE_REGISTERMAP */ if ((buses & (BUS_FWH | BUS_LPC)) && !mst->map_flash_region) { diff --git a/programmer.c b/programmer.c index 939d8c2d..d4f15a13 100644 --- a/programmer.c +++ b/programmer.c @@ -17,23 +17,6 @@ #include "flash.h" #include "programmer.h" -/* Fallback map() for programmers which don't need special handling */ -void *fallback_map(const char *descr, uintptr_t phys_addr, size_t len) -{ - /* A result of NULL causes mapped addresses to be chip physical - * addresses, assuming only a single region is mapped (the entire flash - * space). Chips with a second region (like a register map) require a - * real memory mapping to distinguish the different ranges. Those chips - * are FWH/LPC, so the bus master provides a real mapping. - */ - return NULL; -} - -/* No-op/fallback unmap() for programmers which don't need special handling */ -void fallback_unmap(void *virt_addr, size_t len) -{ -} - /* Little-endian fallback for drivers not supporting 16 bit accesses */ void fallback_chip_writew(const struct flashctx *flash, uint16_t val, chipaddr addr) |