diff options
author | tscn92 <tscn@kamstrup.com> | 2020-04-06 16:05:08 +0200 |
---|---|---|
committer | Antonio Borneo <borneo.antonio@gmail.com> | 2020-06-06 18:01:57 +0100 |
commit | 93e4bed0566fa783fc5f2524920f11ba250ea7dd (patch) | |
tree | d64385a7ed7f8b972308ff4e159e706615dd82c9 /src | |
parent | ae4113d877c8f2a0518fb3246610b1518ce7c03f (diff) | |
download | riscv-openocd-93e4bed0566fa783fc5f2524920f11ba250ea7dd.zip riscv-openocd-93e4bed0566fa783fc5f2524920f11ba250ea7dd.tar.gz riscv-openocd-93e4bed0566fa783fc5f2524920f11ba250ea7dd.tar.bz2 |
jtag/drivers/bcm2835gpio: bcm2835gpio_init has been updated
For jtag/drivers/bcm2835gpio dev_mem_fd has been updated within
bcm2835gpio_init with the add on of gpio to mem. This permits the
access to memory of GPIO without the need for root access.
For failed attempt, a fallback to original memory follows.
It should be noted that any printed error is relative to original
memory ("dev/mem").
Tested on EFM32GG12B390F board
Change-Id: I4540bdf62fb3b91a51221e277881adfae138dcc5
Signed-off-by: tscn92 <tscn@kamstrup.com>
Reviewed-on: http://openocd.zylin.com/5568
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/jtag/drivers/bcm2835gpio.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/jtag/drivers/bcm2835gpio.c b/src/jtag/drivers/bcm2835gpio.c index bbc87d3..df557c5 100644 --- a/src/jtag/drivers/bcm2835gpio.c +++ b/src/jtag/drivers/bcm2835gpio.c @@ -466,7 +466,11 @@ static int bcm2835gpio_init(void) return ERROR_JTAG_INIT_FAILED; } - dev_mem_fd = open("/dev/mem", O_RDWR | O_SYNC); + dev_mem_fd = open("/dev/gpiomem", O_RDWR | O_SYNC); + if (dev_mem_fd < 0) { + LOG_DEBUG("Cannot open /dev/gpiomem, fallback to /dev/mem"); + dev_mem_fd = open("/dev/mem", O_RDWR | O_SYNC); + } if (dev_mem_fd < 0) { perror("open"); return ERROR_JTAG_INIT_FAILED; |