From: Jonathan Bell Date: Wed, 21 May 2025 14:26:20 +0000 (+0100) Subject: doc: bcm2835gpio: remove broken link and clarify usage X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=7abc0f9e6593694059db56bf6f4ad64972b45ad7;p=users%2Fborneoa%2Fopenocd-next.git doc: bcm2835gpio: remove broken link and clarify usage The peripheral address details have been removed from the documentation part of the website (instead presented in the SoC datasheets). Pi 5 GPIOs are provided by the RP1 southbridge, which requires the use of libgpiod. The associated Linux driver for the GPIO interface must be used when bitbashing on Pi 5, as the timing of pin state changes is not guaranteed across the PCIe link without special treatment. Using libgpiod, the typical maximum swclk speed is 1MHz. Signed-off-by: Jonathan Bell Change-Id: I8b2c44ec5edd71abaa0a763ba4d4f4603a211348 Reviewed-on: https://review.openocd.org/c/openocd/+/8884 Tested-by: jenkins Reviewed-by: Antonio Borneo Reviewed-by: Tomas Vanek --- diff --git a/doc/openocd.texi b/doc/openocd.texi index c7d8c7d0d..bd6b3704a 100644 --- a/doc/openocd.texi +++ b/doc/openocd.texi @@ -3346,8 +3346,10 @@ The string will be of the format "DDDD:BB:SS.F" such as "0000:65:00.1". @end deffn @deffn {Interface Driver} {bcm2835gpio} -This SoC is present in Raspberry Pi which is a cheap single-board computer -exposing some GPIOs on its expansion header. +This GPIO interface is present in Raspberry Pi 0-4 which is a cheap +single-board computer exposing some GPIOs on its expansion header. + +@emph{Note:} for Raspberry Pi 5, use @b{linuxgpiod} not this driver. The driver accesses memory-mapped GPIO peripheral registers directly for maximum performance, but the only possible race condition is for @@ -3386,9 +3388,7 @@ and drive strength is reduced to 4 mA (2 mA on RPi 4). @deffn {Config Command} {bcm2835gpio peripheral_base} @var{base} Set the peripheral base register address to access GPIOs. Ignored if @file{/dev/gpiomem} is used. For the RPi1, use -0x20000000. For RPi2 and RPi3, use 0x3F000000. For RPi4, use 0xFE000000. A full -list can be found in the -@uref{https://www.raspberrypi.org/documentation/hardware/raspberrypi/peripheral_addresses.md, official guide}. +0x20000000. For RPi2 and RPi3, use 0x3F000000. For RPi4, use 0xFE000000. @end deffn @end deffn