diff options
author | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-09 00:54:55 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2009-05-09 00:54:55 +0000 |
commit | c3129208648f241c0b6538235cd4e9854ae6539d (patch) | |
tree | bf210d57bb4fc0633ad6e95437568241907774bf /dummyflasher.c | |
parent | a93045cb178231d717f23dce92d264427f2a02d0 (diff) | |
download | flashrom-c3129208648f241c0b6538235cd4e9854ae6539d.tar.gz flashrom-c3129208648f241c0b6538235cd4e9854ae6539d.tar.bz2 flashrom-c3129208648f241c0b6538235cd4e9854ae6539d.zip |
Add a dummy external flasher which just prints each operation
Usage:
flashrom --programmer dummy
This is a great way to test flashrom without root access.
Corresponding to flashrom svn r483.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
Diffstat (limited to 'dummyflasher.c')
-rw-r--r-- | dummyflasher.c | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/dummyflasher.c b/dummyflasher.c new file mode 100644 index 00000000..4a4ea0fe --- /dev/null +++ b/dummyflasher.c @@ -0,0 +1,75 @@ +/* + * This file is part of the flashrom project. + * + * Copyright (C) 2009 Carl-Daniel Hailfinger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include <stdint.h> +#include <string.h> +#include <stdlib.h> +#include <fcntl.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <errno.h> +#include <pci/pci.h> +#include "flash.h" + +int dummy_init(void) +{ + printf("%s\n", __func__); + return 0; +} + +int dummy_shutdown(void) +{ + printf("%s\n", __func__); + return 0; +} + +void dummy_chip_writeb(uint8_t val, volatile void *addr) +{ + printf("%s: addr=%p, val=0x%02x\n", __func__, addr, val); +} + +void dummy_chip_writew(uint16_t val, volatile void *addr) +{ + printf("%s: addr=%p, val=0x%04x\n", __func__, addr, val); +} + +void dummy_chip_writel(uint32_t val, volatile void *addr) +{ + printf("%s: addr=%p, val=0x%08x\n", __func__, addr, val); +} + +uint8_t dummy_chip_readb(const volatile void *addr) +{ + printf("%s: addr=%p\n", __func__, addr); + return 0xff; +} + +uint16_t dummy_chip_readw(const volatile void *addr) +{ + printf("%s: addr=%p\n", __func__, addr); + return 0xffff; +} + +uint32_t dummy_chip_readl(const volatile void *addr) +{ + printf("%s: addr=%p\n", __func__, addr); + return 0xffffffff; +} + |