Difference between revisions of "RPi BCM2711 GPIOs"

From eLinux.org
Jump to: navigation, search
m (Improve I2C slave GPIOs)
(Use italics for functions changed from Raspberry Pi 3)
Line 8: Line 8:
 
This page was cloned from [[RPi BCM2835 GPIOs]], incorporating information from [https://github.com/RPi-Distro/raspi-gpio/blob/master/raspi-gpio.c raspi-gpio]. All is nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function.<br>
 
This page was cloned from [[RPi BCM2835 GPIOs]], incorporating information from [https://github.com/RPi-Distro/raspi-gpio/blob/master/raspi-gpio.c raspi-gpio]. All is nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function.<br>
 
(If you want to see how GPIO-pins map back to ''actual'' pins, see [[RPi_BCM2711_Pinout|this page]]). A selection of common circuits for interfacing with the GPIOs is given at [[RPi_GPIO_Interface_Circuits]].
 
(If you want to see how GPIO-pins map back to ''actual'' pins, see [[RPi_BCM2711_Pinout|this page]]). A selection of common circuits for interfacing with the GPIOs is given at [[RPi_GPIO_Interface_Circuits]].
 +
 +
Changes from Raspberry Pi 3 are shown in ''italics''.
  
 
GPIO Pins Alternative Function Assignment
 
GPIO Pins Alternative Function Assignment
Line 14: Line 16:
 
! 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" | RPi4 signal name !! style="background-color:yellow" | RPi4 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" | RPi4 signal name !! style="background-color:yellow" | RPi4 connection
 
|-
 
|-
| <div id="GPIO0">GPIO0</div> || 0 || High || style="background-color:orange" | [[#SDA0|SDA0]] || style="background-color:royalblue | [[#SAx|SA5]] || style="background-color:darkkhaki" | [[#PCLK|PCLK]] || style="background-color:plum" | [[#SPI3_CE0_N|SPI3_CE0_N]] || style="background-color:red" | [[#TXD2|TXD2]] || style="background-color:orange" | [[#SDA6|SDA6]] || || J8-27 (ID_SD)
+
| <div id="GPIO0">GPIO0</div> || 0 || High || style="background-color:orange" | [[#SDA0|SDA0]] || style="background-color:royalblue | [[#SAx|SA5]] || style="background-color:darkkhaki" | [[#PCLK|PCLK]] || style="background-color:plum" | ''[[#SPI3_CE0_N|SPI3_CE0_N]]'' || style="background-color:red" | ''[[#TXD2|TXD2]]'' || style="background-color:orange" | ''[[#SDA6|SDA6]]'' || || J8-27 (ID_SD)
 
|-
 
|-
| <div id="GPIO1">GPIO1</div> || 0 || High || style="background-color:orange" | [[#SCL0|SCL0]] || style="background-color:royalblue" | [[#SAx|SA4]] || style="background-color:darkkhaki" | [[#DE|DE]] || style="background-color:plum" | [[#SPI3_MISO|SPI3_MISO]] || style="background-color:red" | [[#RXD2|RXD2]] || style="background-color:orange" | [[#SCL6|SCL6]] || || J8-28 (ID_SC)
+
| <div id="GPIO1">GPIO1</div> || 0 || High || style="background-color:orange" | [[#SCL0|SCL0]] || style="background-color:royalblue" | [[#SAx|SA4]] || style="background-color:darkkhaki" | [[#DE|DE]] || style="background-color:plum" | ''[[#SPI3_MISO|SPI3_MISO]]'' || style="background-color:red" | ''[[#RXD2|RXD2]]'' || style="background-color:orange" | ''[[#SCL6|SCL6]]'' || || J8-28 (ID_SC)
 
|-
 
|-
| <div id="GPIO2">GPIO2</div> || 0 || High || style="background-color:magenta" | [[#SDA1|SDA1]] || style="background-color:royalblue" | [[#SAx|SA3]] || style="background-color:darkkhaki" | [[#LCD_VSYNC|LCD_VSYNC]] || style="background-color:plum" | [[#SPI3_MOSI|SPI3_MOSI]] || style="background-color:red" | [[#CTS2|CTS2]] || style="background-color:magenta" | [[#SDA3|SDA3]] || || J8-03
+
| <div id="GPIO2">GPIO2</div> || 0 || High || style="background-color:magenta" | [[#SDA1|SDA1]] || style="background-color:royalblue" | [[#SAx|SA3]] || style="background-color:darkkhaki" | [[#LCD_VSYNC|LCD_VSYNC]] || style="background-color:plum" | ''[[#SPI3_MOSI|SPI3_MOSI]]'' || style="background-color:red" | ''[[#CTS2|CTS2]]'' || style="background-color:magenta" | ''[[#SDA3|SDA3]]'' || || J8-03
 
|-
 
|-
| <div id="GPIO3">GPIO3</div> || 0 || High || style="background-color:magenta" | [[#SCL1|SCL1]] || style="background-color:royalblue" | [[#SAx|SA2]] || style="background-color:darkkhaki" | [[#LCD_HSYNC|LCD_HSYNC]] || style="background-color:plum" | [[#SPI3_SCLK|SPI3_SCLK]] || style="background-color:red" | [[#RTS2|RTS2]] || style="background-color:magenta" | [[#SCL3|SCL3]] || || J8-05
+
| <div id="GPIO3">GPIO3</div> || 0 || High || style="background-color:magenta" | [[#SCL1|SCL1]] || style="background-color:royalblue" | [[#SAx|SA2]] || style="background-color:darkkhaki" | [[#LCD_HSYNC|LCD_HSYNC]] || style="background-color:plum" | ''[[#SPI3_SCLK|SPI3_SCLK]]'' || style="background-color:red" | ''[[#RTS2|RTS2]]'' || style="background-color:magenta" | ''[[#SCL3|SCL3]]'' || || J8-05
 
|-
 
|-
| <div id="GPIO4">GPIO4</div> || 0 || High || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SAx|SA1]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D0]] || style="background-color:plum" | [[#SPI4_CE0_N|SPI4_CE0_N]] || style="background-color:royalblue" | [[#TXD3|TXD3]] || style="background-color:magenta" | [[#SDA3|SDA3]] || || J8-07
+
| <div id="GPIO4">GPIO4</div> || 0 || High || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SAx|SA1]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D0]] || style="background-color:plum" | ''[[#SPI4_CE0_N|SPI4_CE0_N]]'' || style="background-color:royalblue" | ''[[#TXD3|TXD3]]'' || style="background-color:magenta" | ''[[#SDA3|SDA3]]'' || || J8-07
 
|-
 
|-
| <div id="GPIO5">GPIO5</div> || 0 || High || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue" | [[#SAx|SA0]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D1]] || style="background-color:plum" | [[#SPI4_MISO|SPI4_MISO]] || style="background-color:royalblue" | [[#RXD3|RXD3]] || style="background-color:magenta" | [[#SCL3|SCL3]] || || J8-29
+
| <div id="GPIO5">GPIO5</div> || 0 || High || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue" | [[#SAx|SA0]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D1]] || style="background-color:plum" | ''[[#SPI4_MISO|SPI4_MISO]]'' || style="background-color:royalblue" | ''[[#RXD3|RXD3]]'' || style="background-color:magenta" | ''[[#SCL3|SCL3]]'' || || J8-29
 
|-
 
|-
| <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:darkkhaki" | [[#DPI_Dx|DPI_D2]] || style="background-color:plum" | [[#SPI4_MOSI|SPI4_MOSI]] || style="background-color:royalblue" | [[#CTS3|CTS3]] || style="background-color:orange" | [[#SDA4|SDA4]] || || J8-31
+
| <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:darkkhaki" | [[#DPI_Dx|DPI_D2]] || style="background-color:plum" | ''[[#SPI4_MOSI|SPI4_MOSI]]'' || style="background-color:royalblue" | ''[[#CTS3|CTS3]]'' || style="background-color:orange" | ''[[#SDA4|SDA4]]'' || || J8-31
 
|-
 
|-
| <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:darkkhaki" | [[#DPI_Dx|DPI_D3]] || style="background-color:plum" | [[#SPI4_SCLK|SPI4_SCLK]] || style="background-color:royalblue" | [[#RTS3|RTS3]] || style="background-color:orange" | [[#SCL4|SCL4]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D3]] || style="background-color:plum" | ''[[#SPI4_SCLK|SPI4_SCLK]]'' || style="background-color:royalblue" | ''[[#RTS3|RTS3]]'' || style="background-color:orange" | ''[[#SCL4|SCL4]]'' || || J8-26
 
|-
 
|-
| <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:darkkhaki" | [[#DPI_Dx|DPI_D4]] || style="background-color:maroon;color:white" | [[I2CSL_CE_N|I2CSL CE_N]] || style="background-color:red" | [[#TXD4|TXD4]] || style="background-color:orange" | [[#SDA4|SDA4]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D4]] || style="background-color:maroon;color:white" | ''[[I2CSL_CE_N|I2CSL CE_N]]'' || style="background-color:red" | ''[[#TXD4|TXD4]]'' || style="background-color:orange" | ''[[#SDA4|SDA4]]'' || || J8-24
 
|-
 
|-
| <div id="GPIO9">GPIO9</div> || 0 || Low || style="background-color:plum" | [[#SPI0_MISO|SPI0_MISO]] || style="background-color:royalblue" | [[#SDx|SD1]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D5]] || style="background-color:maroon;color:white" | [[#I2CSL_SDI_MISO|I2CSL SDI / MISO]] || style="background-color:red" | [[#RXD4|RXD4]] || style="background-color:orange" | [[#SCL4|SCL4]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D5]] || style="background-color:maroon;color:white" | ''[[#I2CSL_SDI_MISO|I2CSL SDI / MISO]]'' || style="background-color:red" | ''[[#RXD4|RXD4]]'' || style="background-color:orange" | ''[[#SCL4|SCL4]]'' || || J8-21
 
|-
 
|-
| <div id="GPIO10">GPIO10</div> || 0 || Low || style="background-color:plum" | [[#SPI0_MOSI|SPI0_MOSI]] || style="background-color:royalblue" | [[#SDx|SD2]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D6]] || style="background-color:maroon;color:white" | [[#I2CSL_SDA_MOSI|I2CSL SDA / MOSI]] || style="background-color:red" | [[#CTS4|CTS4]] || style="background-color:magenta" | [[#SDA5|SDA5]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D6]] || style="background-color:maroon;color:white" | ''[[#I2CSL_SDA_MOSI|I2CSL SDA / MOSI]]'' || style="background-color:red" | ''[[#CTS4|CTS4]]'' || style="background-color:magenta" | ''[[#SDA5|SDA5]]'' || || J8-19
 
|-
 
|-
| <div id="GPIO11">GPIO11</div> || 0 || Low || style="background-color:plum" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:royalblue" | [[#SDx|SD3]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D7]] || style="background-color:maroon;color:white" | [[#I2CSL_SCL_SCLK|I2CSL SCL / SCLK]] || style="background-color:red" | [[#RTS4|RTS4]] || style="background-color:magenta" | [[#SCL5|SCL5]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D7]] || style="background-color:maroon;color:white" | ''[[#I2CSL_SCL_SCLK|I2CSL SCL / SCLK]]'' || style="background-color:red" | ''[[#RTS4|RTS4]]'' || style="background-color:magenta" | ''[[#SCL5|SCL5]]'' || || J8-23
 
|-
 
|-
| <div id="GPIO12">GPIO12</div> || 0 || Low || style="background-color:lightblue" | [[#PWM0|PWM0]] || style="background-color:royalblue" | [[#SDx|SD4]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D8]] || style="background-color:plum" | [[#SPI5_CE0_N|SPI5_CE0_N]] || style="background-color:royalblue" | [[#TXD5|TXD5]] || style="background-color:magenta" | [[#SDA5|SDA5]] || || J8-32
+
| <div id="GPIO12">GPIO12</div> || 0 || Low || style="background-color:lightblue" | [[#PWM0|PWM0]] || style="background-color:royalblue" | [[#SDx|SD4]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D8]] || style="background-color:plum" | ''[[#SPI5_CE0_N|SPI5_CE0_N]]'' || style="background-color:royalblue" | ''[[#TXD5|TXD5]]'' || style="background-color:magenta" | ''[[#SDA5|SDA5]]'' || || J8-32
 
|-
 
|-
| <div id="GPIO13">GPIO13</div> || 0 || Low || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:royalblue" | [[#SDx|SD5]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D9]] || style="background-color:plum" | [[#SPI5_MISO|SPI5_MISO]] || style="background-color:royalblue" | [[#RXD5|RXD5]] || style="background-color:magenta" | [[#SCL5|SCL5]] || || J8-33
+
| <div id="GPIO13">GPIO13</div> || 0 || Low || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:royalblue" | [[#SDx|SD5]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D9]] || style="background-color:plum" | ''[[#SPI5_MISO|SPI5_MISO]]'' || style="background-color:royalblue" | ''[[#RXD5|RXD5]]'' || style="background-color:magenta" | ''[[#SCL5|SCL5]]'' || || J8-33
 
|-
 
|-
| <div id="GPIO14">GPIO14</div> || 0 || Low || style="background-color:red" | [[#TXD0|TXD0]] || style="background-color:royalblue" | [[#SDx|SD6]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D10]] || style="background-color:plum" | [[#SPI5_MOSI|SPI5_MOSI]] || style="background-color:royalblue" | [[#CTS5|CTS5]] || style="background-color:royalblue" | [[#TXD1|TXD1]] || || J8-08
+
| <div id="GPIO14">GPIO14</div> || 0 || Low || style="background-color:red" | [[#TXD0|TXD0]] || style="background-color:royalblue" | [[#SDx|SD6]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D10]] || style="background-color:plum" | ''[[#SPI5_MOSI|SPI5_MOSI]]'' || style="background-color:royalblue" | ''[[#CTS5|CTS5]]'' || style="background-color:royalblue" | [[#TXD1|TXD1]] || || J8-08
 
|-
 
|-
| <div id="GPIO15">GPIO15</div> || 0 || Low || style="background-color:red" | [[#RXD0|RXD0]] || style="background-color:royalblue" | [[#SDx|SD7]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D11]] || style="background-color:plum" | [[#SPI5_SCLK|SPI5_SCLK]] || style="background-color:royalblue" | [[#RTS5|RTS5]] || style="background-color:royalblue" | [[#RXD1|RXD1]] || || J8-10
+
| <div id="GPIO15">GPIO15</div> || 0 || Low || style="background-color:red" | [[#RXD0|RXD0]] || style="background-color:royalblue" | [[#SDx|SD7]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D11]] || style="background-color:plum" | ''[[#SPI5_SCLK|SPI5_SCLK]]'' || style="background-color:royalblue" | ''[[#RTS5|RTS5]]'' || style="background-color:royalblue" | [[#RXD1|RXD1]] || || J8-10
 
|-
 
|-
 
| <div id="GPIO16">GPIO16</div> || 0 || Low || FL0 (?) || style="background-color:royalblue" | [[#SDx|SD8]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D12]] || style="background-color:red" | [[#CTS0|CTS0]] || style="background-color:plum" | [[#SPI1_CE2_N|SPI1_CE2_N]] || style="background-color:royalblue" | [[#CTS1|CTS1]] || || J8-36
 
| <div id="GPIO16">GPIO16</div> || 0 || Low || FL0 (?) || style="background-color:royalblue" | [[#SDx|SD8]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D12]] || style="background-color:red" | [[#CTS0|CTS0]] || style="background-color:plum" | [[#SPI1_CE2_N|SPI1_CE2_N]] || style="background-color:royalblue" | [[#CTS1|CTS1]] || || J8-36
Line 50: Line 52:
 
| <div id="GPIO17">GPIO17</div> || 0 || Low || FL1 (?) || style="background-color:royalblue" | [[#SDx|SD9]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D13]] || style="background-color:red" | [[#RTS0|RTS0]] || style="background-color:plum" | [[#SPI1_CE1_N|SPI1_CE1_N]] || style="background-color:royalblue" | [[#RTS1|RTS1]] || || J8-11
 
| <div id="GPIO17">GPIO17</div> || 0 || Low || FL1 (?) || style="background-color:royalblue" | [[#SDx|SD9]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D13]] || style="background-color:red" | [[#RTS0|RTS0]] || style="background-color:plum" | [[#SPI1_CE1_N|SPI1_CE1_N]] || style="background-color:royalblue" | [[#RTS1|RTS1]] || || J8-11
 
|-
 
|-
| <div id="GPIO18">GPIO18</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_CLK|PCM_CLK]] || style="background-color:royalblue" | [[#SDx|SD10]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D14]] || style="background-color:plum" | [[#SPI6_CEx_N|SPI6_CE0_N]] || style="background-color:plum" | [[#SPI1_CE0_N|SPI1_CE0_N]] || style="background-color:lightblue" | [[#PWM0|PWM0]] || || J8-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:darkkhaki" | [[#DPI_Dx|DPI_D14]] || style="background-color:plum" | ''[[#SPI6_CEx_N|SPI6_CE0_N]]'' || style="background-color:plum" | [[#SPI1_CE0_N|SPI1_CE0_N]] || style="background-color:lightblue" | [[#PWM0|PWM0]] || || J8-12
 
|-
 
|-
| <div id="GPIO19">GPIO19</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_FS|PCM_FS]] || style="background-color:royalblue" | [[#SDx|SD11]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D15]] || style="background-color:plum" | [[#SPI6_MISO|SPI6_MISO]] || style="background-color:plum" | [[#SPI1_MISO|SPI1_MISO]] || style="background-color:lightblue" | [[#PWM1|PWM1]] || || J8-35
+
| <div id="GPIO19">GPIO19</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_FS|PCM_FS]] || style="background-color:royalblue" | [[#SDx|SD11]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D15]] || style="background-color:plum" | ''[[#SPI6_MISO|SPI6_MISO]]'' || style="background-color:plum" | [[#SPI1_MISO|SPI1_MISO]] || style="background-color:lightblue" | [[#PWM1|PWM1]] || || J8-35
 
|-
 
|-
| <div id="GPIO20">GPIO20</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_DIN|PCM_DIN]] || style="background-color:royalblue" | [[#SDx|SD12]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D16]] || style="background-color:plum" | [[#SPI6_MOSI|SPI6_MOSI]] || style="background-color:plum" | [[#SPI1_MOSI|SPI1_MOSI]] || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || || J8-38
+
| <div id="GPIO20">GPIO20</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_DIN|PCM_DIN]] || style="background-color:royalblue" | [[#SDx|SD12]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D16]] || style="background-color:plum" | ''[[#SPI6_MOSI|SPI6_MOSI]]'' || style="background-color:plum" | [[#SPI1_MOSI|SPI1_MOSI]] || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || || J8-38
 
|-
 
|-
| <div id="GPIO21">GPIO21</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:royalblue" | [[#SDx|SD13]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D17]] || style="background-color:plum" | [[#SPI6_SCLK|SPI6_SCLK]] || style="background-color:plum" | [[#SPI1_SCLK|SPI1_SCLK]] || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || || J8-40
+
| <div id="GPIO21">GPIO21</div> || 0 || Low || style="background-color:lawngreen" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:royalblue" | [[#SDx|SD13]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D17]] || style="background-color:plum" | ''[[#SPI6_SCLK|SPI6_SCLK]]'' || style="background-color:plum" | [[#SPI1_SCLK|SPI1_SCLK]] || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || || J8-40
 
|-
 
|-
| <div id="GPIO22">GPIO22</div> || 0 || Low || style="background-color:turquoise" | SD0_CLK || style="background-color:royalblue" | [[#SDx|SD14]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D18]] || style="background-color:turquoise" | SD1_CLK || style="background-color:silver" | [[#ARM_TRST|ARM_TRST]] || style="background-color:orange" | [[#SDA6|SDA6]] || || J8-15
+
| <div id="GPIO22">GPIO22</div> || 0 || Low || style="background-color:turquoise" | SD0_CLK || style="background-color:royalblue" | [[#SDx|SD14]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D18]] || style="background-color:turquoise" | SD1_CLK || style="background-color:silver" | [[#ARM_TRST|ARM_TRST]] || style="background-color:orange" | ''[[#SDA6|SDA6]]'' || || J8-15
 
|-
 
|-
| <div id="GPIO23">GPIO23</div> || 0 || Low || style="background-color:turquoise" | SD0_CMD || style="background-color:royalblue" | [[#SDx|SD15]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D19]] || style="background-color:turquoise" | SD1_CMD || style="background-color:silver" | [[#ARM_RTCK|ARM_RTCK]] || style="background-color:orange" | [[#SCL6|SCL6]] || || J8-16
+
| <div id="GPIO23">GPIO23</div> || 0 || Low || style="background-color:turquoise" | SD0_CMD || style="background-color:royalblue" | [[#SDx|SD15]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D19]] || style="background-color:turquoise" | SD1_CMD || style="background-color:silver" | [[#ARM_RTCK|ARM_RTCK]] || style="background-color:orange" | ''[[#SCL6|SCL6]]'' || || J8-16
 
|-
 
|-
| <div id="GPIO24">GPIO24</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT0 || style="background-color:royalblue" | [[#SDx|SD16]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D20]] || style="background-color:turquoise" | SD1_DAT0 || style="background-color:silver" | [[#ARM_TDO|ARM_TDO]] || style="background-color:plum" | [[#SPI3_CEx_N|SPI3_CE1_N]] || || J8-18
+
| <div id="GPIO24">GPIO24</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT0 || style="background-color:royalblue" | [[#SDx|SD16]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D20]] || style="background-color:turquoise" | SD1_DAT0 || style="background-color:silver" | [[#ARM_TDO|ARM_TDO]] || style="background-color:plum" | ''[[#SPI3_CEx_N|SPI3_CE1_N]]'' || || J8-18
 
|-
 
|-
| <div id="GPIO25">GPIO25</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT1 || style="background-color:royalblue" | [[#SDx|SD17]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D21]] || style="background-color:turquoise" | SD1_DAT1 || style="background-color:silver" | [[#ARM_TCK|ARM_TCK]] || style="background-color:plum" | [[#SPI4_CEx_N|SPI4_CE1_N]] || || J8-22
+
| <div id="GPIO25">GPIO25</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT1 || style="background-color:royalblue" | [[#SDx|SD17]] || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D21]] || style="background-color:turquoise" | SD1_DAT1 || style="background-color:silver" | [[#ARM_TCK|ARM_TCK]] || style="background-color:plum" | ''[[#SPI4_CEx_N|SPI4_CE1_N]]'' || || J8-22
 
|-
 
|-
| <div id="GPIO26">GPIO26</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT2 || TE0 (?) || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D22]] || style="background-color:turquoise" | SD1_DAT2 || style="background-color:silver" | [[#ARM_TDI|ARM_TDI]] || style="background-color:plum" | [[#SPI5_CEx_N|SPI5_CE1_N]] || || J8-37
+
| <div id="GPIO26">GPIO26</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT2 || TE0 (?) || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D22]] || style="background-color:turquoise" | SD1_DAT2 || style="background-color:silver" | [[#ARM_TDI|ARM_TDI]] || style="background-color:plum" | ''[[#SPI5_CEx_N|SPI5_CE1_N]]'' || || J8-37
 
|-
 
|-
| <div id="GPIO27">GPIO27</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT3 || TE1 (?) || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D23]] || style="background-color:turquoise" | SD1_DAT3 || style="background-color:silver" | [[#ARM_TMS|ARM_TMS]] || style="background-color:plum" | [[#SPI6_CEx_N|SPI6_CE1_N]] || || J8-13
+
| <div id="GPIO27">GPIO27</div> || 0 || Low || style="background-color:turquoise" | SD0_DAT3 || TE1 (?) || style="background-color:darkkhaki" | [[#DPI_Dx|DPI_D23]] || style="background-color:turquoise" | SD1_DAT3 || style="background-color:silver" | [[#ARM_TMS|ARM_TMS]] || style="background-color:plum" | ''[[#SPI6_CEx_N|SPI6_CE1_N]]'' || || J8-13
 
|-
 
|-
| <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]] || FL0 (?) || MII_A_RX_ERR || RGMII_MDIO || ||
+
| <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]] || FL0 (?) || ''MII_A_RX_ERR'' || ''RGMII_MDIO'' || ||
 
|-
 
|-
| <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]] || FL1 (?) || MII_A_TX_ERR || RGMII_MDC || ||
+
| <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]] || FL1 (?) || ''MII_A_TX_ERR'' || ''RGMII_MDC'' || ||
 
|-
 
|-
| <div id="GPIO30">GPIO30</div> || 1 || Low || TE0 (?) || style="background-color:royalblue" | [[#SAx|SA3]] || style="background-color:lawngreen" | [[#PCM_DIN|PCM_DIN]] || style="background-color:red" | [[#CTS0|CTS0]] || MII_A_CRS || style="background-color:royalblue" | [[#CTS1|CTS1]] || ||
+
| <div id="GPIO30">GPIO30</div> || 1 || Low || TE0 (?) || style="background-color:royalblue" | [[#SAx|SA3]] || style="background-color:lawngreen" | [[#PCM_DIN|PCM_DIN]] || style="background-color:red" | [[#CTS0|CTS0]] || ''MII_A_CRS'' || style="background-color:royalblue" | [[#CTS1|CTS1]] || ||
 
|-
 
|-
| <div id="GPIO31">GPIO31</div> || 1 || Low || FL0 (?) || style="background-color:royalblue" | [[#SAx|SA2]] || style="background-color:lawngreen" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:red" | [[#RTS0|RTS0]] || MII_A_COL || style="background-color:royalblue" | [[#RTS1|RTS1]] || ||
+
| <div id="GPIO31">GPIO31</div> || 1 || Low || FL0 (?) || style="background-color:royalblue" | [[#SAx|SA2]] || style="background-color:lawngreen" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:red" | [[#RTS0|RTS0]] || ''MII_A_COL'' || style="background-color:royalblue" | [[#RTS1|RTS1]] || ||
 
|-
 
|-
| <div id="GPIO32">GPIO32</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SAx|SA1]] || RING_OCLK (?) || style="background-color:red" | [[#TXD0|TXD0]] || SD_CARD_PRES || style="background-color:royalblue" | [[#TXD1|TXD1]] || ||
+
| <div id="GPIO32">GPIO32</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SAx|SA1]] || RING_OCLK (?) || style="background-color:red" | [[#TXD0|TXD0]] || ''SD_CARD_PRES'' || style="background-color:royalblue" | [[#TXD1|TXD1]] || ||
 
|-
 
|-
| <div id="GPIO33">GPIO33</div> || 1 || Low || FL1 (?) || style="background-color:royalblue" | [[#SAx|SA0]] || TE1 (?) || style="background-color:red" | [[#RXD0|RXD0]] || SD_CARD_WRPROT || style="background-color:royalblue" | [[#RXD1|RXD1]] || ||
+
| <div id="GPIO33">GPIO33</div> || 1 || Low || FL1 (?) || style="background-color:royalblue" | [[#SAx|SA0]] || TE1 (?) || style="background-color:red" | [[#RXD0|RXD0]] || ''SD_CARD_WRPROT'' || style="background-color:royalblue" | [[#RXD1|RXD1]] || ||
 
|-
 
|-
| <div id="GPIO34">GPIO34</div> || 1 || High || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SOE_N|SOE_N / SE]] || TE2 (?) || style="background-color:turquoise" | SD1_CLK || SD_CARD_LED || RGMII_IRQ || ||
+
| <div id="GPIO34">GPIO34</div> || 1 || High || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:royalblue" | [[#SOE_N|SOE_N / SE]] || TE2 (?) || style="background-color:turquoise" | SD1_CLK || ''SD_CARD_LED'' || ''RGMII_IRQ'' || ||
 
|-
 
|-
| <div id="GPIO35">GPIO35</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:turquoise" | SD1_CMD || RGMII_START_STOP || || ||
+
| <div id="GPIO35">GPIO35</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:turquoise" | SD1_CMD || ''RGMII_START_STOP'' || || ||
 
|-
 
|-
| <div id="GPIO36">GPIO36</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:turquoise" | SD1_DAT0 || RGMII_RX_OK || MII_A_RX_ERR || ||
+
| <div id="GPIO36">GPIO36</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:turquoise" | SD1_DAT0 || ''RGMII_RX_OK'' || ''MII_A_RX_ERR'' || ||
 
|-
 
|-
| <div id="GPIO37">GPIO37</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:turquoise" | SD1_DAT1 || RGMII_MDIO || MII_A_TX_ERR || ||
+
| <div id="GPIO37">GPIO37</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:turquoise" | SD1_DAT1 || ''RGMII_MDIO'' || ''MII_A_TX_ERR'' || ||
 
|-
 
|-
| <div id="GPIO38">GPIO38</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:turquoise" | SD1_DAT2 || RGMII_MDC || MII_A_CRS || ||
+
| <div id="GPIO38">GPIO38</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:turquoise" | SD1_DAT2 || ''RGMII_MDC'' || ''MII_A_CRS'' || ||
 
|-
 
|-
| <div id="GPIO39">GPIO39</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:turquoise" | SD1_DAT3 || RGMII_IRQ || MII_A_COL || ||
+
| <div id="GPIO39">GPIO39</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:turquoise" | SD1_DAT3 || ''RGMII_IRQ'' || ''MII_A_COL'' || ||
 
|-
 
|-
| <div id="GPIO40">GPIO40</div> || 1 || Low || style="background-color:lightblue" | [[#PWM0|PWM0]] || style="background-color:royalblue" | [[#SDx|SD4]] || || style="background-color:turquoise" | SD1_DAT4 || style="background-color:plum" | [[#SPI0_MISO|SPI0_MISO]] || style="background-color:royalblue" | [[#TXD1|TXD1]] || ||
+
| <div id="GPIO40">GPIO40</div> || 1 || Low || style="background-color:lightblue" | [[#PWM0|PWM0]] || style="background-color:royalblue" | [[#SDx|SD4]] || || style="background-color:turquoise" | SD1_DAT4 || style="background-color:plum" | ''[[#SPI0_MISO|SPI0_MISO]]'' || style="background-color:royalblue" | [[#TXD1|TXD1]] || ||
 
|-
 
|-
| <div id="GPIO41">GPIO41</div> || 1 || Low || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:royalblue" | [[#SDx|SD5]] || TE0 (?) || style="background-color:turquoise" | SD1_DAT5 || style="background-color:plum" | [[#SPI0_MOSI|SPI0_MOSI]] || style="background-color:royalblue" | [[#RXD1|RXD1]] || ||
+
| <div id="GPIO41">GPIO41</div> || 1 || Low || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:royalblue" | [[#SDx|SD5]] || TE0 (?) || style="background-color:turquoise" | SD1_DAT5 || style="background-color:plum" | ''[[#SPI0_MOSI|SPI0_MOSI]]'' || style="background-color:royalblue" | [[#RXD1|RXD1]] || ||
 
|-
 
|-
 
| <div id="GPIO42">GPIO42</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue" | [[#SDx|SD6]] || TE1 (?) || style="background-color:turquoise" | SD1_DAT6 || style="background-color:plum" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:royalblue" | [[#RTS1|RTS1]] || ||
 
| <div id="GPIO42">GPIO42</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:royalblue" | [[#SDx|SD6]] || TE1 (?) || style="background-color:turquoise" | SD1_DAT6 || style="background-color:plum" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:royalblue" | [[#RTS1|RTS1]] || ||
 
|-
 
|-
| <div id="GPIO43">GPIO43</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue" | [[#SDx|SD7]] || TE2 (?) || style="background-color:turquoise" | SD1_DAT7 || style="background-color:plum" | [[#SPI0_CEx_N|SPI0_CE0_N]] || style="background-color:royalblue" | [[#CTS1|CTS1]] || ||
+
| <div id="GPIO43">GPIO43</div> || 1 || Low || style="background-color:turquoise" | [[#GPCLK2|GPCLK2]] || style="background-color:royalblue" | [[#SDx|SD7]] || TE2 (?) || style="background-color:turquoise" | SD1_DAT7 || style="background-color:plum" | ''[[#SPI0_CEx_N|SPI0_CE0_N]]'' || style="background-color:royalblue" | [[#CTS1|CTS1]] || ||
 
|-
 
|-
| <div id="GPIO44">GPIO44</div> || 1 || - || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:orange" | [[#SDA0|SDA0]] || style="background-color:magenta" | [[#SDA1|SDA1]] || TE0 (?) || style="background-color:plum" | [[#SPI0_CEx_N|SPI0_CE1_N]] || SD_CARD_VOLT || ||
+
| <div id="GPIO44">GPIO44</div> || 1 || - || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:orange" | [[#SDA0|SDA0]] || style="background-color:magenta" | [[#SDA1|SDA1]] || TE0 (?) || style="background-color:plum" | ''[[#SPI0_CEx_N|SPI0_CE1_N]]'' || ''SD_CARD_VOLT'' || ||
 
|-
 
|-
| <div id="GPIO45">GPIO45</div> || 1 || - || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:orange" | [[#SCL0|SCL0]] || style="background-color:magenta" | [[#SCL1|SCL1]] || TE1 (?) || style="background-color:plum" | [[#SPI0_CEx_N|SPI0_CE2_N]] || SD_CARD_PWR0 || ||
+
| <div id="GPIO45">GPIO45</div> || 1 || - || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:orange" | [[#SCL0|SCL0]] || style="background-color:magenta" | [[#SCL1|SCL1]] || TE1 (?) || style="background-color:plum" | ''[[#SPI0_CEx_N|SPI0_CE2_N]]'' || ''SD_CARD_PWR0'' || ||
 
|-
 
|-
| <div id="GPIO46">GPIO46</div> || 2 || High || style="background-color:orange" | [[#SDA0|SDA0]] || style="background-color:magenta" | [[#SDA1|SDA1]] || style="background-color:plum" | [[#SPI0_CEx_N|SPI0_CE0_N]] || style="background-color:darkolivegreen" | <internal> || || style="background-color:plum" | [[#SPI2_CE1_N|SPI2_CE1_N]] || ||
+
| <div id="GPIO46">GPIO46</div> || 2 || High || style="background-color:orange" | ''[[#SDA0|SDA0]]'' || style="background-color:magenta" | ''[[#SDA1|SDA1]]'' || style="background-color:plum" | ''[[#SPI0_CEx_N|SPI0_CE0_N]]'' || style="background-color:darkolivegreen" | <internal> || || style="background-color:plum" | ''[[#SPI2_CE1_N|SPI2_CE1_N]]'' || ||
 
|-
 
|-
| <div id="GPIO47">GPIO47</div> || 2 || High || style="background-color:orange" | [[#SCL0|SCL0]] || style="background-color:magenta" | [[#SCL1|SCL1]] || style="background-color:plum" | [[#SPI0_MISO|SPI0_MISO]] || style="background-color:darkolivegreen" | <internal> || || style="background-color:plum" | [[#SPI2_CE0_N|SPI2_CE0_N]] || ||
+
| <div id="GPIO47">GPIO47</div> || 2 || High || style="background-color:orange" | ''[[#SCL0|SCL0]]'' || style="background-color:magenta" | ''[[#SCL1|SCL1]]'' || style="background-color:plum" | ''[[#SPI0_MISO|SPI0_MISO]]'' || style="background-color:darkolivegreen" | <internal> || || style="background-color:plum" | ''[[#SPI2_CE0_N|SPI2_CE0_N]]'' || ||
 
|-
 
|-
| <div id="GPIO48">GPIO48</div> || 2 || High || style="background-color:turquoise" | SD0_CLK || || style="background-color:plum" | [[#SPI0_MOSI|SPI0_MOSI]] || style="background-color:turquoise" | SD1_CLK || style="background-color:silver" | [[#ARM_TRST|ARM_TRST]] || style="background-color:plum" | [[#SPI2_SCLK|SPI2_SCLK]] || ||
+
| <div id="GPIO48">GPIO48</div> || 2 || High || style="background-color:turquoise" | SD0_CLK || || style="background-color:plum" | ''[[#SPI0_MOSI|SPI0_MOSI]]'' || style="background-color:turquoise" | SD1_CLK || style="background-color:silver" | ''[[#ARM_TRST|ARM_TRST]]'' || style="background-color:plum" | ''[[#SPI2_SCLK|SPI2_SCLK]]'' || ||
 
|-
 
|-
| <div id="GPIO49">GPIO49</div> || 2 || High || style="background-color:turquoise" | SD0_CMD || style="background-color:turquoise" | [[#GPCLK0|GPCLK0]] || style="background-color:plum" | [[#SPI0_SCLK|SPI0_SCLK]] || style="background-color:turquoise" | SD1_CMD || style="background-color:silver" | [[#ARM_RTCK|ARM_RTCK]] || style="background-color:plum" | [[#SPI2_MOSI|SPI2_MOSI]] || ||
+
| <div id="GPIO49">GPIO49</div> || 2 || High || style="background-color:turquoise" | SD0_CMD || style="background-color:turquoise" | ''[[#GPCLK0|GPCLK0]]'' || style="background-color:plum" | ''[[#SPI0_SCLK|SPI0_SCLK]]'' || style="background-color:turquoise" | SD1_CMD || style="background-color:silver" | ''[[#ARM_RTCK|ARM_RTCK]]'' || style="background-color:plum" | ''[[#SPI2_MOSI|SPI2_MOSI]]'' || ||
 
|-
 
|-
| <div id="GPIO50">GPIO50</div> || 2 || High || style="background-color:turquoise" | SD0_DAT0 || style="background-color:turquoise" | [[#GPCLK1|GPCLK1]] || style="background-color:lawngreen" | [[#PCM_CLK|PCM_CLK]] || style="background-color:turquoise" | SD1_DAT0 || style="background-color:silver" | [[#ARM_TDO|ARM_TDO]] || style="background-color:plum" | [[#SPI2_MISO|SPI2_MISO]] || ||
+
| <div id="GPIO50">GPIO50</div> || 2 || High || style="background-color:turquoise" | SD0_DAT0 || style="background-color:turquoise" | ''[[#GPCLK1|GPCLK1]]'' || style="background-color:lawngreen" | ''[[#PCM_CLK|PCM_CLK]]'' || style="background-color:turquoise" | SD1_DAT0 || style="background-color:silver" | ''[[#ARM_TDO|ARM_TDO]]'' || style="background-color:plum" | ''[[#SPI2_MISO|SPI2_MISO]]'' || ||
 
|-
 
|-
| <div id="GPIO51">GPIO51</div> || 2 || High || style="background-color:turquoise" | SD0_DAT1 || style="background-color:turquoise" | [[#GPCLK2|GPCLK2]] || style="background-color:lawngreen" | [[#PCM_FS|PCM_FS]] || style="background-color:turquoise" | SD1_DAT1 || style="background-color:silver" | [[#ARM_TCK|ARM_TCK]] || SD_CARD_LED || ||
+
| <div id="GPIO51">GPIO51</div> || 2 || High || style="background-color:turquoise" | SD0_DAT1 || style="background-color:turquoise" | ''[[#GPCLK2|GPCLK2]]'' || style="background-color:lawngreen" | ''[[#PCM_FS|PCM_FS]]'' || style="background-color:turquoise" | SD1_DAT1 || style="background-color:silver" | ''[[#ARM_TCK|ARM_TCK]]'' || ''SD_CARD_LED'' || ||
 
|-
 
|-
| <div id="GPIO52">GPIO52</div> || 2 || High || style="background-color:turquoise" | SD0_DAT2 || style="background-color:lightblue" | [[#PWM0|PWM0]] || style="background-color:lawngreen" | [[#PCM_DIN|PCM_DIN]] || style="background-color:turquoise" | SD1_DAT2 || style="background-color:silver" | [[#ARM_TDI|ARM_TDI]] || || ||
+
| <div id="GPIO52">GPIO52</div> || 2 || High || style="background-color:turquoise" | SD0_DAT2 || style="background-color:lightblue" | ''[[#PWM0|PWM0]]'' || style="background-color:lawngreen" | ''[[#PCM_DIN|PCM_DIN]]'' || style="background-color:turquoise" | SD1_DAT2 || style="background-color:silver" | ''[[#ARM_TDI|ARM_TDI]]'' || || ||
 
|-
 
|-
| <div id="GPIO53">GPIO53</div> || 2 || High || style="background-color:turquoise" | SD0_DAT3 || style="background-color:lightblue" | [[#PWM1|PWM1]] || style="background-color:lawngreen" | [[#PCM_DOUT|PCM_DOUT]] || style="background-color:turquoise" | SD1_DAT3 || style="background-color:silver" | [[#ARM_TMS|ARM_TMS]] || || ||
+
| <div id="GPIO53">GPIO53</div> || 2 || High || style="background-color:turquoise" | SD0_DAT3 || style="background-color:lightblue" | ''[[#PWM1|PWM1]]'' || style="background-color:lawngreen" | ''[[#PCM_DOUT|PCM_DOUT]]'' || style="background-color:turquoise" | SD1_DAT3 || style="background-color:silver" | ''[[#ARM_TMS|ARM_TMS]]'' || || ||
 
|-
 
|-
 
! 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" | RPi4 signal name !! style="background-color:yellow" | RPi4 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" | RPi4 signal name !! style="background-color:yellow" | RPi4 connection
Line 224: Line 226:
 
| style="background-color:royalblue;color:white" | <div id="SDx">SDx</div> || Secondary mem. data bus || Secondary Memory Interface || many || smi
 
| 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="I2CSL_SDA_MOSI">I2CSL SDA / MOSI</div> || I2C slave Data, SPI slave MOSI || BSC/SPI slave || [[#GPIO10|GPIO10]]''' || i2c_slave
+
| style="background-color:maroon;color:white" | <div id="I2CSL_SDA_MOSI">I2CSL SDA / MOSI</div> || I2C slave Data, SPI slave MOSI || BSC/SPI slave || [[#GPIO10|GPIO10]] || i2c_slave
 
|-
 
|-
 
| style="background-color:maroon;color:white" | <div id="I2CSL_SCL_SCLK">I2CSL SCL / SCLK</div> || I2C slave Clock, SPI slave clock || BSC/SPI slave || [[#GPIO11|GPIO11]] || i2c_slave
 
| style="background-color:maroon;color:white" | <div id="I2CSL_SCL_SCLK">I2CSL SCL / SCLK</div> || I2C slave Clock, SPI slave clock || BSC/SPI slave || [[#GPIO11|GPIO11]] || i2c_slave

Revision as of 05:46, 28 June 2019


Back to RPi_Low-level_peripherals

BCM2711 GPIO functions

This page was cloned from RPi BCM2835 GPIOs, incorporating information from raspi-gpio. All is nicely hyperlinked together and cross-referenced so that clicking on a function name will automatically take you to the description of that function.
(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.

Changes from Raspberry Pi 3 are shown in italics.

GPIO Pins Alternative Function Assignment

Bank Pull ALT0 ALT1 ALT2 ALT3 ALT4 ALT5 RPi4 signal name RPi4 connection
GPIO0
0 High SDA0 SA5 PCLK SPI3_CE0_N TXD2 SDA6 J8-27 (ID_SD)
GPIO1
0 High SCL0 SA4 DE SPI3_MISO RXD2 SCL6 J8-28 (ID_SC)
GPIO2
0 High SDA1 SA3 LCD_VSYNC SPI3_MOSI CTS2 SDA3 J8-03
GPIO3
0 High SCL1 SA2 LCD_HSYNC SPI3_SCLK RTS2 SCL3 J8-05
GPIO4
0 High GPCLK0 SA1 DPI_D0 SPI4_CE0_N TXD3 SDA3 J8-07
GPIO5
0 High GPCLK1 SA0 DPI_D1 SPI4_MISO RXD3 SCL3 J8-29
GPIO6
0 High GPCLK2 SOE_N / SE DPI_D2 SPI4_MOSI CTS3 SDA4 J8-31
GPIO7
0 High SPI0_CE1_N SWE_N / SRW_N DPI_D3 SPI4_SCLK RTS3 SCL4 J8-26
GPIO8
0 High SPI0_CE0_N SD0 DPI_D4 I2CSL CE_N TXD4 SDA4 J8-24
GPIO9
0 Low SPI0_MISO SD1 DPI_D5 I2CSL SDI / MISO RXD4 SCL4 J8-21
GPIO10
0 Low SPI0_MOSI SD2 DPI_D6 I2CSL SDA / MOSI CTS4 SDA5 J8-19
GPIO11
0 Low SPI0_SCLK SD3 DPI_D7 I2CSL SCL / SCLK RTS4 SCL5 J8-23
GPIO12
0 Low PWM0 SD4 DPI_D8 SPI5_CE0_N TXD5 SDA5 J8-32
GPIO13
0 Low PWM1 SD5 DPI_D9 SPI5_MISO RXD5 SCL5 J8-33
GPIO14
0 Low TXD0 SD6 DPI_D10 SPI5_MOSI CTS5 TXD1 J8-08
GPIO15
0 Low RXD0 SD7 DPI_D11 SPI5_SCLK RTS5 RXD1 J8-10
GPIO16
0 Low FL0 (?) SD8 DPI_D12 CTS0 SPI1_CE2_N CTS1 J8-36
GPIO17
0 Low FL1 (?) SD9 DPI_D13 RTS0 SPI1_CE1_N RTS1 J8-11
GPIO18
0 Low PCM_CLK SD10 DPI_D14 SPI6_CE0_N SPI1_CE0_N PWM0 J8-12
GPIO19
0 Low PCM_FS SD11 DPI_D15 SPI6_MISO SPI1_MISO PWM1 J8-35
GPIO20
0 Low PCM_DIN SD12 DPI_D16 SPI6_MOSI SPI1_MOSI GPCLK0 J8-38
GPIO21
0 Low PCM_DOUT SD13 DPI_D17 SPI6_SCLK SPI1_SCLK GPCLK1 J8-40
GPIO22
0 Low SD0_CLK SD14 DPI_D18 SD1_CLK ARM_TRST SDA6 J8-15
GPIO23
0 Low SD0_CMD SD15 DPI_D19 SD1_CMD ARM_RTCK SCL6 J8-16
GPIO24
0 Low SD0_DAT0 SD16 DPI_D20 SD1_DAT0 ARM_TDO SPI3_CE1_N J8-18
GPIO25
0 Low SD0_DAT1 SD17 DPI_D21 SD1_DAT1 ARM_TCK SPI4_CE1_N J8-22
GPIO26
0 Low SD0_DAT2 TE0 (?) DPI_D22 SD1_DAT2 ARM_TDI SPI5_CE1_N J8-37
GPIO27
0 Low SD0_DAT3 TE1 (?) DPI_D23 SD1_DAT3 ARM_TMS SPI6_CE1_N J8-13
GPIO28
1 - SDA0 SA5 PCM_CLK FL0 (?) MII_A_RX_ERR RGMII_MDIO
GPIO29
1 - SCL0 SA4 PCM_FS FL1 (?) MII_A_TX_ERR RGMII_MDC
GPIO30
1 Low TE0 (?) SA3 PCM_DIN CTS0 MII_A_CRS CTS1
GPIO31
1 Low FL0 (?) SA2 PCM_DOUT RTS0 MII_A_COL RTS1
GPIO32
1 Low GPCLK0 SA1 RING_OCLK (?) TXD0 SD_CARD_PRES TXD1
GPIO33
1 Low FL1 (?) SA0 TE1 (?) RXD0 SD_CARD_WRPROT RXD1
GPIO34
1 High GPCLK0 SOE_N / SE TE2 (?) SD1_CLK SD_CARD_LED RGMII_IRQ
GPIO35
1 High SPI0_CE1_N SWE_N / SRW_N SD1_CMD RGMII_START_STOP
GPIO36
1 High SPI0_CE0_N SD0 TXD0 SD1_DAT0 RGMII_RX_OK MII_A_RX_ERR
GPIO37
1 Low SPI0_MISO SD1 RXD0 SD1_DAT1 RGMII_MDIO MII_A_TX_ERR
GPIO38
1 Low SPI0_MOSI SD2 RTS0 SD1_DAT2 RGMII_MDC MII_A_CRS
GPIO39
1 Low SPI0_SCLK SD3 CTS0 SD1_DAT3 RGMII_IRQ MII_A_COL
GPIO40
1 Low PWM0 SD4 SD1_DAT4 SPI0_MISO TXD1
GPIO41
1 Low PWM1 SD5 TE0 (?) SD1_DAT5 SPI0_MOSI RXD1
GPIO42
1 Low GPCLK1 SD6 TE1 (?) SD1_DAT6 SPI0_SCLK RTS1
GPIO43
1 Low GPCLK2 SD7 TE2 (?) SD1_DAT7 SPI0_CE0_N CTS1
GPIO44
1 - GPCLK1 SDA0 SDA1 TE0 (?) SPI0_CE1_N SD_CARD_VOLT
GPIO45
1 - PWM1 SCL0 SCL1 TE1 (?) SPI0_CE2_N SD_CARD_PWR0
GPIO46
2 High SDA0 SDA1 SPI0_CE0_N <internal> SPI2_CE1_N
GPIO47
2 High SCL0 SCL1 SPI0_MISO <internal> SPI2_CE0_N
GPIO48
2 High SD0_CLK SPI0_MOSI SD1_CLK ARM_TRST SPI2_SCLK
GPIO49
2 High SD0_CMD GPCLK0 SPI0_SCLK SD1_CMD ARM_RTCK SPI2_MOSI
GPIO50
2 High SD0_DAT0 GPCLK1 PCM_CLK SD1_DAT0 ARM_TDO SPI2_MISO
GPIO51
2 High SD0_DAT1 GPCLK2 PCM_FS SD1_DAT1 ARM_TCK SD_CARD_LED
GPIO52
2 High SD0_DAT2 PWM0 PCM_DIN SD1_DAT2 ARM_TDI
GPIO53
2 High SD0_DAT3 PWM1 PCM_DOUT SD1_DAT3 ARM_TMS
Bank Pull ALT0 ALT1 ALT2 ALT3 ALT4 ALT5 RPi4 signal name RPi4 connection

Special function legend:

Name Function Datasheet section GPIOs DeviceTree 'function'
SDA0
BSC master 0 data line BSC GPIO0 GPIO28 GPIO44 GPIO46 i2c0
SCL0
BSC master 0 clock line BSC GPIO1 GPIO29 GPIO45 GPIO47 i2c0
SDA1
BSC master 1 data line BSC GPIO2 GPIO44 GPIO46 i2c1
SCL1
BSC master 1 clock line BSC GPIO3 GPIO45 GPIO47 i2c1
GPCLK0
General purpose Clock 0 <TBD> GPIO4 GPIO20 GPIO32 GPIO34 GPIO49 gp_clk
GPCLK1
General purpose Clock 1 <TBD> GPIO5 GPIO21 GPIO42 GPIO44 GPIO50 gp_clk
GPCLK2
General purpose Clock 2 <TBD> GPIO6 GPIO43 GPIO51 gp_clk
SPI0_CE0_N
SPI0 Chip select 0 SPI GPIO8 GPIO36 GPIO43 GPIO46 spi0
SPI0_CE1_N
SPI0 Chip select 1 SPI GPIO7 GPIO35 GPIO44 spi0
SPI0_CE2_N
SPI0 Chip select 2 SPI GPIO45 spi0
SPI0_MISO
SPI0 MISO SPI GPIO9 GPIO37 GPIO40 GPIO47 spi
SPI0_MOSI
SPI0 MOSI SPI GPIO10 GPIO38 GPIO41 GPIO48 spi
SPI0_SCLK
SPI0 Serial clock SPI GPIO11 GPIO39 GPIO42 GPIO49 spi
PWM0
Pulse Width Modulator 0 Pulse Width Modulator GPIO12 GPIO18 GPIO40 GPIO52 pwm0
PWM1
Pulse Width Modulator 1 Pulse Width Modulator GPIO13 GPIO19 GPIO41 GPIO45 GPIO53 pwm1
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
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
TXD2
UART 2 Transmit Data UART GPIO0 uart2
RXD2
UART 2 Receive Data UART GPIO1 uart2
CTS2
UART 2 Clear To Send UART GPIO3 uart2
RTS2
UART 2 Request To Send UART GPIO3 uart2
TXD3
UART 3 Transmit Data Auxiliary I/O GPIO4 uart3
RXD3
UART 3 Receive Data Auxiliary I/O GPIO5 uart3
CTS3
UART 3 Clear To Send Auxiliary I/O GPIO6 uart3
RTS3
UART 3 Request To Send Auxiliary I/O GPIO7 uart3
TXD4
UART 4 Transmit Data UART GPIO8 uart4
RXD4
UART 4 Receive Data UART GPIO9 uart4
CTS4
UART 4 Clear To Send UART GPIO10 uart4
RTS4
UART 4 Request To Send UART GPIO11 uart4
TXD5
UART 5 Transmit Data Auxiliary I/O GPIO12 uart5
RXD5
UART 5 Receive Data Auxiliary I/O GPIO13 uart5
CTS5
UART 5 Clear To Send Auxiliary I/O GPIO14 uart5
RTS5
UART 5 Request To Send Auxiliary I/O GPIO14 uart5
PCM_CLK
PCM clock PCM Audio GPIO18 GPIO28 GPIO50 pcm
PCM_FS
PCM Frame Sync PCM Audio GPIO19 GPIO29 GPIO51 pcm
PCM_DIN
PCM Data in PCM Audio GPIO20 GPIO30 GPIO52 pcm
PCM_DOUT
PCM data out PCM Audio GPIO21 GPIO31 GPIO53 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
I2CSL SDA / MOSI
I2C slave Data, SPI slave MOSI BSC/SPI slave GPIO10 i2c_slave
I2CSL SCL / SCLK
I2C slave Clock, SPI slave clock BSC/SPI slave GPIO11 i2c_slave
I2CSL SDI / MISO
I2C slave ???, SPI slave MISO BSC/SPI slave GPIO9 i2c_slave
I2CSL CE_N
I2C slave <not used>, SPI slave Chip Select BSC/SPI slave GPIO8 i2c_slave
SPI1_CE0_N
SPI1 Chip select 0 Auxiliary I/O GPIO18 spi1
SPI1_CE1_N
SPI1 Chip select 1 Auxiliary I/O GPIO17 spi1
SPI1_CE2_N
SPI1 Chip select 2 Auxiliary I/O 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
SPI2_CE0_N
SPI2 Chip select 0 Auxiliary I/O GPIO47 spi2
SPI2_CE1_N
SPI2 Chip select 1 Auxiliary I/O GPIO46 spi2
SPI2_MISO
SPI2 MISO Auxiliary I/O GPIO50 spi2
SPI2_MOSI
SPI2 MOSI Auxiliary I/O GPIO49 spi2
SPI2_SCLK
SPI2 Serial clock Auxiliary I/O GPIO48 spi2
ARM_TRST
ARM JTAG reset <TBD> GPIO22 GPIO48 arm_jtag
ARM_RTCK
ARM JTAG return clock <TBD> GPIO6 GPIO23 GPIO49 arm_jtag
ARM_TDO
ARM JTAG Data out <TBD> GPIO4 GPIO24 GPIO50 arm_jtag
ARM_TCK
ARM JTAG Clock <TBD> GPIO13 GPIO25 GPIO51 arm_jtag
ARM_TDI
ARM JTAG Data in <TBD> GPIO4 GPIO26 GPIO52 arm_jtag
ARM_TMS
ARM JTAG Mode select <TBD> GPIO12 GPIO27 GPIO53 arm_jtag
PCLK
DPI Pixel Clock Parallel Display Interface GPIO0 dpi
DE
DPI Data Enable Parallel Display Interface GPIO1 dpi
LCD_VSYNC
DPI Vertical Sync Parallel Display Interface GPIO2 dpi
LCD_HSYNC
DPI Horizontal Sync Parallel Display Interface GPIO3 dpi
DPI_Dx
DPI Parallel Data Parallel Display Interface many dpi
Name Function Datasheet section GPIOs DeviceTree 'function'