Difference between revisions of "RPi BCM2835 GPIOs"

From eLinux.org
Jump to: navigation, search
m
m (Add link to the DeviceTree documentation)
 
(12 intermediate revisions by 3 users not shown)
Line 3: Line 3:
  
 
Back to [[RPi_Low-level_peripherals]]
 
Back to [[RPi_Low-level_peripherals]]
 
  
 
= BCM2835 GPIO functions =
 
= BCM2835 GPIO functions =
  
This is a wiki-fied copy of Table 6-31 from the BCM2835 [http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf datasheet] including any relevant [[BCM2835_datasheet_errata|errata]], with a couple of extra columns, all nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function.
+
This is a wiki-fied copy of Table 6-31 from the BCM2835 [http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf datasheet] including any relevant [[BCM2835_datasheet_errata|errata]], with a few extra columns, all nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function.
Any GPIOs that aren't [[RPi_BCM2835_Pinout|connected]] on the RaspberryPi Model B revision 1.0 circuit board are <del>crossed out</del>, and the GPIOs available on the [[Rpi_Low-level_peripherals|GPIO Connector (P1)]] are in '''bold''', with their default function (according to the [http://www.raspberrypi.org/wp-content/uploads/2012/04/Raspberry-Pi-Schematics-R1.0.pdf schematics]) in '''''bold italics'''''.
+
Any GPIOs that aren't [[RPi_BCM2835_Pinout|connected]] on the RaspberryPi Model B revision 2.0 circuit board are <del>crossed out</del>, and the GPIOs available on the [[Rpi_Low-level_peripherals|GPIO Connector (P1)]] or [[RPi_Low-level_peripherals#P5_header|P5]] are in '''bold''', with their default function (according to the [http://www.raspberrypi.org/wp-content/uploads/2012/10/Raspberry-Pi-R2.0-Schematics-Issue2.2_027.pdf schematics]) in '''''bold italics'''''.<br>
 +
(If you want to see how GPIO-pins map back to ''actual'' pins, see [[RPi_BCM2835_Pinout|this page]]). A selection of common circuits for interfacing with the GPIOs is given at [[RPi_GPIO_Interface_Circuits]].
  
 
GPIO Pins Alternative Function Assignment
 
GPIO Pins Alternative Function Assignment
 
{| border="1"
 
{| border="1"
! style="background-color:yellow;" | !! style="background-color:yellow;" | Pull !! style="background-color:yellow;" | ALT0 !! style="background-color:yellow;" | ALT1 !! style="background-color:yellow;" | ALT2 !! style="background-color:yellow;" | ALT3 !! style="background-color:yellow;" | ALT4 !! style="background-color:yellow;" | ALT5 !! style="background-color:yellow;" | RPi [[RPi_BCM2835_Signals|signal name]] !! style="background-color:yellow;" | RPi [[Rpi_Low-level_peripherals|connection]]
+
! style="background-color:yellow;" | !! style="background-color:yellow;" | Bank !! style="background-color:yellow;" | Pull !! style="background-color:yellow;" | ALT0 !! style="background-color:yellow;" | ALT1 !! style="background-color:yellow;" | ALT2 !! style="background-color:yellow;" | ALT3 !! style="background-color:yellow;" | ALT4 !! style="background-color:yellow;" | ALT5 !! style="background-color:yellow;" | RPi [[RPi_BCM2835_Signals_Rev2.0|Rev2.0]] signal name / [[RPi_BCM2835_Signals_Rev1.0|Rev1.0]] if different !! style="background-color:yellow;" | RPi Rev2.0 [[Rpi_Low-level_peripherals|connection]] / Rev1.0 if different !! style="background-color:yellow;" | RPi B+ [http://www.raspberrypi.org/wp-content/uploads/2014/04/bplus-gpio.png connection] !! style="background-color:yellow;" | [http://www.raspberrypi.org/documentation/hardware/computemodule/README.md Compute Module] connection !! style="background-color:yellow;" | CM IO Board connection
 
|-
 
|-
| <div id="GPIO0">'''GPIO0'''</div> || High || style="background-color:orange;" | '''''[[#SDA0|SDA0]]''''' || style="background-color:royalblue;" | [[#SAx|SA5]] || style="background-color:darkolivegreen" | <reserved> || || || || SDA0 || style="background-color:cyan;" | P1-03
+
| <div id="GPIO0">GPIO0</div> || 0 || High || style="background-color:orange;" | [[#SDA0|SDA0]] || style="background-color:royalblue;" | [[#SAx|SA5]] || style="background-color:darkolivegreen" | <reserved> || || || || SDA0 || S5-14 / P1-03 || J8-27 (ID_SD) || J1-03 || J5-01
 
|-
 
|-
| <div id="GPIO1">'''GPIO1'''</div> || High || style="background-color:orange;" | '''''[[#SCL0|SCL0]]''''' || style="background-color:royalblue;" | [[#SAx|SA4]] || style="background-color:darkolivegreen" | <reserved> || || || || SCL0 || style="background-color:cyan;" | P1-05
+
| <div id="GPIO1">GPIO1</div> || 0 || High || style="background-color:orange;" | [[#SCL0|SCL0]] || style="background-color:royalblue;" | [[#SAx|SA4]] || style="background-color:darkolivegreen" | <reserved> || || || || SCL0 || S5-13 / P1-05 || J8-28 (ID_SC) || J1-05 || J5-03
 
|-
 
|-
| <div id="GPIO2">GPIO2</div> || High || style="background-color:magenta;" | [[#SDA1|SDA1]] || style="background-color:royalblue;" | [[#SAx|SA3]] || style="background-color:darkolivegreen" | <reserved> || || || || SDA1 || S5-14
+
| <div id="GPIO2">'''GPIO2'''</div> || 0 || High || style="background-color:magenta;" | '''''[[#SDA1|SDA1]]''''' || style="background-color:royalblue;" | [[#SAx|SA3]] || style="background-color:darkolivegreen" | <reserved> || || || || SDA1 || style="background-color:cyan;" | P1-03 / S5-14 || style="background-color:cyan;" | J8-03 || J1-09 || J5-05
 
|-
 
|-
| <div id="GPIO3">GPIO3</div> || High || style="background-color:magenta;" | [[#SCL1|SCL1]] || style="background-color:royalblue;" | [[#SAx|SA2]] || style="background-color:darkolivegreen" | <reserved> || || || || SCL1 || S5-13
+
| <div id="GPIO3">'''GPIO3'''</div> || 0 || High || style="background-color:magenta;" | '''''[[#SCL1|SCL1]]''''' || style="background-color:royalblue;" | [[#SAx|SA2]] || style="background-color:darkolivegreen" | <reserved> || || || || SCL1 || style="background-color:cyan;" | P1-05 / S5-13 || style="background-color:cyan;" | J8-05 || J1-11 || J5-07
 
|-
 
|-
| <div id="GPIO4">'''GPIO4'''</div> || High || style="background-color:turquoise;" | '''''[[#GPCLK0|GPCLK0]]''''' || style="background-color:royalblue;" | [[#SAx|SA1]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TDI|ARM_TDI]] || GPIO_GCLK || style="background-color:lime;" | P1-07
+
| <div id="GPIO4">'''GPIO4'''</div> || 0 || High || style="background-color:turquoise;" | '''''[[#GPCLK0|GPCLK0]]''''' || style="background-color:royalblue;" | [[#SAx|SA1]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TDI|ARM_TDI]] || GPIO_GCLK || style="background-color:lime;" | P1-07 || style="background-color:lime;" | J8-07 || J1-15 || J5-09
 
|-
 
|-
| <div id="GPIO5">GPIO5</div> || High || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue;" | [[#SAx|SA0]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TDO|ARM_TDO]] || CAM_CLK || S5-12
+
| <div id="GPIO5">GPIO5</div> || 0 || High || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue;" | [[#SAx|SA0]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TDO|ARM_TDO]] || CAM_CLK || S5-12 || style="background-color:lime;" | J8-29 || J1-17 || J5-11
 
|-
 
|-
| <div id="GPIO6">GPIO6</div> || High || style="background-color:turquoise;" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue;" | [[#SOE_N|SOE_N / SE]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_RTCK|ARM_RTCK]] || LAN_RUN || IC3-12
+
| <div id="GPIO6">GPIO6</div> || 0 || High || style="background-color:turquoise;" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue;" | [[#SOE_N|SOE_N / SE]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_RTCK|ARM_RTCK]] || LAN_RUN || IC3-12 || style="background-color:lime;" | J8-31 || J1-21 || J5-13
 
|-
 
|-
| <div id="GPIO7">'''GPIO7'''</div> || High || style="background-color:plum;" | '''''[[#SPI0_CE1_N|SPI0_CE1_N]]''''' || style="background-color:royalblue;" | [[#SWE_N|SWE_N / SRW_N]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_CE1_N || style="background-color:purple;color:white;" | P1-26
+
| <div id="GPIO7">'''GPIO7'''</div> || 0 || High || style="background-color:plum;" | '''''[[#SPI0_CE1_N|SPI0_CE1_N]]''''' || style="background-color:royalblue;" | [[#SWE_N|SWE_N / SRW_N]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_CE1_N || style="background-color:purple;color:white;" | P1-26 || style="background-color:purple;color:white;" | J8-26 || J1-23 || J5-15
 
|-
 
|-
| <div id="GPIO8">'''GPIO8'''</div> || High || style="background-color:plum;" | '''''[[#SPI0_CE0_N|SPI0_CE0_N]]''''' || style="background-color:royalblue;" | [[#SDx|SD0]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_CE0_N || style="background-color:purple;color:white;" | P1-24
+
| <div id="GPIO8">'''GPIO8'''</div> || 0 || High || style="background-color:plum;" | '''''[[#SPI0_CE0_N|SPI0_CE0_N]]''''' || style="background-color:royalblue;" | [[#SDx|SD0]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_CE0_N || style="background-color:purple;color:white;" | P1-24 || style="background-color:purple;color:white;" | J8-24 || J1-27 || J5-17
 
|-
 
|-
| <div id="GPIO9">'''GPIO9'''</div> || Low || style="background-color:plum;" | '''''[[#SPI0_MISO|SPI0_MISO]]''''' || style="background-color:royalblue;" | [[#SDx|SD1]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_MISO || style="background-color:purple;color:white;" | P1-21
+
| <div id="GPIO9">'''GPIO9'''</div> || 0 || Low || style="background-color:plum;" | '''''[[#SPI0_MISO|SPI0_MISO]]''''' || style="background-color:royalblue;" | [[#SDx|SD1]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_MISO || style="background-color:purple;color:white;" | P1-21 || style="background-color:purple;color:white;" | J8-21 || J1-29 || J5-19
 
|-
 
|-
| <div id="GPIO10">'''GPIO10'''</div> || Low || style="background-color:plum;" | '''''[[#SPI0_MOSI|SPI0_MOSI]]''''' || style="background-color:royalblue;" | [[#SDx|SD2]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_MOSI || style="background-color:purple;color:white;" | P1-19
+
| <div id="GPIO10">'''GPIO10'''</div> || 0 || Low || style="background-color:plum;" | '''''[[#SPI0_MOSI|SPI0_MOSI]]''''' || style="background-color:royalblue;" | [[#SDx|SD2]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_MOSI || style="background-color:purple;color:white;" | P1-19 || style="background-color:purple;color:white;" | J8-19 || J1-33 || J5-21
 
|-
 
|-
| <div id="GPIO11">'''GPIO11'''</div> || Low || style="background-color:plum;" | '''''[[#SPI0_SCLK|SPI0_SCLK]]''''' || style="background-color:royalblue;" | [[#SDx|SD3]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_SCLK || style="background-color:purple;color:white;" | P1-23
+
| <div id="GPIO11">'''GPIO11'''</div> || 0 || Low || style="background-color:plum;" | '''''[[#SPI0_SCLK|SPI0_SCLK]]''''' || style="background-color:royalblue;" | [[#SDx|SD3]] || style="background-color:darkolivegreen" | <reserved> || || || || SPI_SCLK || style="background-color:purple;color:white;" | P1-23 || style="background-color:purple;color:white;" | J8-23 || J1-35 || J5-23
 
|-
 
|-
| <div id="GPIO12"><del>GPIO12</del></div> || Low || style="background-color:lightblue;" | [[#PWMx|PWM0]] || style="background-color:royalblue;" | [[#SDx|SD4]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TMS|ARM_TMS]] || nc ||
+
| <div id="GPIO12"><del>GPIO12</del></div> || 0 || Low || style="background-color:lightblue;" | [[#PWMx|PWM0]] || style="background-color:royalblue;" | [[#SDx|SD4]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TMS|ARM_TMS]] || nc || || style="background-color:lime;" | J8-32 || J1-45 || J5-25
 
|-
 
|-
| <div id="GPIO13"><del>GPIO13</del></div> || Low || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:royalblue;" | [[#SDx|SD5]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TCK|ARM_TCK]] || nc ||
+
| <div id="GPIO13"><del>GPIO13</del></div> || 0 || Low || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:royalblue;" | [[#SDx|SD5]] || style="background-color:darkolivegreen" | <reserved> || || || style="background-color:silver" | [[#ARM_TCK|ARM_TCK]] || nc || || style="background-color:lime;" | J8-33 || J1-47 || J5-27
 
|-
 
|-
| <div id="GPIO14">'''GPIO14'''</div> || Low || style="background-color:red;" | '''''[[#TXD0|TXD0]]''''' || style="background-color:royalblue;" | [[#SDx|SD6]] || style="background-color:darkolivegreen;" | <reserved> || || || style="background-color:red;" | [[#TXD1|TXD1]] || TXD0 || style="background-color:yellow;" | P1-08
+
| <div id="GPIO14">'''GPIO14'''</div> || 0 || Low || style="background-color:red;" | '''''[[#TXD0|TXD0]]''''' || style="background-color:royalblue;" | [[#SDx|SD6]] || style="background-color:darkolivegreen;" | <reserved> || || || style="background-color:red;" | [[#TXD1|TXD1]] || TXD0 || style="background-color:yellow;" | P1-08 || style="background-color:yellow;" | J8-08 || J1-51 || J5-29
 
|-
 
|-
| <div id="GPIO15">'''GPIO15'''</div> || Low || style="background-color:red;" | '''''[[#RXD0|RXD0]]''''' || style="background-color:royalblue;" | [[#SDx|SD7]] || style="background-color:darkolivegreen;" | <reserved> || || || style="background-color:red;" | [[#RXD1|RXD1]] || RXD0 || style="background-color:yellow;" | P1-10
+
| <div id="GPIO15">'''GPIO15'''</div> || 0 || Low || style="background-color:red;" | '''''[[#RXD0|RXD0]]''''' || style="background-color:royalblue;" | [[#SDx|SD7]] || style="background-color:darkolivegreen;" | <reserved> || || || style="background-color:red;" | [[#RXD1|RXD1]] || RXD0 || style="background-color:yellow;" | P1-10 || style="background-color:yellow;" | J8-10 || J1-53 || J5-31
 
|-
 
|-
| <div id="GPIO16">GPIO16</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD8]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#CTS0|CTS0]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE2_N]] || style="background-color:red;" | [[#CTS1|CTS1]] || STATUS_LED_N || D5 (OK LED)
+
| <div id="GPIO16">GPIO16</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD8]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#CTS0|CTS0]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE2_N]] || style="background-color:red;" | [[#CTS1|CTS1]] || STATUS_LED_N || D5 (ACT LED) / D5 (OK LED) || style="background-color:lime;" | J8-36 || J1-57 || J5-33
 
|-
 
|-
| <div id="GPIO17">'''''GPIO17'''''</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD9]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#RTS0|RTS0]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE1_N]] || style="background-color:red;" | [[#RTS1|RTS1]] || GPIO_GEN0 || style="background-color:lime;" | P1-11
+
| <div id="GPIO17">'''''GPIO17'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD9]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#RTS0|RTS0]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE1_N]] || style="background-color:red;" | [[#RTS1|RTS1]] || GPIO_GEN0 || style="background-color:lime;" | P1-11 || style="background-color:lime;" | J8-11 || J1-59 || J5-35
 
|-
 
|-
| <div id="GPIO18">'''''GPIO18'''''</div> || Low || style="background-color:lawngreen;" | [[#PCM_CLK|PCM_CLK]] || style="background-color:royalblue;" | [[#SDx|SD10]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#MOSI|BSCSL SDA / MOSI]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE0_N]] || style="background-color:lightblue;" | [[#PWMx|PWM0]] || GPIO_GEN1 || style="background-color:lime;" | P1-12
+
| <div id="GPIO18">'''''GPIO18'''''</div> || 0 || Low || style="background-color:lawngreen;" | [[#PCM_CLK|PCM_CLK]] || style="background-color:royalblue;" | [[#SDx|SD10]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#MOSI|BSCSL SDA / MOSI]] || style="background-color:plum;" | [[#SPI1_CEx_N|SPI1_CE0_N]] || style="background-color:lightblue;" | [[#PWMx|PWM0]] || GPIO_GEN1 || style="background-color:lime;" | P1-12 || style="background-color:lime;" | J8-12 || J1-63 || J5-37
 
|-
 
|-
| <div id="GPIO19"><del>GPIO19</del></div> || Low || style="background-color:lawngreen;" | [[#PCM_FS|PCM_FS]] || style="background-color:royalblue;" | [[#SDx|SD11]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#SCLK|BSCSL SCL / SCLK]] || style="background-color:plum;" | [[#SPI1_MISO|SPI1_MISO]] || style="background-color:lightblue;" | [[#PWMx|PWM1]] || nc ||
+
| <div id="GPIO19"><del>GPIO19</del></div> || 0 || Low || style="background-color:lawngreen;" | [[#PCM_FS|PCM_FS]] || style="background-color:royalblue;" | [[#SDx|SD11]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#SCLK|BSCSL SCL / SCLK]] || style="background-color:plum;" | [[#SPI1_MISO|SPI1_MISO]] || style="background-color:lightblue;" | [[#PWMx|PWM1]] || nc || || style="background-color:lime;" | J8-35 || J1-65 || J5-39
 
|-
 
|-
| <div id="GPIO20"><del>GPIO20</del></div> || Low || style="background-color:lawngreen;" | [[#PCM_DIN|PCM_DIN]] || style="background-color:royalblue;" | [[#SDx|SD12]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#MISO|BSCSL / MISO]] || style="background-color:plum;" | [[#SPI1_MOSI|SPI1_MOSI]] || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || nc ||
+
| <div id="GPIO20"><del>GPIO20</del></div> || 0 || Low || style="background-color:lawngreen;" | [[#PCM_DIN|PCM_DIN]] || style="background-color:royalblue;" | [[#SDx|SD12]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#MISO|BSCSL / MISO]] || style="background-color:plum;" | [[#SPI1_MOSI|SPI1_MOSI]] || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || nc || || style="background-color:lime;" | J8-38 || J1-69 || J5-41
 
|-
 
|-
| <div id="GPIO21">'''''GPIO21'''''</div> || Low || style="background-color:lawngreen;" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:royalblue;" | [[#SDx|SD13]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#CE_N|BSCSL / CE_N]] || style="background-color:plum;" | [[#SPI1_SCLK|SPI1_SCLK]] || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || GPIO_GEN2 || style="background-color:lime;" | P1-13
+
| <div id="GPIO21">GPIO21</div> || 0 || Low || style="background-color:lawngreen;" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:royalblue;" | [[#SDx|SD13]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:maroon;color:white;" | [[#CE_N|BSCSL / CE_N]] || style="background-color:plum;" | [[#SPI1_SCLK|SPI1_SCLK]] || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || CAM_GPIO / GPIO_GEN2 || S5-11 / P1-13 || style="background-color:lime;" | J8-40 || J1-71 || J5-43
 
|-
 
|-
| <div id="GPIO22">'''''GPIO22'''''</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD14]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_CLK || style="background-color:silver;" | [[#ARM_TRST|ARM_TRST]] || || GPIO_GEN3 || style="background-color:lime;" | P1-15
+
| <div id="GPIO22">'''''GPIO22'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD14]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_CLK || style="background-color:silver;" | [[#ARM_TRST|ARM_TRST]] || || GPIO_GEN3 || style="background-color:lime;" | P1-15 || style="background-color:lime;" | J8-15 || J1-75 || J5-45
 
|-
 
|-
| <div id="GPIO23">'''''GPIO23'''''</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD15]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_CMD || style="background-color:silver;" | [[#ARM_RTCK|ARM_RTCK]] || || GPIO_GEN4 || style="background-color:lime;" | P1-16
+
| <div id="GPIO23">'''''GPIO23'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD15]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_CMD || style="background-color:silver;" | [[#ARM_RTCK|ARM_RTCK]] || || GPIO_GEN4 || style="background-color:lime;" | P1-16 || style="background-color:lime;" | J8-16 || J1-77 || J5-47
 
|-
 
|-
| <div id="GPIO24">'''''GPIO24'''''</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD16]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT0 || style="background-color:silver;" | [[#ARM_TDO|ARM_TDO]] || || GPIO_GEN5 || style="background-color:lime;" | P1-18
+
| <div id="GPIO24">'''''GPIO24'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD16]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT0 || style="background-color:silver;" | [[#ARM_TDO|ARM_TDO]] || || GPIO_GEN5 || style="background-color:lime;" | P1-18 || style="background-color:lime;" | J8-18 || J1-81 || J5-49
 
|-
 
|-
| <div id="GPIO25">'''''GPIO25'''''</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD17]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT1 || style="background-color:silver;" | [[#ARM_TCK|ARM_TCK]] || || GPIO_GEN6 || style="background-color:lime;" | P1-22
+
| <div id="GPIO25">'''''GPIO25'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SDx|SD17]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT1 || style="background-color:silver;" | [[#ARM_TCK|ARM_TCK]] || || GPIO_GEN6 || style="background-color:lime;" | P1-22 || style="background-color:lime;" | J8-22 || J1-83 || J5-51
 
|-
 
|-
| <div id="GPIO26"><del>GPIO26</del></div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT2 || style="background-color:silver;" | [[#ARM_TDI|ARM_TDI]] || || nc ||
+
| <div id="GPIO26"><del>GPIO26</del></div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT2 || style="background-color:silver;" | [[#ARM_TDI|ARM_TDI]] || || nc || || style="background-color:lime;" | J8-37 || J1-87 || J5-53
 
|-
 
|-
| <div id="GPIO27">GPIO27</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT3 || style="background-color:silver;" | [[#ARM_TMS|ARM_TMS]] || || CAM_GPIO || S5-11
+
| <div id="GPIO27">'''''GPIO27'''''</div> || 0 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:turquoise;" | SD1_DAT3 || style="background-color:silver;" | [[#ARM_TMS|ARM_TMS]] || || GPIO_GEN2 / CAM_GPIO || style="background-color:lime;" | P1-13 / S5-11 || style="background-color:lime;" | J8-13 || J1-89 || J5-55
 
|-
 
|-
| <div id="GPIO28">GPIO28</div> || - || style="background-color:orange;" | [[#SDA0|SDA0]] || style="background-color:royalblue;" | [[#SAx|SA5]] || style="background-color:lawngreen;" | [[#PCM_CLK|PCM_CLK]] || style="background-color:darkolivegreen;" | <reserved> || || || CONFIG0 || R10 / R8
+
| <div id="GPIO28">'''''GPIO28'''''</div> || 1 || - || style="background-color:orange;" | [[#SDA0|SDA0]] || style="background-color:royalblue;" | [[#SAx|SA5]] || style="background-color:lawngreen;" | [[#PCM_CLK|PCM_CLK]] || style="background-color:darkolivegreen;" | <reserved> || || || GPIO_GEN7 / CONFIG0 || style="background-color:lime;" | P5-03 / R10 or R8 || || J1-28 || J6-01
 
|-
 
|-
| <div id="GPIO29">GPIO29</div> || - || style="background-color:orange;" | [[#SCL0|SCL0]] || style="background-color:royalblue;" | [[#SAx|SA4]] || style="background-color:lawngreen;" | [[#PCM_FS|PCM_FS]] || style="background-color:darkolivegreen;" | <reserved> || || || CONFIG1 || R9 / R7
+
| <div id="GPIO29">'''''GPIO29'''''</div> || 1 || - || style="background-color:orange;" | [[#SCL0|SCL0]] || style="background-color:royalblue;" | [[#SAx|SA4]] || style="background-color:lawngreen;" | [[#PCM_FS|PCM_FS]] || style="background-color:darkolivegreen;" | <reserved> || || || GPIO_GEN8 / CONFIG1 || style="background-color:lime;" | P5-04 / R9 or R7 || || J1-30 || J6-03
 
|-
 
|-
| <div id="GPIO30">GPIO30</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA3]] || style="background-color:lawngreen;" | [[#PCM_DIN|PCM_DIN]] || style="background-color:red;" | [[#CTS0|CTS0]] || || style="background-color:red;" | [[#CTS1|CTS1]] || CONFIG2 || R6 / R4
+
| <div id="GPIO30">'''''GPIO30'''''</div> || 1 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA3]] || style="background-color:lawngreen;" | [[#PCM_DIN|PCM_DIN]] || style="background-color:red;" | [[#CTS0|CTS0]] || || style="background-color:red;" | [[#CTS1|CTS1]] || GPIO_GEN9 / CONFIG2 || style="background-color:lime;" | P5-05 / R6 or R4 || || J1-34 || J6-05
 
|-
 
|-
| <div id="GPIO31">GPIO31</div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA2]] || style="background-color:lawngreen;" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:red;" | [[#RTS0|RTS0]] || || style="background-color:red;" | [[#RTS1|RTS1]] || CONFIG3 || R5 / R3
+
| <div id="GPIO31">'''''GPIO31'''''</div> || 1 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA2]] || style="background-color:lawngreen;" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:red;" | [[#RTS0|RTS0]] || || style="background-color:red;" | [[#RTS1|RTS1]] || GPIO_GEN10 / CONFIG3 || style="background-color:lime;" | P5-06 / R5 or R3 || || J1-36 || J6-07
 
|-
 
|-
| <div id="GPIO32"><del>GPIO32</del></div> || Low || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue;" | [[#SAx|SA1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#TXD0|TXD0]] || || style="background-color:red;" | [[#TXD1|TXD1]] || nc ||
+
| <div id="GPIO32"><del>GPIO32</del></div> || 1 || Low || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue;" | [[#SAx|SA1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#TXD0|TXD0]] || || style="background-color:red;" | [[#TXD1|TXD1]] || nc || || || J1-46 || J6-09
 
|-
 
|-
| <div id="GPIO33"><del>GPIO33</del></div> || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA0]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#RXD0|RXD0]] || || style="background-color:red;" | [[#RXD1|RXD1]] || nc ||
+
| <div id="GPIO33"><del>GPIO33</del></div> || 1 || Low || style="background-color:darkolivegreen;" | <reserved> || style="background-color:royalblue;" | [[#SAx|SA0]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:red;" | [[#RXD0|RXD0]] || || style="background-color:red;" | [[#RXD1|RXD1]] || nc || || || J1-48 || J6-11
 
|-
 
|-
| <div id="GPIO34"><del>GPIO34</del></div> || High || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue;" | [[#SOE_N|SOE_N / SE]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO34"><del>GPIO34</del></div> || 1 || High || style="background-color:turquoise;" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue;" | [[#SOE_N|SOE_N / SE]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-52 || J6-13
 
|-
 
|-
| <div id="GPIO35"><del>GPIO35</del></div> || High || style="background-color:plum;" | [[#SPI0_CE1_N|SPI0_CE1_N]] || style="background-color:royalblue;" | [[#SWE_N|SWE_N / SRW_N]] || || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO35"><del>GPIO35</del></div> || 1 || High || style="background-color:plum;" | [[#SPI0_CE1_N|SPI0_CE1_N]] || style="background-color:royalblue;" | [[#SWE_N|SWE_N / SRW_N]] || || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-54 || J6-15
 
|-
 
|-
| <div id="GPIO36"><del>GPIO36</del></div> || High || style="background-color:plum;" | [[#SPI0_CE0_N|SPI0_CE0_N]] || style="background-color:royalblue;" | [[#SDx|SD0]] || style="background-color:red;" | [[#TXD0|TXD0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO36"><del>GPIO36</del></div> || 1 || High || style="background-color:plum;" | [[#SPI0_CE0_N|SPI0_CE0_N]] || style="background-color:royalblue;" | [[#SDx|SD0]] || style="background-color:red;" | [[#TXD0|TXD0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-58 || J6-17
 
|-
 
|-
| <div id="GPIO37"><del>GPIO37</del></div> || Low || style="background-color:plum;" | [[#SPI0_MISO|SPI0_MISO]] || style="background-color:royalblue;" | [[#SDx|SD1]] || style="background-color:red;" | [[#RXD0|RXD0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO37"><del>GPIO37</del></div> || 1 || Low || style="background-color:plum;" | [[#SPI0_MISO|SPI0_MISO]] || style="background-color:royalblue;" | [[#SDx|SD1]] || style="background-color:red;" | [[#RXD0|RXD0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-60 || J6-19
 
|-
 
|-
| <div id="GPIO38"><del>GPIO38</del></div> || Low || style="background-color:plum;" | [[#SPI0_MOSI|SPI0_MOSI]] || style="background-color:royalblue;" | [[#SDx|SD2]] || style="background-color:red;" | [[#RTS0|RTS0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO38"><del>GPIO38</del></div> || 1 || Low || style="background-color:plum;" | [[#SPI0_MOSI|SPI0_MOSI]] || style="background-color:royalblue;" | [[#SDx|SD2]] || style="background-color:red;" | [[#RTS0|RTS0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-64 || J6-21
 
|-
 
|-
| <div id="GPIO39"><del>GPIO39</del></div> || Low || style="background-color:plum;" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:royalblue;" | [[#SDx|SD3]] || style="background-color:red;" | [[#CTS0|CTS0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc ||
+
| <div id="GPIO39"><del>GPIO39</del></div> || 1 || Low || style="background-color:plum;" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:royalblue;" | [[#SDx|SD3]] || style="background-color:red;" | [[#CTS0|CTS0]] || style="background-color:darkolivegreen;" | <reserved> || || || nc || || || J1-66 || J6-23
 
|-
 
|-
| <div id="GPIO40">GPIO40</div> || Low || style="background-color:lightblue;" | [[#PWMx|PWM0]] || style="background-color:royalblue;" | [[#SDx|SD4]] || || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_MISO|SPI2_MISO]] || style="background-color:red;" | [[#TXD1|TXD1]] || PWM0_OUT || R21
+
| <div id="GPIO40">GPIO40</div> || 1 || Low || style="background-color:lightblue;" | [[#PWMx|PWM0]] || style="background-color:royalblue;" | [[#SDx|SD4]] || || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_MISO|SPI2_MISO]] || style="background-color:red;" | [[#TXD1|TXD1]] || PWM0_OUT || R21 || || J1-70 || J6-25
 
|-
 
|-
| <div id="GPIO41"><del>GPIO41</del></div> || Low || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:royalblue;" | [[#SDx|SD5]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_MOSI|SPI2_MOSI]] || style="background-color:red;" | [[#RXD1|RXD1]] || nc ||
+
| <div id="GPIO41"><del>GPIO41</del></div> || 1 || Low || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:royalblue;" | [[#SDx|SD5]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_MOSI|SPI2_MOSI]] || style="background-color:red;" | [[#RXD1|RXD1]] || nc || || || J1-72 || J6-27
 
|-
 
|-
| <div id="GPIO42"><del>GPIO42</del></div> || Low || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue;" | [[#SDx|SD6]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_SCLK|SPI2_SCLK]] || style="background-color:red;" | [[#RTS1|RTS1]] || nc ||
+
| <div id="GPIO42"><del>GPIO42</del></div> || 1 || Low || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue;" | [[#SDx|SD6]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_SCLK|SPI2_SCLK]] || style="background-color:red;" | [[#RTS1|RTS1]] || nc || || || J1-76 || J6-29
 
|-
 
|-
| <div id="GPIO43"><del>GPIO43</del></div> || Low || style="background-color:turquoise;" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue;" | [[#SDx|SD7]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE0_N]] || style="background-color:red;" | [[#CTS1|CTS1]] || nc ||
+
| <div id="GPIO43"><del>GPIO43</del></div> || 1 || Low || style="background-color:turquoise;" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue;" | [[#SDx|SD7]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE0_N]] || style="background-color:red;" | [[#CTS1|CTS1]] || nc || || || J1-78 || J6-31
 
|-
 
|-
| <div id="GPIO44"><del>GPIO44</del></div> || - || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:orange;" | [[#SDA0|SDA0]] || style="background-color:magenta;" | [[#SDA1|SDA1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE1_N]] || || nc ||
+
| <div id="GPIO44"><del>GPIO44</del></div> || 1 || - || style="background-color:turquoise;" | [[#GPCLK1|GPCLK1]] || style="background-color:orange;" | [[#SDA0|SDA0]] || style="background-color:magenta;" | [[#SDA1|SDA1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE1_N]] || || nc || || || J1-82 || J6-33
 
|-
 
|-
| <div id="GPIO45">GPIO45</div> || - || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:orange;" | [[#SCL0|SCL0]] || style="background-color:magenta;" | [[#SCL1|SCL1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE2_N]] || || PWM1_OUT || R27
+
| <div id="GPIO45">GPIO45</div> || 1 || - || style="background-color:lightblue;" | [[#PWMx|PWM1]] || style="background-color:orange;" | [[#SCL0|SCL0]] || style="background-color:magenta;" | [[#SCL1|SCL1]] || style="background-color:darkolivegreen;" | <reserved> || style="background-color:plum;" | [[#SPI2_CEx_N|SPI2_CE2_N]] || || PWM1_OUT || R27 || || J1-84 || J6-35
 
|-
 
|-
| <div id="GPIO46">GPIO46</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || HDMI_HPD_P || IC1-6
+
| <div id="GPIO46">GPIO46</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || HDMI_HPD_P || IC1-6 || || J1-88 || Q4
 
|-
 
|-
| <div id="GPIO47">GPIO47</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CARD_DET || S8-10
+
| <div id="GPIO47">GPIO47</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CARD_DET || S8-10 || || J1-90 || Q2
 
|-
 
|-
| <div id="GPIO48">GPIO48</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CLK_R || R48
+
| <div id="GPIO48">GPIO48</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CLK_R || R48 || || R8 || n/a
 
|-
 
|-
| <div id="GPIO49">GPIO49</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CMD_R || R47
+
| <div id="GPIO49">GPIO49</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_CMD_R || R47 || || U3-1 || n/a
 
|-
 
|-
| <div id="GPIO50">GPIO50</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA0_R || R49
+
| <div id="GPIO50">GPIO50</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA0_R || R49 || || U2-A3 || n/a
 
|-
 
|-
| <div id="GPIO51">GPIO51</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA1_R || R50
+
| <div id="GPIO51">GPIO51</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA1_R || R50 || || U2-A4 || n/a
 
|-
 
|-
| <div id="GPIO52">GPIO52</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA2_R || R45
+
| <div id="GPIO52">GPIO52</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA2_R || R45 || || U2-A5 || n/a
 
|-
 
|-
| <div id="GPIO53">GPIO53</div> || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA3_R || R46
+
| <div id="GPIO53">GPIO53</div> || 2 || High || || || || style="background-color:darkolivegreen;" | <internal> || || || SD_DATA3_R || R46 || || U2-B2 || n/a
 
|-
 
|-
! style="background-color:yellow;" | !! style="background-color:yellow;" | Pull !! style="background-color:yellow;" | ALT0 !! style="background-color:yellow;" | ALT1 !! style="background-color:yellow;" | ALT2 !! style="background-color:yellow;" | ALT3 !! style="background-color:yellow;" | ALT4 !! style="background-color:yellow;" | ALT5 !! style="background-color:yellow;" | RPi [[RPi_BCM2835_Signals|signal name]] !! style="background-color:yellow;" | RPi [[Rpi_Low-level_peripherals|connection]]
+
! style="background-color:yellow;" | !! style="background-color:yellow;" | Bank !! style="background-color:yellow;" | Pull !! style="background-color:yellow;" | ALT0 !! style="background-color:yellow;" | ALT1 !! style="background-color:yellow;" | ALT2 !! style="background-color:yellow;" | ALT3 !! style="background-color:yellow;" | ALT4 !! style="background-color:yellow;" | ALT5 !! style="background-color:yellow;" | RPi [[RPi_BCM2835_Signals_Rev2.0|Rev2.0]] signal name / [[RPi_BCM2835_Signals_Rev1.0|Rev1.0]] if different !! style="background-color:yellow;" | RPi Rev2.0 [[Rpi_Low-level_peripherals|connection]] / Rev1.0 if different !! style="background-color:yellow;" | RPi B+ [http://www.raspberrypi.org/wp-content/uploads/2014/04/bplus-gpio.png connection] !! style="background-color:yellow;" | [http://www.raspberrypi.org/documentation/hardware/computemodule/README.md Compute Module] connection !! style="background-color:yellow;" | CM IO Board connection
 
|}
 
|}
  
  
As in the table above, the GPIOs available on the [[Rpi_Low-level_peripherals|GPIO Connector (P1)]] are in '''bold''', with their default function (according to the [http://www.raspberrypi.org/wp-content/uploads/2012/04/Raspberry-Pi-Schematics-R1.0.pdf schematics]) in '''''bold italics'''''.
+
As in the table above, the GPIOs available on the [[Rpi_Low-level_peripherals|GPIO Connector (P1)]] or [[RPi_Low-level_peripherals#P5_header|P5]] are in '''bold''', with their default function (according to the [http://www.raspberrypi.org/wp-content/uploads/2012/10/Raspberry-Pi-R2.0-Schematics-Issue2.2_027.pdf schematics]) in '''''bold italics'''''.
  
 
Special function legend:
 
Special function legend:
 
{| border="1"
 
{| border="1"
! style="background-color:powderblue;" | Name !! style="background-color:powderblue;" | Function !! style="background-color:powderblue;" | Datasheet section !! style="background-color:powderblue;" | GPIOs
+
! style="background-color:powderblue;" | Name !! style="background-color:powderblue;" | Function !! style="background-color:powderblue;" | Datasheet section !! style="background-color:powderblue;" | GPIOs !! style="background-color:powderblue;" | [http://www.raspberrypi.org/documentation/configuration/pin-configuration.md DeviceTree] 'function'
 
|-
 
|-
| style="background-color:orange;" | <div id="SDA0">SDA0</div> || BSC master 0 data line || BSC || '''''[[#GPIO0|GPIO0]]''''' [[#GPIO28|GPIO28]] <del>[[#GPIO44|GPIO44]]</del>
+
| style="background-color:orange;" | <div id="SDA0">SDA0</div> || BSC master 0 data line || BSC || [[#GPIO0|GPIO0]] '''[[#GPIO28|GPIO28]]''' <del>[[#GPIO44|GPIO44]]</del> || i2c0
 
|-
 
|-
| style="background-color:orange;" | <div id="SCL0">SCL0</div> || BSC master 0 clock line || BSC || '''''[[#GPIO1|GPIO1]]''''' [[#GPIO29|GPIO29]] [[#GPIO45|GPIO45]]
+
| style="background-color:orange;" | <div id="SCL0">SCL0</div> || BSC master 0 clock line || BSC || [[#GPIO1|GPIO1]] '''[[#GPIO29|GPIO29]]''' [[#GPIO45|GPIO45]] || i2c0
 
|-
 
|-
| style="background-color:magenta;" | <div id="SDA1">SDA1</div> || BSC master 1 data line || BSC || [[#GPIO2|GPIO2]] <del>[[#GPIO44|GPIO44]]</del>
+
| style="background-color:magenta;" | <div id="SDA1">SDA1</div> || BSC master 1 data line || BSC || '''''[[#GPIO2|GPIO2]]''''' <del>[[#GPIO44|GPIO44]]</del> || i2c1
 
|-
 
|-
| style="background-color:magenta;" | <div id="SCL1">SCL1</div> || BSC master 1 clock line || BSC || [[#GPIO3|GPIO3]] [[#GPIO45|GPIO45]]
+
| style="background-color:magenta;" | <div id="SCL1">SCL1</div> || BSC master 1 clock line || BSC || '''''[[#GPIO3|GPIO3]]''''' [[#GPIO45|GPIO45]] || i2c1
 
|-
 
|-
| style="background-color:turquoise;" | <div id="GPCLK0">GPCLK0</div> || General purpose Clock 0 || '''<TBD>''' || '''''[[#GPIO4|GPIO4]]''''' <del>[[#GPIO20|GPIO20]]</del> <del>[[#GPIO32|GPIO32]]</del> <del>[[#GPIO34|GPIO34]]</del>
+
| style="background-color:turquoise;" | <div id="GPCLK0">GPCLK0</div> || General purpose Clock 0 || '''<TBD>''' || '''''[[#GPIO4|GPIO4]]''''' <del>[[#GPIO20|GPIO20]]</del> <del>[[#GPIO32|GPIO32]]</del> <del>[[#GPIO34|GPIO34]]</del> || gp_clk
 
|-
 
|-
| style="background-color:turquoise;" | <div id="GPCLK1">GPCLK1</div> || General purpose Clock 1 || '''<TBD>''' || [[#GPIO5|GPIO5]] '''[[#GPIO21|GPIO21]]''' <del>[[#GPIO42|GPIO42]]</del> <del>[[#GPIO44|GPIO44]]</del>
+
| style="background-color:turquoise;" | <div id="GPCLK1">GPCLK1</div> || General purpose Clock 1 || '''<TBD>''' || [[#GPIO5|GPIO5]] [[#GPIO21|GPIO21]] <del>[[#GPIO42|GPIO42]]</del> <del>[[#GPIO44|GPIO44]]</del> || gp_clk
 
|-
 
|-
| style="background-color:turquoise;" | <div id="GPCLK2">GPCLK2</div> || General purpose Clock 2 || '''<TBD>''' || [[#GPIO6|GPIO6]] <del>[[#GPIO43|GPIO43]]</del>
+
| style="background-color:turquoise;" | <div id="GPCLK2">GPCLK2</div> || General purpose Clock 2 || '''<TBD>''' || [[#GPIO6|GPIO6]] <del>[[#GPIO43|GPIO43]]</del> || gp_clk
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI0_CE1_N">SPI0_CE1_N</div> || SPI0 Chip select 1 || SPI || '''''[[#GPIO7|GPIO7]]''''' <del>[[#GPIO35|GPIO35]]</del>
+
| style="background-color:plum;" | <div id="SPI0_CE1_N">SPI0_CE1_N</div> || SPI0 Chip select 1 || SPI || '''''[[#GPIO7|GPIO7]]''''' <del>[[#GPIO35|GPIO35]]</del> || spi
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI0_CE0_N">SPI0_CE0_N</div> || SPI0 Chip select 0 || SPI || '''''[[#GPIO8|GPIO8]]''''' <del>[[#GPIO36|GPIO36]]</del>
+
| style="background-color:plum;" | <div id="SPI0_CE0_N">SPI0_CE0_N</div> || SPI0 Chip select 0 || SPI || '''''[[#GPIO8|GPIO8]]''''' <del>[[#GPIO36|GPIO36]]</del> || spi
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI0_MISO">SPI0_MISO</div> || SPI0 MISO || SPI || '''''[[#GPIO9|GPIO9]]''''' <del>[[#GPIO37|GPIO37]]</del>
+
| style="background-color:plum;" | <div id="SPI0_MISO">SPI0_MISO</div> || SPI0 MISO || SPI || '''''[[#GPIO9|GPIO9]]''''' <del>[[#GPIO37|GPIO37]]</del> || spi
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI0_MOSI">SPI0_MOSI</div> || SPI0 MOSI || SPI || '''''[[#GPIO10|GPIO10]]''''' <del>[[#GPIO38|GPIO38]]</del>
+
| style="background-color:plum;" | <div id="SPI0_MOSI">SPI0_MOSI</div> || SPI0 MOSI || SPI || '''''[[#GPIO10|GPIO10]]''''' <del>[[#GPIO38|GPIO38]]</del> || spi
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI0_SCLK">SPI0_SCLK</div> || SPI0 Serial clock || SPI || '''''[[#GPIO11|GPIO11]]''''' <del>[[#GPIO39|GPIO39]]</del>
+
| style="background-color:plum;" | <div id="SPI0_SCLK">SPI0_SCLK</div> || SPI0 Serial clock || SPI || '''''[[#GPIO11|GPIO11]]''''' <del>[[#GPIO39|GPIO39]]</del> || spi
 
|-
 
|-
| style="background-color:lightblue;" | <div id="PWMx">PWMx</div> || Pulse Width Modulator 0..1 || Pulse Width Modulator || PWM0: <del>[[#GPIO12|GPIO12]]</del> '''[[#GPIO18|GPIO18]]''' [[#GPIO40|GPIO40]]<br> PWM1: <del>[[#GPIO13|GPIO13]]</del> <del>[[#GPIO19|GPIO19]]</del> <del>[[#GPIO41|GPIO41]]</del> [[#GPIO45|GPIO45]]
+
| style="background-color:lightblue;" | <div id="PWMx">PWMx</div> || Pulse Width Modulator 0..1 || Pulse Width Modulator || PWM0: <del>[[#GPIO12|GPIO12]]</del> '''[[#GPIO18|GPIO18]]''' [[#GPIO40|GPIO40]]<br> PWM1: <del>[[#GPIO13|GPIO13]]</del> <del>[[#GPIO19|GPIO19]]</del> <del>[[#GPIO41|GPIO41]]</del> [[#GPIO45|GPIO45]] || pwm
 
|-
 
|-
| style="background-color:red;" | <div id="TXD0">TXD0</div> || UART 0 Transmit Data || UART || '''''[[#GPIO14|GPIO14]]''''' <del>[[#GPIO32|GPIO32]]</del> <del>[[#GPIO36|GPIO36]]</del>
+
| style="background-color:red;" | <div id="TXD0">TXD0</div> || UART 0 Transmit Data || UART || '''''[[#GPIO14|GPIO14]]''''' <del>[[#GPIO32|GPIO32]]</del> <del>[[#GPIO36|GPIO36]]</del> || uart0
 
|-
 
|-
| style="background-color:red;" | <div id="RXD0">RXD0</div> || UART 0 Receive Data || UART || '''''[[#GPIO15|GPIO15]]''''' <del>[[#GPIO33|GPIO33]]</del> <del>[[#GPIO37|GPIO37]]</del>
+
| style="background-color:red;" | <div id="RXD0">RXD0</div> || UART 0 Receive Data || UART || '''''[[#GPIO15|GPIO15]]''''' <del>[[#GPIO33|GPIO33]]</del> <del>[[#GPIO37|GPIO37]]</del> || uart0
 
|-
 
|-
| style="background-color:red;" | <div id="CTS0">CTS0</div> || UART 0 Clear To Send || UART || [[#GPIO16|GPIO16]] [[#GPIO30|GPIO30]] <del>[[#GPIO39|GPIO39]]</del>
+
| style="background-color:red;" | <div id="CTS0">CTS0</div> || UART 0 Clear To Send || UART || [[#GPIO16|GPIO16]] '''[[#GPIO30|GPIO30]]''' <del>[[#GPIO39|GPIO39]]</del> || uart0
 
|-
 
|-
| style="background-color:red;" | <div id="RTS0">RTS0</div> || UART 0 Request To Send || UART || '''[[#GPIO17|GPIO17]]''' [[#GPIO31|GPIO31]] <del>[[#GPIO38|GPIO38]]</del>
+
| style="background-color:red;" | <div id="RTS0">RTS0</div> || UART 0 Request To Send || UART || '''[[#GPIO17|GPIO17]]''' '''[[#GPIO31|GPIO31]]''' <del>[[#GPIO38|GPIO38]]</del> || uart0
 
|-
 
|-
| style="background-color:lawngreen;" | <div id="PCM_CLK">PCM_CLK</div> || PCM clock || PCM Audio || '''[[#GPIO18|GPIO18]]''' [[#GPIO28|GPIO28]]
+
| style="background-color:lawngreen;" | <div id="PCM_CLK">PCM_CLK</div> || PCM clock || PCM Audio || '''[[#GPIO18|GPIO18]]''' '''[[#GPIO28|GPIO28]]''' || pcm
 
|-
 
|-
| style="background-color:lawngreen;" | <div id="PCM_FS">PCM_FS</div> || PCM Frame Sync || PCM Audio || <del>[[#GPIO19|GPIO19]]</del> [[#GPIO29|GPIO29]]
+
| style="background-color:lawngreen;" | <div id="PCM_FS">PCM_FS</div> || PCM Frame Sync || PCM Audio || <del>[[#GPIO19|GPIO19]]</del> '''[[#GPIO29|GPIO29]]''' || pcm
 
|-
 
|-
| style="background-color:lawngreen;" | <div id="PCM_DIN">PCM_DIN</div> || PCM Data in || PCM Audio || <del>[[#GPIO20|GPIO20]]</del> [[#GPIO30|GPIO30]]
+
| style="background-color:lawngreen;" | <div id="PCM_DIN">PCM_DIN</div> || PCM Data in || PCM Audio || <del>[[#GPIO20|GPIO20]]</del> '''[[#GPIO30|GPIO30]]''' || pcm
 
|-
 
|-
| style="background-color:lawngreen;" | <div id="PCM_DOUT">PCM_DOUT</div> || PCM data out || PCM Audio || '''[[#GPIO21|GPIO21]]''' [[#GPIO31|GPIO31]]
+
| style="background-color:lawngreen;" | <div id="PCM_DOUT">PCM_DOUT</div> || PCM data out || PCM Audio || [[#GPIO21|GPIO21]] '''[[#GPIO31|GPIO31]]''' || pcm
 
|-
 
|-
| style="background-color:royalblue;color:white;" | <div id="SAx">SAx</div> || Secondary mem Address bus || Secondary Memory Interface || many
+
| style="background-color:royalblue;color:white;" | <div id="SAx">SAx</div> || Secondary mem Address bus || Secondary Memory Interface || many || smi
 
|-
 
|-
| style="background-color:royalblue;color:white;" | <div id="SOE_N">SOE_N / SE</div> || Secondary mem. Controls || Secondary Memory Interface || [[#GPIO6|GPIO6]] <del>[[#GPIO34|GPIO34]]</del>
+
| style="background-color:royalblue;color:white;" | <div id="SOE_N">SOE_N / SE</div> || Secondary mem. Controls || Secondary Memory Interface || [[#GPIO6|GPIO6]] <del>[[#GPIO34|GPIO34]]</del> || smi
 
|-
 
|-
| style="background-color:royalblue;color:white;" | <div id="SWE_N">SWE_N / SRW_N</div> || Secondary mem. Controls || Secondary Memory Interface || '''[[#GPIO7|GPIO7]]''' <del>[[#GPIO35|GPIO35]]</del>
+
| style="background-color:royalblue;color:white;" | <div id="SWE_N">SWE_N / SRW_N</div> || Secondary mem. Controls || Secondary Memory Interface || '''[[#GPIO7|GPIO7]]''' <del>[[#GPIO35|GPIO35]]</del> || smi
 
|-
 
|-
| style="background-color:royalblue;color:white;" | <div id="SDx">SDx</div> || Secondary mem. data bus || Secondary Memory Interface || many
+
| style="background-color:royalblue;color:white;" | <div id="SDx">SDx</div> || Secondary mem. data bus || Secondary Memory Interface || many || smi
 
|-
 
|-
| style="background-color:maroon;color:white;" | <div id="MOSI">BSCSL SDA / MOSI</div> || BSC slave Data, SPI slave MOSI || BSC/SPI slave || '''[[#GPIO18|GPIO18]]'''
+
| style="background-color:maroon;color:white;" | <div id="MOSI">BSCSL SDA / MOSI</div> || BSC slave Data, SPI slave MOSI || BSC/SPI slave || '''[[#GPIO18|GPIO18]]''' || spi_slave
 
|-
 
|-
| style="background-color:maroon;color:white;" | <div id="SCLK">BSCSL SCL / SCLK</div> || BSC slave Clock, SPI slave clock || BSC/SPI slave || <del>[[#GPIO19|GPIO19]]</del>
+
| style="background-color:maroon;color:white;" | <div id="SCLK">BSCSL SCL / SCLK</div> || BSC slave Clock, SPI slave clock || BSC/SPI slave || <del>[[#GPIO19|GPIO19]]</del> || spi_slave
 
|-
 
|-
| style="background-color:maroon;color:white;" | <div id="MISO">BSCSL - / MISO</div> || BSC <not used>, SPI MISO || BSC/SPI slave || <del>[[#GPIO20|GPIO20]]</del>
+
| style="background-color:maroon;color:white;" | <div id="MISO">BSCSL - / MISO</div> || BSC <not used>, SPI MISO || BSC/SPI slave || <del>[[#GPIO20|GPIO20]]</del> || spi_slave
 
|-
 
|-
| style="background-color:maroon;color:white;" | <div id="CE_N">BSCSL - / CE_N</div> || BSC <not used>, SPI CSn || BSC/SPI slave || '''[[#GPIO21|GPIO21]]'''
+
| style="background-color:maroon;color:white;" | <div id="CE_N">BSCSL - / CE_N</div> || BSC <not used>, SPI CSn || BSC/SPI slave || [[#GPIO21|GPIO21]] || spi_slave
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI1_CEx_N">SPI1_CEx_N</div> || SPI1 Chip select 0-2 || Auxiliary I/O || SPI1_CE0_N: '''[[#GPIO18|GPIO18]]'''<br> SPI1_CE1_N: '''[[#GPIO17|GPIO17]]'''<br> SPI1_CE2_N: [[#GPIO16|GPIO16]]
+
| style="background-color:plum;" | <div id="SPI1_CEx_N">SPI1_CEx_N</div> || SPI1 Chip select 0-2 || Auxiliary I/O || SPI1_CE0_N: '''[[#GPIO18|GPIO18]]'''<br> SPI1_CE1_N: '''[[#GPIO17|GPIO17]]'''<br> SPI1_CE2_N: [[#GPIO16|GPIO16]] || spi1
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI1_MISO">SPI1_MISO</div> || SPI1 MISO || Auxiliary I/O || <del>[[#GPIO19|GPIO19]]</del>
+
| style="background-color:plum;" | <div id="SPI1_MISO">SPI1_MISO</div> || SPI1 MISO || Auxiliary I/O || <del>[[#GPIO19|GPIO19]]</del> || spi1
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI1_MOSI">SPI1_MOSI</div> || SPI1 MOSI || Auxiliary I/O || <del>[[#GPIO20|GPIO20]]</del>
+
| style="background-color:plum;" | <div id="SPI1_MOSI">SPI1_MOSI</div> || SPI1 MOSI || Auxiliary I/O || <del>[[#GPIO20|GPIO20]]</del> || spi1
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI1_SCLK">SPI1_SCLK</div> || SPI1 Serial clock || Auxiliary I/O || '''[[#GPIO21|GPIO21]]'''
+
| style="background-color:plum;" | <div id="SPI1_SCLK">SPI1_SCLK</div> || SPI1 Serial clock || Auxiliary I/O || [[#GPIO21|GPIO21]] || spi1
 
|-
 
|-
| style="background-color:red;" | <div id="TXD1">TXD1</div> || UART 1 Transmit Data || Auxiliary I/O || '''[[#GPIO14|GPIO14]]''' <del>[[#GPIO32|GPIO32]]</del> [[#GPIO40|GPIO40]]
+
| style="background-color:red;" | <div id="TXD1">TXD1</div> || UART 1 Transmit Data || Auxiliary I/O || '''[[#GPIO14|GPIO14]]''' <del>[[#GPIO32|GPIO32]]</del> [[#GPIO40|GPIO40]] || uart1
 
|-
 
|-
| style="background-color:red;" | <div id="RXD1">RXD1</div> || UART 1 Receive Data || Auxiliary I/O || '''[[#GPIO15|GPIO15]]''' <del>[[#GPIO33|GPIO33]]</del> <del>[[#GPIO41|GPIO41]]</del>
+
| style="background-color:red;" | <div id="RXD1">RXD1</div> || UART 1 Receive Data || Auxiliary I/O || '''[[#GPIO15|GPIO15]]''' <del>[[#GPIO33|GPIO33]]</del> <del>[[#GPIO41|GPIO41]]</del> || uart1
 
|-
 
|-
| style="background-color:red;" | <div id="CTS1">CTS1</div> || UART 1 Clear To Send || Auxiliary I/O || [[#GPIO16|GPIO16]] [[#GPIO30|GPIO30]] <del>[[#GPIO43|GPIO43]]</del>
+
| style="background-color:red;" | <div id="CTS1">CTS1</div> || UART 1 Clear To Send || Auxiliary I/O || [[#GPIO16|GPIO16]] '''[[#GPIO30|GPIO30]]''' <del>[[#GPIO43|GPIO43]]</del> || uart1
 
|-
 
|-
| style="background-color:red;" | <div id="RTS1">RTS1</div> || UART 1 Request To Send || Auxiliary I/O || '''[[#GPIO17|GPIO17]]''' [[#GPIO31|GPIO31]] <del>[[#GPIO42|GPIO42]]</del>
+
| style="background-color:red;" | <div id="RTS1">RTS1</div> || UART 1 Request To Send || Auxiliary I/O || '''[[#GPIO17|GPIO17]]''' '''[[#GPIO31|GPIO31]]''' <del>[[#GPIO42|GPIO42]]</del> || uart1
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI2_CEx_N">SPI2_CEx_N</div> || SPI2 Chip select 0-2 || Auxiliary I/O || SPI2_CE0_N: <del>[[#GPIO43|GPIO43]]</del><br> SPI2_CE1_N: <del>[[#GPIO44|GPIO44]]</del><br> SPI2_CE2_N: [[#GPIO45|GPIO45]]
+
| style="background-color:plum;" | <div id="SPI2_CEx_N">SPI2_CEx_N</div> || SPI2 Chip select 0-2 || Auxiliary I/O || SPI2_CE0_N: <del>[[#GPIO43|GPIO43]]</del><br> SPI2_CE1_N: <del>[[#GPIO44|GPIO44]]</del><br> SPI2_CE2_N: [[#GPIO45|GPIO45]] || spi2
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI2_MISO">SPI2_MISO</div> || SPI2 MISO || Auxiliary I/O || [[#GPIO40|GPIO40]]
+
| style="background-color:plum;" | <div id="SPI2_MISO">SPI2_MISO</div> || SPI2 MISO || Auxiliary I/O || [[#GPIO40|GPIO40]] || spi2
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI2_MOSI">SPI2_MOSI</div> || SPI2 MOSI || Auxiliary I/O || <del>[[#GPIO41|GPIO41]]</del>
+
| style="background-color:plum;" | <div id="SPI2_MOSI">SPI2_MOSI</div> || SPI2 MOSI || Auxiliary I/O || <del>[[#GPIO41|GPIO41]]</del> || spi2
 
|-
 
|-
| style="background-color:plum;" | <div id="SPI2_SCLK">SPI2_SCLK</div> || SPI2 Serial clock || Auxiliary I/O || <del>[[#GPIO42|GPIO42]]</del>
+
| style="background-color:plum;" | <div id="SPI2_SCLK">SPI2_SCLK</div> || SPI2 Serial clock || Auxiliary I/O || <del>[[#GPIO42|GPIO42]]</del> || spi2
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_TRST">ARM_TRST</div> || ARM JTAG reset || '''<TBD>''' || '''[[#GPIO22|GPIO22]]'''
+
| style="background-color:silver;" | <div id="ARM_TRST">ARM_TRST</div> || ARM JTAG reset || '''<TBD>''' || '''[[#GPIO22|GPIO22]]''' || arm_jtag
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_RTCK">ARM_RTCK</div> || ARM JTAG return clock || '''<TBD>''' || [[#GPIO6|GPIO6]] '''[[#GPIO23|GPIO23]]'''
+
| style="background-color:silver;" | <div id="ARM_RTCK">ARM_RTCK</div> || ARM JTAG return clock || '''<TBD>''' || [[#GPIO6|GPIO6]] '''[[#GPIO23|GPIO23]]''' || arm_jtag
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_TDO">ARM_TDO</div> || ARM JTAG Data out || '''<TBD>''' || '''[[#GPIO4|GPIO4]]''' '''[[#GPIO24|GPIO24]]'''
+
| style="background-color:silver;" | <div id="ARM_TDO">ARM_TDO</div> || ARM JTAG Data out || '''<TBD>''' || '''[[#GPIO4|GPIO4]]''' '''[[#GPIO24|GPIO24]]''' || arm_jtag
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_TCK">ARM_TCK</div> || ARM JTAG Clock || '''<TBD>''' || <del>[[#GPIO13|GPIO13]]</del> '''[[#GPIO25|GPIO25]]'''
+
| style="background-color:silver;" | <div id="ARM_TCK">ARM_TCK</div> || ARM JTAG Clock || '''<TBD>''' || <del>[[#GPIO13|GPIO13]]</del> '''[[#GPIO25|GPIO25]]''' || arm_jtag
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_TDI">ARM_TDI</div> || ARM JTAG Data in || '''<TBD>''' || '''[[#GPIO4|GPIO4]]''' <del>[[#GPIO26|GPIO26]]</del>
+
| style="background-color:silver;" | <div id="ARM_TDI">ARM_TDI</div> || ARM JTAG Data in || '''<TBD>''' || '''[[#GPIO4|GPIO4]]''' <del>[[#GPIO26|GPIO26]]</del> || arm_jtag
 
|-
 
|-
| style="background-color:silver;" | <div id="ARM_TMS">ARM_TMS</div> || ARM JTAG Mode select || '''<TBD>''' || <del>[[#GPIO12|GPIO12]]</del> [[#GPIO27|GPIO27]]
+
| style="background-color:silver;" | <div id="ARM_TMS">ARM_TMS</div> || ARM JTAG Mode select || '''<TBD>''' || <del>[[#GPIO12|GPIO12]]</del> '''[[#GPIO27|GPIO27]]''' || arm_jtag
 
|-
 
|-
! style="background-color:powderblue;" | Name !! style="background-color:powderblue;" | Function !! style="background-color:powderblue;" | Datasheet section !! style="background-color:powderblue;" | GPIOs
+
! style="background-color:powderblue;" | Name !! style="background-color:powderblue;" | Function !! style="background-color:powderblue;" | Datasheet section !! style="background-color:powderblue;" | GPIOs !! style="background-color:powderblue;" | [http://www.raspberrypi.org/documentation/configuration/pin-configuration.md DeviceTree] 'function'
 
|}
 
|}

Latest revision as of 18:24, 14 August 2014


Back to RPi_Low-level_peripherals

BCM2835 GPIO functions

This is a wiki-fied copy of Table 6-31 from the BCM2835 datasheet including any relevant errata, with a few extra columns, all nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function. Any GPIOs that aren't connected on the RaspberryPi Model B revision 2.0 circuit board are crossed out, and the GPIOs available on the GPIO Connector (P1) or P5 are in bold, with their default function (according to the schematics) in bold italics.
(If you want to see how GPIO-pins map back to actual pins, see this page). A selection of common circuits for interfacing with the GPIOs is given at RPi_GPIO_Interface_Circuits.

GPIO Pins Alternative Function Assignment

Bank Pull ALT0 ALT1 ALT2 ALT3 ALT4 ALT5 RPi Rev2.0 signal name / Rev1.0 if different RPi Rev2.0 connection / Rev1.0 if different RPi B+ connection Compute Module connection CM IO Board connection
GPIO0
0 High SDA0 SA5 <reserved> SDA0 S5-14 / P1-03 J8-27 (ID_SD) J1-03 J5-01
GPIO1
0 High SCL0 SA4 <reserved> SCL0 S5-13 / P1-05 J8-28 (ID_SC) J1-05 J5-03
GPIO2
0 High SDA1 SA3 <reserved> SDA1 P1-03 / S5-14 J8-03 J1-09 J5-05
GPIO3
0 High SCL1 SA2 <reserved> SCL1 P1-05 / S5-13 J8-05 J1-11 J5-07
GPIO4
0 High GPCLK0 SA1 <reserved> ARM_TDI GPIO_GCLK P1-07 J8-07 J1-15 J5-09
GPIO5
0 High GPCLK1 SA0 <reserved> ARM_TDO CAM_CLK S5-12 J8-29 J1-17 J5-11
GPIO6
0 High GPCLK2 SOE_N / SE <reserved> ARM_RTCK LAN_RUN IC3-12 J8-31 J1-21 J5-13
GPIO7
0 High SPI0_CE1_N SWE_N / SRW_N <reserved> SPI_CE1_N P1-26 J8-26 J1-23 J5-15
GPIO8
0 High SPI0_CE0_N SD0 <reserved> SPI_CE0_N P1-24 J8-24 J1-27 J5-17
GPIO9
0 Low SPI0_MISO SD1 <reserved> SPI_MISO P1-21 J8-21 J1-29 J5-19
GPIO10
0 Low SPI0_MOSI SD2 <reserved> SPI_MOSI P1-19 J8-19 J1-33 J5-21
GPIO11
0 Low SPI0_SCLK SD3 <reserved> SPI_SCLK P1-23 J8-23 J1-35 J5-23
GPIO12
0 Low PWM0 SD4 <reserved> ARM_TMS nc J8-32 J1-45 J5-25
GPIO13
0 Low PWM1 SD5 <reserved> ARM_TCK nc J8-33 J1-47 J5-27
GPIO14
0 Low TXD0 SD6 <reserved> TXD1 TXD0 P1-08 J8-08 J1-51 J5-29
GPIO15
0 Low RXD0 SD7 <reserved> RXD1 RXD0 P1-10 J8-10 J1-53 J5-31
GPIO16
0 Low <reserved> SD8 <reserved> CTS0 SPI1_CE2_N CTS1 STATUS_LED_N D5 (ACT LED) / D5 (OK LED) J8-36 J1-57 J5-33
GPIO17
0 Low <reserved> SD9 <reserved> RTS0 SPI1_CE1_N RTS1 GPIO_GEN0 P1-11 J8-11 J1-59 J5-35
GPIO18
0 Low PCM_CLK SD10 <reserved> BSCSL SDA / MOSI SPI1_CE0_N PWM0 GPIO_GEN1 P1-12 J8-12 J1-63 J5-37
GPIO19
0 Low PCM_FS SD11 <reserved> BSCSL SCL / SCLK SPI1_MISO PWM1 nc J8-35 J1-65 J5-39
GPIO20
0 Low PCM_DIN SD12 <reserved> BSCSL / MISO SPI1_MOSI GPCLK0 nc J8-38 J1-69 J5-41
GPIO21
0 Low PCM_DOUT SD13 <reserved> BSCSL / CE_N SPI1_SCLK GPCLK1 CAM_GPIO / GPIO_GEN2 S5-11 / P1-13 J8-40 J1-71 J5-43
GPIO22
0 Low <reserved> SD14 <reserved> SD1_CLK ARM_TRST GPIO_GEN3 P1-15 J8-15 J1-75 J5-45
GPIO23
0 Low <reserved> SD15 <reserved> SD1_CMD ARM_RTCK GPIO_GEN4 P1-16 J8-16 J1-77 J5-47
GPIO24
0 Low <reserved> SD16 <reserved> SD1_DAT0 ARM_TDO GPIO_GEN5 P1-18 J8-18 J1-81 J5-49
GPIO25
0 Low <reserved> SD17 <reserved> SD1_DAT1 ARM_TCK GPIO_GEN6 P1-22 J8-22 J1-83 J5-51
GPIO26
0 Low <reserved> <reserved> <reserved> SD1_DAT2 ARM_TDI nc J8-37 J1-87 J5-53
GPIO27
0 Low <reserved> <reserved> <reserved> SD1_DAT3 ARM_TMS GPIO_GEN2 / CAM_GPIO P1-13 / S5-11 J8-13 J1-89 J5-55
GPIO28
1 - SDA0 SA5 PCM_CLK <reserved> GPIO_GEN7 / CONFIG0 P5-03 / R10 or R8 J1-28 J6-01
GPIO29
1 - SCL0 SA4 PCM_FS <reserved> GPIO_GEN8 / CONFIG1 P5-04 / R9 or R7 J1-30 J6-03
GPIO30
1 Low <reserved> SA3 PCM_DIN CTS0 CTS1 GPIO_GEN9 / CONFIG2 P5-05 / R6 or R4 J1-34 J6-05
GPIO31
1 Low <reserved> SA2 PCM_DOUT RTS0 RTS1 GPIO_GEN10 / CONFIG3 P5-06 / R5 or R3 J1-36 J6-07
GPIO32
1 Low GPCLK0 SA1 <reserved> TXD0 TXD1 nc J1-46 J6-09
GPIO33
1 Low <reserved> SA0 <reserved> RXD0 RXD1 nc J1-48 J6-11
GPIO34
1 High GPCLK0 SOE_N / SE <reserved> <reserved> nc J1-52 J6-13
GPIO35
1 High SPI0_CE1_N SWE_N / SRW_N <reserved> nc J1-54 J6-15
GPIO36
1 High SPI0_CE0_N SD0 TXD0 <reserved> nc J1-58 J6-17
GPIO37
1 Low SPI0_MISO SD1 RXD0 <reserved> nc J1-60 J6-19
GPIO38
1 Low SPI0_MOSI SD2 RTS0 <reserved> nc J1-64 J6-21
GPIO39
1 Low SPI0_SCLK SD3 CTS0 <reserved> nc J1-66 J6-23
GPIO40
1 Low PWM0 SD4 <reserved> SPI2_MISO TXD1 PWM0_OUT R21 J1-70 J6-25
GPIO41
1 Low PWM1 SD5 <reserved> <reserved> SPI2_MOSI RXD1 nc J1-72 J6-27
GPIO42
1 Low GPCLK1 SD6 <reserved> <reserved> SPI2_SCLK RTS1 nc J1-76 J6-29
GPIO43
1 Low GPCLK2 SD7 <reserved> <reserved> SPI2_CE0_N CTS1 nc J1-78 J6-31
GPIO44
1 - GPCLK1 SDA0 SDA1 <reserved> SPI2_CE1_N nc J1-82 J6-33
GPIO45
1 - PWM1 SCL0 SCL1 <reserved> SPI2_CE2_N PWM1_OUT R27 J1-84 J6-35
GPIO46
2 High <internal> HDMI_HPD_P IC1-6 J1-88 Q4
GPIO47
2 High <internal> SD_CARD_DET S8-10 J1-90 Q2
GPIO48
2 High <internal> SD_CLK_R R48 R8 n/a
GPIO49
2 High <internal> SD_CMD_R R47 U3-1 n/a
GPIO50
2 High <internal> SD_DATA0_R R49 U2-A3 n/a
GPIO51
2 High <internal> SD_DATA1_R R50 U2-A4 n/a
GPIO52
2 High <internal> SD_DATA2_R R45 U2-A5 n/a
GPIO53
2 High <internal> SD_DATA3_R R46 U2-B2 n/a
Bank Pull ALT0 ALT1 ALT2 ALT3 ALT4 ALT5 RPi Rev2.0 signal name / Rev1.0 if different RPi Rev2.0 connection / Rev1.0 if different RPi B+ connection Compute Module connection CM IO Board connection


As in the table above, the GPIOs available on the GPIO Connector (P1) or P5 are in bold, with their default function (according to the schematics) in bold italics.

Special function legend:

Name Function Datasheet section GPIOs DeviceTree 'function'
SDA0
BSC master 0 data line BSC GPIO0 GPIO28 GPIO44 i2c0
SCL0
BSC master 0 clock line BSC GPIO1 GPIO29 GPIO45 i2c0
SDA1
BSC master 1 data line BSC GPIO2 GPIO44 i2c1
SCL1
BSC master 1 clock line BSC GPIO3 GPIO45 i2c1
GPCLK0
General purpose Clock 0 <TBD> GPIO4 GPIO20 GPIO32 GPIO34 gp_clk
GPCLK1
General purpose Clock 1 <TBD> GPIO5 GPIO21 GPIO42 GPIO44 gp_clk
GPCLK2
General purpose Clock 2 <TBD> GPIO6 GPIO43 gp_clk
SPI0_CE1_N
SPI0 Chip select 1 SPI GPIO7 GPIO35 spi
SPI0_CE0_N
SPI0 Chip select 0 SPI GPIO8 GPIO36 spi
SPI0_MISO
SPI0 MISO SPI GPIO9 GPIO37 spi
SPI0_MOSI
SPI0 MOSI SPI GPIO10 GPIO38 spi
SPI0_SCLK
SPI0 Serial clock SPI GPIO11 GPIO39 spi
PWMx
Pulse Width Modulator 0..1 Pulse Width Modulator PWM0: GPIO12 GPIO18 GPIO40
PWM1: GPIO13 GPIO19 GPIO41 GPIO45
pwm
TXD0
UART 0 Transmit Data UART GPIO14 GPIO32 GPIO36 uart0
RXD0
UART 0 Receive Data UART GPIO15 GPIO33 GPIO37 uart0
CTS0
UART 0 Clear To Send UART GPIO16 GPIO30 GPIO39 uart0
RTS0
UART 0 Request To Send UART GPIO17 GPIO31 GPIO38 uart0
PCM_CLK
PCM clock PCM Audio GPIO18 GPIO28 pcm
PCM_FS
PCM Frame Sync PCM Audio GPIO19 GPIO29 pcm
PCM_DIN
PCM Data in PCM Audio GPIO20 GPIO30 pcm
PCM_DOUT
PCM data out PCM Audio GPIO21 GPIO31 pcm
SAx
Secondary mem Address bus Secondary Memory Interface many smi
SOE_N / SE
Secondary mem. Controls Secondary Memory Interface GPIO6 GPIO34 smi
SWE_N / SRW_N
Secondary mem. Controls Secondary Memory Interface GPIO7 GPIO35 smi
SDx
Secondary mem. data bus Secondary Memory Interface many smi
BSCSL SDA / MOSI
BSC slave Data, SPI slave MOSI BSC/SPI slave GPIO18 spi_slave
BSCSL SCL / SCLK
BSC slave Clock, SPI slave clock BSC/SPI slave GPIO19 spi_slave
BSCSL - / MISO
BSC <not used>, SPI MISO BSC/SPI slave GPIO20 spi_slave
BSCSL - / CE_N
BSC <not used>, SPI CSn BSC/SPI slave GPIO21 spi_slave
SPI1_CEx_N
SPI1 Chip select 0-2 Auxiliary I/O SPI1_CE0_N: GPIO18
SPI1_CE1_N: GPIO17
SPI1_CE2_N: GPIO16
spi1
SPI1_MISO
SPI1 MISO Auxiliary I/O GPIO19 spi1
SPI1_MOSI
SPI1 MOSI Auxiliary I/O GPIO20 spi1
SPI1_SCLK
SPI1 Serial clock Auxiliary I/O GPIO21 spi1
TXD1
UART 1 Transmit Data Auxiliary I/O GPIO14 GPIO32 GPIO40 uart1
RXD1
UART 1 Receive Data Auxiliary I/O GPIO15 GPIO33 GPIO41 uart1
CTS1
UART 1 Clear To Send Auxiliary I/O GPIO16 GPIO30 GPIO43 uart1
RTS1
UART 1 Request To Send Auxiliary I/O GPIO17 GPIO31 GPIO42 uart1
SPI2_CEx_N
SPI2 Chip select 0-2 Auxiliary I/O SPI2_CE0_N: GPIO43
SPI2_CE1_N: GPIO44
SPI2_CE2_N: GPIO45
spi2
SPI2_MISO
SPI2 MISO Auxiliary I/O GPIO40 spi2
SPI2_MOSI
SPI2 MOSI Auxiliary I/O GPIO41 spi2
SPI2_SCLK
SPI2 Serial clock Auxiliary I/O GPIO42 spi2
ARM_TRST
ARM JTAG reset <TBD> GPIO22 arm_jtag
ARM_RTCK
ARM JTAG return clock <TBD> GPIO6 GPIO23 arm_jtag
ARM_TDO
ARM JTAG Data out <TBD> GPIO4 GPIO24 arm_jtag
ARM_TCK
ARM JTAG Clock <TBD> GPIO13 GPIO25 arm_jtag
ARM_TDI
ARM JTAG Data in <TBD> GPIO4 GPIO26 arm_jtag
ARM_TMS
ARM JTAG Mode select <TBD> GPIO12 GPIO27 arm_jtag
Name Function Datasheet section GPIOs DeviceTree 'function'