From 1455b2baea9f4379086cabf1dcc1388c478c745c Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Mon, 11 May 2009 14:13:25 +0000 Subject: Abstract mapping/unmapping of flash regions Flash mapping/unmapping was performed without an abstraction layer, so even the dummy flasher caused memory mappings to be set up. Add map/unmap functions to the external flasher abstraction. Fix a possible scribble-over-low-memory corner case which fortunately never triggered so far. With this patch, --programmer dummy works fine as non-root. Corresponding to flashrom svn r493. Signed-off-by: Carl-Daniel Hailfinger Acked-by: Uwe Hermann --- dummyflasher.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'dummyflasher.c') diff --git a/dummyflasher.c b/dummyflasher.c index 4a4ea0f..3bda7a7 100644 --- a/dummyflasher.c +++ b/dummyflasher.c @@ -40,6 +40,19 @@ int dummy_shutdown(void) return 0; } +void *dummy_map(const char *descr, unsigned long phys_addr, size_t len) +{ + printf("%s: Mapping %s, 0x%lx bytes at 0x%08lx\n", + __func__, descr, (unsigned long)len, phys_addr); + return (void *)phys_addr; +} + +void dummy_unmap(void *virt_addr, size_t len) +{ + printf("%s: Unmapping 0x%lx bytes at %p\n", + __func__, (unsigned long)len, virt_addr); +} + void dummy_chip_writeb(uint8_t val, volatile void *addr) { printf("%s: addr=%p, val=0x%02x\n", __func__, addr, val); -- cgit v1.1