Difference between revisions of "Supported Hardware"

From Ultibo.org
Jump to: navigation, search
 
(45 intermediate revisions by the same user not shown)
Line 10: Line 10:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| DMA
 
| DMA
 
| DMA controller
 
| DMA controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| GPIO
 
| GPIO
 
| GPIO controller
 
| GPIO controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
| MMC
+
| SDHCI
 +
| eMMC/SD/SDIO host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Primary eMMC/SD controller
 +
| [[Unit_BCM2708|BCM2708]]
 +
 
 +
|-
 +
| SDHOST
 
| eMMC/SD host controller
 
| eMMC/SD host controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
|  
+
| Secondary eMMC/SD controller
 +
| [[Unit_BCMSDHOST|BCMSDHOST]]
  
 
|-
 
|-
 
| USB
 
| USB
 
| DWCOTG host controller
 
| DWCOTG host controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_DWCOTG|DWCOTG]]
  
 
|-
 
|-
 
| IRQ
 
| IRQ
 
| Interrupt controller
 
| Interrupt controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
| FIQ
 
| FIQ
 
| Interrupt controller
 
| Interrupt controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
| Timer
 
| Timer
 
| System timer
 
| System timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 
|  
 
|  
| Used internally by Ultibo core
 
  
 
|-
 
|-
 
| ARM Timer
 
| ARM Timer
| ARM Timer
+
| ARM SP804 Timer
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| UART0
 
| UART0
 
| PL011 UART device
 
| PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| UART1
 
| UART1
 
| Mini (AUX) UART device
 
| Mini (AUX) UART device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 74: Line 92:
 
| BSC0
 
| BSC0
 
| I2C controller
 
| I2C controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| BSC1
 
| BSC1
 
| I2C controller
 
| I2C controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
 +
 +
|-
 +
| BSC2
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Dedicated to the HDMI interface
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| SPI0
 
| SPI0
 
| SPI master device
 
| SPI master device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| SPI1
 
| SPI1
 
| AUX SPI master device
 
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 98: Line 127:
 
| SPI2
 
| SPI2
 
| AUX SPI master device
 
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 104: Line 134:
 
| PCM/I2S
 
| PCM/I2S
 
| PCM/I2S audio controller
 
| PCM/I2S audio controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 110: Line 141:
 
| SPI Slave
 
| SPI Slave
 
| SPI slave device
 
| SPI slave device
|  
+
| style="background-color: red; color: #ffffff;"|Not planned
 +
| Device is faulty
 
|  
 
|  
  
Line 116: Line 148:
 
| BSC Slave
 
| BSC Slave
 
| I2C slave device
 
| I2C slave device
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
|  
+
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| PWM
 
| PWM
 
| PWM controller
 
| PWM controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| PWM Audio
 
| PWM Audio
 
| PWM audio output
 
| PWM audio output
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
 +
 +
|-
 +
| Random
 +
| Random Number Generator
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2708|BCM2708]]
 +
 +
|-
 +
| Watchdog
 +
| Watchdog Timer
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2708|BCM2708]]
  
 
|-
 
|-
 
| USB OTG
 
| USB OTG
 
| USB On-The-Go mode
 
| USB On-The-Go mode
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| A/A+/Zero/ZeroW/CM1 only
 
|  
 
|  
| A/A+/Zero/ZeroW only
 
  
 
|-
 
|-
 
| WiFi
 
| WiFi
 
| BCM43438 WiFi controller
 
| BCM43438 WiFi controller
|  
+
| style="background-color: magenta; color: #ffffff;"|In progress
 
| ZeroW only
 
| ZeroW only
 +
|
  
 
|-
 
|-
 
| Bluetooth
 
| Bluetooth
 
| BCM43438 Bluetooth host
 
| BCM43438 Bluetooth host
|  
+
| style="background-color: orange; color: #ffffff;"|Planned
 
| ZeroW only
 
| ZeroW only
 +
|
  
 
|-
 
|-
 
| LAN
 
| LAN
 
| SMSC LAN9512/14 network
 
| SMSC LAN9512/14 network
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| B/B+ only
 
| B/B+ only
 +
| [[Unit_SMSC95XX|SMSC95XX]]
  
 
|-
 
|-
 
| Firmware
 
| Firmware
 
| Mailbox
 
| Mailbox
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Clock (On/Off/Rate/Min/Max)
 
| Clock (On/Off/Rate/Min/Max)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Power (On/Off)
 
| Power (On/Off)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Voltage (Value/Min/Max)
 
| Voltage (Value/Min/Max)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Temperature
 
| Temperature
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
| VC4 GPU
 
| VC4 GPU
 
| Framebuffer
 
| Framebuffer
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2708|BCM2708]]
 +
 
 +
|-
 +
|
 +
| DispmanX
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 
|  
 
|  
  
Line 194: Line 260:
 
|  
 
|  
 
| OpenGLES
 
| OpenGLES
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 200: Line 267:
 
|  
 
|  
 
| OpenMAX
 
| OpenMAX
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 206: Line 274:
 
|  
 
|  
 
| MMAL
 
| MMAL
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 212: Line 281:
 
|  
 
|  
 
| OpenVG
 
| OpenVG
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
|  
+
| [[Unit_OpenVG|OpenVG]]
  
 
|-
 
|-
 
|  
 
|  
 
| VCHIQ
 
| VCHIQ
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_VC4VCHIQ|VC4VCHIQ]]
 +
 +
|-
 
|  
 
|  
 +
| HDMI CEC
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
|
 +
| GENCMD
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Firmware information and diagnostics
 +
|
 +
 +
|-
 +
| LEDs
 +
| Power and Activity
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Not available on Zero/ZeroW
 +
| [[Unit_Platform|Platform]]
  
 
|}
 
|}
  
==== Raspberry Pi 2B/3B/CM3 ====
+
==== Raspberry Pi 2B/3B/CM3/3B+/3A+/CM3+/Zero2W ====
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 230: Line 322:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| DMA
 
| DMA
 
| DMA controller
 
| DMA controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| GPIO
 
| GPIO
 
| GPIO controller
 
| GPIO controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
| MMC
+
| SDHCI
 +
| eMMC/SD/SDIO host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Primary eMMC/SD controller
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
 +
 
 +
|-
 +
| SDHOST
 
| eMMC/SD host controller
 
| eMMC/SD host controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
|  
+
| Secondary eMMC/SD controller
 +
| [[Unit_BCMSDHOST|BCMSDHOST]]
  
 
|-
 
|-
 
| USB
 
| USB
 
| DWCOTG host controller
 
| DWCOTG host controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_DWCOTG|DWCOTG]]
  
 
|-
 
|-
 
| IRQ
 
| IRQ
 
| Interrupt controller
 
| Interrupt controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
| FIQ
 
| FIQ
 
| Interrupt controller
 
| Interrupt controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
| Timer
 
| Timer
 
| System timer
 
| System timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 
|  
 
|  
| Used internally by Ultibo core
 
  
 
|-
 
|-
 
| ARM Timer
 
| ARM Timer
| ARM Timer
+
| ARM SP804 Timer
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| Local Timer
 
| Local Timer
 
| Local peripheral timer
 
| Local peripheral timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 288: Line 397:
 
| Local Mailbox
 
| Local Mailbox
 
| Inter processor mailboxes
 
| Inter processor mailboxes
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 294: Line 404:
 
| Generic Timer
 
| Generic Timer
 
| ARM generic timer
 
| ARM generic timer
|  
+
| style="background-color: orange; color: #ffffff;"|Planned
 
| Used internally by Ultibo core
 
| Used internally by Ultibo core
 +
|
  
 
|-
 
|-
 
| UART0
 
| UART0
 
| PL011 UART device
 
| PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| UART1
 
| UART1
 
| Mini (AUX) UART device
 
| Mini (AUX) UART device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 312: Line 425:
 
| BSC0
 
| BSC0
 
| I2C controller
 
| I2C controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| BSC1
 
| BSC1
 
| I2C controller
 
| I2C controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
 +
 +
|-
 +
| BSC2
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Dedicated to the HDMI interface
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| SPI0
 
| SPI0
 
| SPI master device
 
| SPI master device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| SPI1
 
| SPI1
 
| AUX SPI master device
 
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 336: Line 460:
 
| SPI2
 
| SPI2
 
| AUX SPI master device
 
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 342: Line 467:
 
| PCM/I2S
 
| PCM/I2S
 
| PCM/I2S audio controller
 
| PCM/I2S audio controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 348: Line 474:
 
| SPI Slave
 
| SPI Slave
 
| SPI slave device
 
| SPI slave device
|  
+
| style="background-color: red; color: #ffffff;"|Not planned
 +
| Device is faulty
 
|  
 
|  
  
Line 354: Line 481:
 
| BSC Slave
 
| BSC Slave
 
| I2C slave device
 
| I2C slave device
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
|  
+
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| PWM
 
| PWM
 
| PWM controller
 
| PWM controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
  
 
|-
 
|-
 
| PWM Audio
 
| PWM Audio
 
| PWM audio output
 
| PWM audio output
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 
|  
 
|  
 +
 +
|-
 +
| Random
 +
| Random Number Generator
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
 +
 +
|-
 +
| Watchdog
 +
| Watchdog Timer
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
 +
 +
|-
 +
| USB OTG
 +
| USB On-The-Go mode
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| CM3 only
 
|  
 
|  
  
Line 372: Line 523:
 
| WiFi
 
| WiFi
 
| BCM43438 WiFi controller
 
| BCM43438 WiFi controller
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
| 3B/3B+/3A+/Zero2W only
 
|  
 
|  
| 3B/CM3 only
 
  
 
|-
 
|-
 
| Bluetooth
 
| Bluetooth
 
| BCM43438 Bluetooth host
 
| BCM43438 Bluetooth host
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| 3B/3B+/3A+/Zero2W only
 
|  
 
|  
| 3B/CM3 only
 
  
 
|-
 
|-
 
| LAN
 
| LAN
 
| SMSC LAN9514 network
 
| SMSC LAN9514 network
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_SMSC95XX|SMSC95XX]]
 +
 +
|-
 +
|
 +
| Microchip LAN78XX network
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| 3B+ only
 +
| [[Unit_LAN78XX|LAN78XX]]
  
 
|-
 
|-
 
| Firmware
 
| Firmware
 
| Mailbox
 
| Mailbox
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Clock (On/Off/Rate/Min/Max)
 
| Clock (On/Off/Rate/Min/Max)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Power (On/Off)
 
| Power (On/Off)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Voltage (Value/Min/Max)
 
| Voltage (Value/Min/Max)
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
  
 
|-
 
|-
 
|  
 
|  
 
| Temperature
 
| Temperature
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Virtual GPIO
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| 3B/CM3/3B+/3A+/CM3+ only
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| GPIO Expander
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| 3B/CM3/3B+/3A+/CM3+ only
 +
| [[Unit_Platform|Platform]] / [[Unit_RPIGPIOEXPANDER|RPiGPIOExpander]]
  
 
|-
 
|-
 
| VC4 GPU
 
| VC4 GPU
 
| Framebuffer
 
| Framebuffer
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2709|BCM2709]] / [[Unit_BCM2710|BCM2710]]
 +
 
 +
|-
 +
|
 +
| DispmanX
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 
|  
 
|  
  
Line 426: Line 614:
 
|  
 
|  
 
| OpenGLES
 
| OpenGLES
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 432: Line 621:
 
|  
 
|  
 
| OpenMAX
 
| OpenMAX
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 438: Line 628:
 
|  
 
|  
 
| MMAL
 
| MMAL
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 
|  
 
|  
Line 444: Line 635:
 
|  
 
|  
 
| OpenVG
 
| OpenVG
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_OpenVG|OpenVG]]
 +
 +
|-
 
|  
 
|  
 +
| VCHIQ
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_VC4VCHIQ|VC4VCHIQ]]
 +
 +
|-
 +
|
 +
| HDMI CEC
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
|
 +
| GENCMD
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Firmware information and diagnostics
 +
|
 +
 +
|-
 +
| LEDs
 +
| Power and Activity
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Requires RPiGPIOExpander unit for 3B/3B+/3A+
 +
| [[Unit_Platform|Platform]]
 +
 +
|}
 +
 +
==== Raspberry Pi 4B/400/CM4 ====
 +
 +
{| class="wikitable"
 +
! style="text-align:left;"| Peripheral
 +
! style="text-align:left;"| Type
 +
! style="text-align:left;"| Status
 +
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
 +
 +
|-
 +
| DMA
 +
| DMA controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Includes DMA 40-bit channel support
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| GPIO
 +
| GPIO controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| MMC0
 +
| eMMC/SD/SDIO host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| MMC1
 +
| eMMC/SD host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCMSDHOST|BCMSDHOST]]
 +
 +
|-
 +
| MMC2
 +
| eMMC/SD host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| USB
 +
| DWCOTG host controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Available on USB-C port only
 +
| [[Unit_DWCOTG|DWCOTG]]
 +
 +
|-
 +
| USB
 +
| XHCI host controller
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
|
 +
| [[Unit_XHCI|XHCI]]
 +
 +
|-
 +
| PCIe
 +
| PCIe host controller
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
|
 +
| [[Unit_BRCMSTBPCIE|BRCMSTBPCIE]]
 +
 +
|-
 +
| IRQ
 +
| Interrupt controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
| FIQ
 +
| Interrupt controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
| IPI
 +
| Software interrupt
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
| LPAE
 +
| Large Physical Address Extension
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
| Timer
 +
| System timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 +
|
 +
 +
|-
 +
| ARM Timer
 +
| ARM SP804 Timer
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| Local Timer
 +
| Local peripheral timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| Local Mailbox
 +
| Inter processor mailboxes
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| Generic Timer
 +
| ARM generic timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 +
|
 +
 +
|-
 +
| UART0
 +
| PL011 UART device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| UART1
 +
| Mini (AUX) UART device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| UART2
 +
| PL011 UART device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| UART3
 +
| PL011 UART device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| UART4
 +
| PL011 UART device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| UART5
 +
| PL011 UART device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C0
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C1
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C2
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Dedicated to the HDMI interface
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C3
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C4
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C5
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C6
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| I2C7
 +
| I2C controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Dedicated to the HDMI interface
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| SPI0
 +
| SPI master device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| SPI1
 +
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| SPI2
 +
| AUX SPI master device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| SPI3
 +
| SPI master device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| SPI4
 +
| SPI master device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| SPI5
 +
| SPI master device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| SPI6
 +
| SPI master device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| PCM/I2S
 +
| PCM/I2S audio controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| SPI Slave
 +
| SPI slave device
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| I2C Slave
 +
| I2C slave device
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| PWM0
 +
| PWM controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| PWM1
 +
| PWM controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| PWM Audio
 +
| PWM audio output
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| RTC
 +
| Real time clock
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Included on CM4 IO board
 +
| [[Unit_PCF85063|PCF85063]]
 +
 +
|-
 +
| Random
 +
| Random Number Generator
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| Watchdog
 +
| Watchdog Timer
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
| USB OTG
 +
| DWCOTG USB On-The-Go mode
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
| [[Unit_DWCOTG|DWCOTG]]
 +
 +
|-
 +
| WiFi
 +
| BCM43438 WiFi controller
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
|
 +
|
 +
 +
|-
 +
| Bluetooth
 +
| BCM43438 Bluetooth host
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| LAN
 +
| Broadcom BCM54213PE
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_GENET|GENET]]
 +
 +
|-
 +
| Firmware
 +
| Mailbox
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Clock (On/Off/Rate/Min/Max)
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Power (On/Off)
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Voltage (Value/Min/Max)
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Temperature
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| Virtual GPIO
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 +
|-
 +
|
 +
| GPIO Expander
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]] / [[Unit_RPIGPIOEXPANDER|RPiGPIOExpander]]
 +
 +
|-
 +
| VC6 GPU
 +
| Framebuffer
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Includes multiple framebuffer support (HDMI/DSI/Composite)
 +
| [[Unit_BCM2711|BCM2711]]
 +
 +
|-
 +
|
 +
| DispmanX
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
|
 +
| OpenGLES
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
|
 +
| OpenMAX
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
|
 +
| MMAL
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
|
 +
| OpenVG
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
| [[Unit_OpenVG|OpenVG]]
  
 
|-
 
|-
 
|  
 
|  
 
| VCHIQ
 
| VCHIQ
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_VC4VCHIQ|VC4VCHIQ]]
 +
 +
|-
 
|  
 
|  
 +
| HDMI CEC
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
|
 +
| GENCMD
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Firmware information and diagnostics
 +
|
 +
 +
|-
 +
| LEDs
 +
| Power and Activity
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Requires RPiGPIOExpander unit for 4B/400/CM4
 +
| [[Unit_Platform|Platform]]
  
 
|}
 
|}
Line 462: Line 1,163:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| DMA
 
| DMA
 
| ARM PL080 DMA controller
 
| ARM PL080 DMA controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 472: Line 1,175:
 
| GPIO
 
| GPIO
 
| ARM PL061 GPIO controller
 
| ARM PL061 GPIO controller
 +
| style="background-color: red; color: #ffffff;"|Not planned
 
|  
 
|  
 
|  
 
|  
Line 478: Line 1,182:
 
| RTC
 
| RTC
 
| ARM PL031 Real time clock
 
| ARM PL031 Real time clock
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_PL031|PL031]]
 +
 
 +
|-
 +
| IRQ
 +
| PL190 Interrupt controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 
 +
|-
 +
| FIQ
 +
| PL190 Interrupt controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_Platform|Platform]]
 +
 
 +
|-
 +
| Timer0
 +
| ARM SP804 Timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 +
|
 +
 
 +
|-
 +
| Timer1
 +
| ARM SP804 Timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 
 +
|-
 +
| Timer2
 +
| ARM SP804 Timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Used internally by Ultibo core
 +
|
 +
 
 +
|-
 +
| Timer3
 +
| ARM SP804 Timer
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 
|  
 
|  
  
Line 484: Line 1,231:
 
| UART0
 
| UART0
 
| ARM PL011 UART device
 
| ARM PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL011|PL011]]
  
 
|-
 
|-
 
| UART1
 
| UART1
 
| ARM PL011 UART device
 
| ARM PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL011|PL011]]
  
 
|-
 
|-
 
| UART2
 
| UART2
 
| ARM PL011 UART device
 
| ARM PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL011|PL011]]
  
 
|-
 
|-
 
| UART3
 
| UART3
 
| ARM PL011 UART device
 
| ARM PL011 UART device
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL011|PL011]]
  
 
|-
 
|-
 
| MMC0
 
| MMC0
 
| ARM PL180 MMCI controller
 
| ARM PL180 MMCI controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
|  
+
| [[Unit_PL18X|PL18X]]
  
 
|-
 
|-
 
| MMC1
 
| MMC1
 
| ARM PL180 MMCI controller
 
| ARM PL180 MMCI controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
|
+
| [[Unit_PL18X|PL18X]]
  
 
|-
 
|-
 
| Framebuffer
 
| Framebuffer
 
| ARM PL110 LCD controller
 
| ARM PL110 LCD controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL110|PL110]]
  
 
|-
 
|-
 
| Keyboard
 
| Keyboard
 
| ARM PL050 PS/2 keyboard
 
| ARM PL050 PS/2 keyboard
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_PL050|PL050]]
  
 
|-
 
|-
 
| Mouse
 
| Mouse
| ARM PL011 UART device
+
| ARM PL050 PS/2 mouse
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
|
+
|  
 +
| [[Unit_PL050|PL050]]
  
 
|-
 
|-
 
| Audio
 
| Audio
 
| ARM PL041 Audio codec
 
| ARM PL041 Audio codec
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 544: Line 1,301:
 
| LAN
 
| LAN
 
| SMC LAN91C11 network
 
| SMC LAN91C11 network
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_SMC91X|SMC91X]]
  
 
|-
 
|-
 
| USB
 
| USB
 
| OHCI host controller
 
| OHCI host controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| PCI
 +
| PCI controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 +
|-
 +
| SCSI
 +
| SCSI controller
 +
| style="background-color: orange; color: #ffffff;"|Planned
 
|  
 
|  
 
|  
 
|  
Line 563: Line 1,336:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| Hub
 
| Hub
 
| USB Hub
 
| USB Hub
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_USB|USB]]
  
 
|-
 
|-
 
| Storage
 
| Storage
 
| USB Storage
 
| USB Storage
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_Storage|Storage]]
 +
 +
|-
 +
| HID
 +
| USB HID
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_HID|HID]] / [[Unit_USBHID|USBHID]]
  
 
|-
 
|-
 
| Mouse
 
| Mouse
 
| USB Mouse
 
| USB Mouse
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
| Boot mode only
+
| Full HID support
 +
| [[Unit_Mouse|Mouse]] / [[Unit_HIDMOUSE|HIDMouse]]
  
 
|-
 
|-
 
| Keyboard
 
| Keyboard
 
| USB Keyboard
 
| USB Keyboard
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
| Boot mode only
+
| Full HID support
 +
| [[Unit_Keyboard|Keyboard]] / [[Unit_HIDKEYBOARD|HIDKeyboard]]
 +
 
 +
|-
 +
| Gamepad
 +
| USB Gamepad
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Full HID support
 +
| [[Unit_Joystick|Joystick]] / [[Unit_HIDJOYSTICK|HIDJoystick]]
 +
 
 +
|-
 +
| Joystick
 +
| USB Joystick
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Full HID support
 +
| [[Unit_Joystick|Joystick]] / [[Unit_HIDJOYSTICK|HIDJoystick]]
 +
 
 +
|-
 +
| Touchscreen
 +
| USB Touchscreen
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Full HID support
 +
| [[Unit_Touch|Touch]] / [[Unit_HIDTOUCH|HIDTouch]]
 +
 
 +
|-
 +
| Audio
 +
| USB Audio
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
  
 
|-
 
|-
 
| CDCACM
 
| CDCACM
 
| USB CDC Serial
 
| USB CDC Serial
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
| Communications Device Class
+
| Supports newer Arduino models such as Mega 2560 R3 plus Micro:bit
 +
| [[Unit_USBCDCACM|USBCDCACM]]
 +
 
 +
|-
 +
| FTDI Serial
 +
| USB to Serial
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Supports a huge number of USB to serial adapters plus many earlier Arduino models
 +
| [[Unit_FTDISerial|FTDISerial]]
 +
 
 +
|-
 +
| PL2303
 +
| USB to Serial
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_PL2303|PL2303]]
 +
 
 +
|-
 +
| RT2800
 +
| USB Wireless
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 
 +
|-
 +
| RTL8188EU
 +
| USB Wireless
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 
 +
|-
 +
| RTL8192CU
 +
| USB Wireless
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
|
 +
|
 +
 
 +
|-
 +
| u-blox 7
 +
| GPS receiver
 +
| style="background-color: navy; color: #ffffff;"|Tested
 +
|
 +
| [[Unit_USBCDCACM|USBCDCACM]]
  
 
|}
 
|}
Line 604: Line 1,460:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| DS1307
 
| DS1307
 
| Real time clock
 
| Real time clock
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
|  
+
| Includes 1307/1337/1338/1339/1340/1388/3231
 +
| [[Unit_DS1307|DS1307]]
  
 
|-
 
|-
 
| MCP23008/MCP23017
 
| MCP23008/MCP23017
 
| I/O expander
 
| I/O expander
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_MCP230XX|MCP230XX]]
  
 
|-
 
|-
 
| STMPE
 
| STMPE
 
| I/O expander
 
| I/O expander
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Includes 610/801/811/1601/1801/2401
 
| Includes 610/801/811/1601/1801/2401
 +
| [[Unit_STMPE|STMPE]]
  
 
|-
 
|-
 
| STMPE
 
| STMPE
 
| Touch controller
 
| Touch controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Includes 610/811
 
| Includes 610/811
 +
| [[Unit_STMPE|STMPE]]
 +
 +
|-
 +
| PCF8574
 +
| I/O expander
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
| [[Unit_PCF857X|PCF857X]]
 +
 +
|-
 +
| PCF85063
 +
| Real time clock
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Includes PCF85063A/PCF85063TP
 +
| [[Unit_PCF85063|PCF85063]]
 +
 +
|-
 +
| FT5x06
 +
| Touch controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Includes FT5206/FT5306/FT5406/FT5506/FT6236
 +
| [[Unit_FT5x06Touch|FT5x06Touch]]
 +
 +
|-
 +
| GT9xx
 +
| Touch controller
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Includes GT911/GT912/GT927/GT928/GT967/GT1151...
 +
| [[Unit_GoodixTouch|GoodixTouch]]
  
 
|}
 
|}
Line 639: Line 1,528:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| ILI9340
 
| ILI9340
 
| TFT display
 
| TFT display
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_ILI9340|ILI9340]]
  
 
|-
 
|-
 
| HX8357D
 
| HX8357D
 
| TFT display
 
| TFT display
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_HX8357D|HX8357D]]
  
 
|-
 
|-
 
| PCD8544
 
| PCD8544
 
| LCD controller
 
| LCD controller
| Tested
+
| style="background-color: navy; color: #ffffff;"|Tested
 
| Example provided by Ronald Daleske
 
| Example provided by Ronald Daleske
 +
|
  
 
|-
 
|-
 
| STMPE
 
| STMPE
 
| I/O expander
 
| I/O expander
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Includes 610/801/811/1601/1801/2401
 
| Includes 610/801/811/1601/1801/2401
 +
| [[Unit_STMPE|STMPE]]
  
 
|-
 
|-
 
| STMPE
 
| STMPE
 
| Touch controller
 
| Touch controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Includes 610/811
 
| Includes 610/811
 +
| [[Unit_STMPE|STMPE]]
  
 
|-
 
|-
 
| dsPIC
 
| dsPIC
 
| Microcontroller
 
| Microcontroller
| Tested
+
| style="background-color: navy; color: #ffffff;"|Tested
 
| Tested by Jim Kueneman
 
| Tested by Jim Kueneman
 +
|
  
 
|}
 
|}
Line 686: Line 1,582:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| HD44780
 
| HD44780
 
| LCD controller
 
| LCD controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Use with GPIO or I/O expander
 
| Use with GPIO or I/O expander
 +
| [[Unit_HD44780|HD44780]]
  
 
|-
 
|-
 
| RPiFT5406
 
| RPiFT5406
 
| Touch controller
 
| Touch controller
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
|  
 
|  
 +
| [[Unit_RPIFT5406|RPIFT5406]]
  
 
|}
 
|}
Line 709: Line 1,608:
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Status
 
! style="text-align:left;"| Notes
 
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
  
 
|-
 
|-
 
| Adafuit PiTFT28
 
| Adafuit PiTFT28
 
| TFT display
 
| TFT display
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
| Uses ILI9340 / STMPE
+
| Uses ILI9340 / STMPE / FT5x06
 +
| [[Unit_PiTFT28|PiTFT28]]
  
 
|-
 
|-
 
| Adafuit PiTFT35
 
| Adafuit PiTFT35
 
| TFT display
 
| TFT display
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Uses HX8357D / STMPE
 
| Uses HX8357D / STMPE
 +
| [[Unit_PiTFT35|PiTFT35]]
 +
 
|-
 
|-
 
| Adafruit 16x2 LCD
 
| Adafruit 16x2 LCD
 
| LCD display
 
| LCD display
| Supported
+
| style="background-color: green; color: #ffffff;"|Supported
 
| Uses HD44780 / MCP23008
 
| Uses HD44780 / MCP23008
 +
| [[Unit_AF16x2LCD|AF16x2LCD]]
 +
 +
|-
 +
| Generic I2C LCD
 +
| LCD display
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Uses HD44780 / PCF8574
 +
| [[Unit_I2CLCD|I2CLCD]]
 +
 +
|-
 +
| Pimoroni HyperPixel
 +
| TFT display
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Square, Round and Rectangular displays supported including touch.
 +
| [[Unit_HyperPixel|HyperPixel]]
 +
 +
|}
 +
 +
=== Accessories ===
 +
----
 +
 +
{| class="wikitable"
 +
! style="text-align:left;"| Model
 +
! style="text-align:left;"| Type
 +
! style="text-align:left;"| Status
 +
! style="text-align:left;"| Notes
 +
! style="text-align:left;"| Unit
 +
 +
|-
 +
| Raspberry Pi Camera Module v1 & v2
 +
| Add-on board
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
| Raspberry Pi Camera Module v1 & v2 (NoIR)
 +
| Add-on board
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
|
 +
|
 +
 +
|-
 +
| Raspberry Pi Sense HAT
 +
| Add-on board
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
| LED matrix and joystick supported, Sensors in progress
 +
| [[Unit_RPISENSEHAT|RPISENSEHAT]]
 +
 +
|-
 +
| Raspberry Pi 7″ Touchscreen Display
 +
| Touchscreen
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Uses framebuffer driver from BCM2708/9/10
 +
| [[Unit_RPIFT5406|RPIFT5406]]
 +
 +
|}
 +
 +
=== Legend ===
 +
----
 +
 +
{| class="wikitable"
 +
! style="text-align:left;"| Status
 +
! style="text-align:left;"| Meaning
 +
 +
|-
 +
| style="background-color: green; color: #ffffff;"|Supported
 +
| Implemented and fully tested.
 +
 +
|-
 +
| style="background-color: magenta; color: #ffffff;"|In progress
 +
| Support for this device is in progress.
 +
 +
|-
 +
| style="background-color: orange; color: #ffffff;"|Planned
 +
| Support for this device is planned for a future release.
 +
 +
|-
 +
| style="background-color: red; color: #ffffff;"|Not planned
 +
| There are no current plans to support this device.
 +
 +
|-
 +
| style="background-color: navy; color: #ffffff;"|Tested
 +
| Confirmed to work with existing drivers.
  
 
|}
 
|}

Latest revision as of 00:02, 29 November 2022

Single board computers


Raspberry Pi A/B/A+/B+/Zero/ZeroW/CM1

Peripheral Type Status Notes Unit
DMA DMA controller Supported BCM2708
GPIO GPIO controller Supported BCM2708
SDHCI eMMC/SD/SDIO host controller Supported Primary eMMC/SD controller BCM2708
SDHOST eMMC/SD host controller Supported Secondary eMMC/SD controller BCMSDHOST
USB DWCOTG host controller Supported DWCOTG
IRQ Interrupt controller Supported Platform
FIQ Interrupt controller Supported Platform
Timer System timer Planned Used internally by Ultibo core
ARM Timer ARM SP804 Timer Supported BCM2708
UART0 PL011 UART device Supported BCM2708
UART1 Mini (AUX) UART device Planned
BSC0 I2C controller Supported BCM2708
BSC1 I2C controller Supported BCM2708
BSC2 I2C controller Supported Dedicated to the HDMI interface BCM2708
SPI0 SPI master device Supported BCM2708
SPI1 AUX SPI master device Planned
SPI2 AUX SPI master device Planned
PCM/I2S PCM/I2S audio controller Planned
SPI Slave SPI slave device Not planned Device is faulty
BSC Slave I2C slave device Supported BCM2708
PWM PWM controller Supported BCM2708
PWM Audio PWM audio output Planned
Random Random Number Generator Supported BCM2708
Watchdog Watchdog Timer Supported BCM2708
USB OTG USB On-The-Go mode Planned A/A+/Zero/ZeroW/CM1 only
WiFi BCM43438 WiFi controller In progress ZeroW only
Bluetooth BCM43438 Bluetooth host Planned ZeroW only
LAN SMSC LAN9512/14 network Supported B/B+ only SMSC95XX
Firmware Mailbox Supported Platform
Clock (On/Off/Rate/Min/Max) Supported Platform
Power (On/Off) Supported Platform
Voltage (Value/Min/Max) Supported Platform
Temperature Supported Platform
VC4 GPU Framebuffer Supported BCM2708
DispmanX Supported
OpenGLES Supported
OpenMAX Supported
MMAL Supported
OpenVG Supported OpenVG
VCHIQ Supported VC4VCHIQ
HDMI CEC Supported
GENCMD Supported Firmware information and diagnostics
LEDs Power and Activity Supported Not available on Zero/ZeroW Platform

Raspberry Pi 2B/3B/CM3/3B+/3A+/CM3+/Zero2W

Peripheral Type Status Notes Unit
DMA DMA controller Supported BCM2709 / BCM2710
GPIO GPIO controller Supported BCM2709 / BCM2710
SDHCI eMMC/SD/SDIO host controller Supported Primary eMMC/SD controller BCM2709 / BCM2710
SDHOST eMMC/SD host controller Supported Secondary eMMC/SD controller BCMSDHOST
USB DWCOTG host controller Supported DWCOTG
IRQ Interrupt controller Supported Platform
FIQ Interrupt controller Supported Platform
Timer System timer Planned Used internally by Ultibo core
ARM Timer ARM SP804 Timer Supported BCM2709 / BCM2710
Local Timer Local peripheral timer Planned
Local Mailbox Inter processor mailboxes Planned
Generic Timer ARM generic timer Planned Used internally by Ultibo core
UART0 PL011 UART device Supported BCM2709 / BCM2710
UART1 Mini (AUX) UART device Planned
BSC0 I2C controller Supported BCM2709 / BCM2710
BSC1 I2C controller Supported BCM2709 / BCM2710
BSC2 I2C controller Supported Dedicated to the HDMI interface BCM2709 / BCM2710
SPI0 SPI master device Supported BCM2709 / BCM2710
SPI1 AUX SPI master device Planned
SPI2 AUX SPI master device Planned
PCM/I2S PCM/I2S audio controller Planned
SPI Slave SPI slave device Not planned Device is faulty
BSC Slave I2C slave device Supported BCM2709 / BCM2710
PWM PWM controller Supported BCM2709 / BCM2710
PWM Audio PWM audio output Planned
Random Random Number Generator Supported BCM2709 / BCM2710
Watchdog Watchdog Timer Supported BCM2709 / BCM2710
USB OTG USB On-The-Go mode Planned CM3 only
WiFi BCM43438 WiFi controller In progress 3B/3B+/3A+/Zero2W only
Bluetooth BCM43438 Bluetooth host Planned 3B/3B+/3A+/Zero2W only
LAN SMSC LAN9514 network Supported SMSC95XX
Microchip LAN78XX network Supported 3B+ only LAN78XX
Firmware Mailbox Supported Platform
Clock (On/Off/Rate/Min/Max) Supported Platform
Power (On/Off) Supported Platform
Voltage (Value/Min/Max) Supported Platform
Temperature Supported Platform
Virtual GPIO Supported 3B/CM3/3B+/3A+/CM3+ only Platform
GPIO Expander Supported 3B/CM3/3B+/3A+/CM3+ only Platform / RPiGPIOExpander
VC4 GPU Framebuffer Supported BCM2709 / BCM2710
DispmanX Supported
OpenGLES Supported
OpenMAX Supported
MMAL Supported
OpenVG Supported OpenVG
VCHIQ Supported VC4VCHIQ
HDMI CEC Supported
GENCMD Supported Firmware information and diagnostics
LEDs Power and Activity Supported Requires RPiGPIOExpander unit for 3B/3B+/3A+ Platform

Raspberry Pi 4B/400/CM4

Peripheral Type Status Notes Unit
DMA DMA controller Supported Includes DMA 40-bit channel support BCM2711
GPIO GPIO controller Supported BCM2711
MMC0 eMMC/SD/SDIO host controller Supported BCM2711
MMC1 eMMC/SD host controller Supported BCMSDHOST
MMC2 eMMC/SD host controller Supported BCM2711
USB DWCOTG host controller Supported Available on USB-C port only DWCOTG
USB XHCI host controller In progress XHCI
PCIe PCIe host controller In progress BRCMSTBPCIE
IRQ Interrupt controller Supported Platform
FIQ Interrupt controller Supported Platform
IPI Software interrupt Supported Platform
LPAE Large Physical Address Extension Supported Platform
Timer System timer Planned Used internally by Ultibo core
ARM Timer ARM SP804 Timer Supported BCM2711
Local Timer Local peripheral timer Planned
Local Mailbox Inter processor mailboxes Planned
Generic Timer ARM generic timer Planned Used internally by Ultibo core
UART0 PL011 UART device Supported BCM2711
UART1 Mini (AUX) UART device Planned
UART2 PL011 UART device Supported BCM2711
UART3 PL011 UART device Supported BCM2711
UART4 PL011 UART device Supported BCM2711
UART5 PL011 UART device Supported BCM2711
I2C0 I2C controller Supported BCM2711
I2C1 I2C controller Supported BCM2711
I2C2 I2C controller Supported Dedicated to the HDMI interface BCM2711
I2C3 I2C controller Supported BCM2711
I2C4 I2C controller Supported BCM2711
I2C5 I2C controller Supported BCM2711
I2C6 I2C controller Supported BCM2711
I2C7 I2C controller Supported Dedicated to the HDMI interface BCM2711
SPI0 SPI master device Supported BCM2711
SPI1 AUX SPI master device Planned
SPI2 AUX SPI master device Planned
SPI3 SPI master device Supported BCM2711
SPI4 SPI master device Supported BCM2711
SPI5 SPI master device Supported BCM2711
SPI6 SPI master device Supported BCM2711
PCM/I2S PCM/I2S audio controller Planned
SPI Slave SPI slave device Planned
I2C Slave I2C slave device Supported BCM2711
PWM0 PWM controller Supported BCM2711
PWM1 PWM controller Supported BCM2711
PWM Audio PWM audio output Planned
RTC Real time clock Planned Included on CM4 IO board PCF85063
Random Random Number Generator Supported BCM2711
Watchdog Watchdog Timer Supported BCM2711
USB OTG DWCOTG USB On-The-Go mode Planned DWCOTG
WiFi BCM43438 WiFi controller In progress
Bluetooth BCM43438 Bluetooth host Planned
LAN Broadcom BCM54213PE Supported GENET
Firmware Mailbox Supported Platform
Clock (On/Off/Rate/Min/Max) Supported Platform
Power (On/Off) Supported Platform
Voltage (Value/Min/Max) Supported Platform
Temperature Supported Platform
Virtual GPIO Supported Platform
GPIO Expander Supported Platform / RPiGPIOExpander
VC6 GPU Framebuffer Supported Includes multiple framebuffer support (HDMI/DSI/Composite) BCM2711
DispmanX Supported
OpenGLES Planned
OpenMAX Planned
MMAL Planned
OpenVG Planned OpenVG
VCHIQ Supported VC4VCHIQ
HDMI CEC Supported
GENCMD Supported Firmware information and diagnostics
LEDs Power and Activity Supported Requires RPiGPIOExpander unit for 4B/400/CM4 Platform

QEMU Versatile PB

Peripheral Type Status Notes Unit
DMA ARM PL080 DMA controller Planned
GPIO ARM PL061 GPIO controller Not planned
RTC ARM PL031 Real time clock Supported PL031
IRQ PL190 Interrupt controller Supported Platform
FIQ PL190 Interrupt controller Supported Platform
Timer0 ARM SP804 Timer Planned Used internally by Ultibo core
Timer1 ARM SP804 Timer Planned
Timer2 ARM SP804 Timer Planned Used internally by Ultibo core
Timer3 ARM SP804 Timer Planned
UART0 ARM PL011 UART device Supported PL011
UART1 ARM PL011 UART device Supported PL011
UART2 ARM PL011 UART device Supported PL011
UART3 ARM PL011 UART device Supported PL011
MMC0 ARM PL180 MMCI controller Supported PL18X
MMC1 ARM PL180 MMCI controller Supported PL18X
Framebuffer ARM PL110 LCD controller Supported PL110
Keyboard ARM PL050 PS/2 keyboard Supported PL050
Mouse ARM PL050 PS/2 mouse Supported PL050
Audio ARM PL041 Audio codec Planned
LAN SMC LAN91C11 network Supported SMC91X
USB OHCI host controller Planned
PCI PCI controller Planned
SCSI SCSI controller Planned

USB devices


Model Type Status Notes Unit
Hub USB Hub Supported USB
Storage USB Storage Supported Storage
HID USB HID Supported HID / USBHID
Mouse USB Mouse Supported Full HID support Mouse / HIDMouse
Keyboard USB Keyboard Supported Full HID support Keyboard / HIDKeyboard
Gamepad USB Gamepad Supported Full HID support Joystick / HIDJoystick
Joystick USB Joystick Supported Full HID support Joystick / HIDJoystick
Touchscreen USB Touchscreen Supported Full HID support Touch / HIDTouch
Audio USB Audio Planned
CDCACM USB CDC Serial Supported Supports newer Arduino models such as Mega 2560 R3 plus Micro:bit USBCDCACM
FTDI Serial USB to Serial Supported Supports a huge number of USB to serial adapters plus many earlier Arduino models FTDISerial
PL2303 USB to Serial Supported PL2303
RT2800 USB Wireless Planned
RTL8188EU USB Wireless Planned
RTL8192CU USB Wireless Planned
u-blox 7 GPS receiver Tested USBCDCACM

I2C devices


Model Type Status Notes Unit
DS1307 Real time clock Supported Includes 1307/1337/1338/1339/1340/1388/3231 DS1307
MCP23008/MCP23017 I/O expander Supported MCP230XX
STMPE I/O expander Supported Includes 610/801/811/1601/1801/2401 STMPE
STMPE Touch controller Supported Includes 610/811 STMPE
PCF8574 I/O expander Supported PCF857X
PCF85063 Real time clock Planned Includes PCF85063A/PCF85063TP PCF85063
FT5x06 Touch controller Supported Includes FT5206/FT5306/FT5406/FT5506/FT6236 FT5x06Touch
GT9xx Touch controller Supported Includes GT911/GT912/GT927/GT928/GT967/GT1151... GoodixTouch

SPI devices


Model Type Status Notes Unit
ILI9340 TFT display Supported ILI9340
HX8357D TFT display Supported HX8357D
PCD8544 LCD controller Tested Example provided by Ronald Daleske
STMPE I/O expander Supported Includes 610/801/811/1601/1801/2401 STMPE
STMPE Touch controller Supported Includes 610/811 STMPE
dsPIC Microcontroller Tested Tested by Jim Kueneman

Other devices


Model Type Status Notes Unit
HD44780 LCD controller Supported Use with GPIO or I/O expander HD44780
RPiFT5406 Touch controller Supported RPIFT5406

Add-on boards


Model Type Status Notes Unit
Adafuit PiTFT28 TFT display Supported Uses ILI9340 / STMPE / FT5x06 PiTFT28
Adafuit PiTFT35 TFT display Supported Uses HX8357D / STMPE PiTFT35
Adafruit 16x2 LCD LCD display Supported Uses HD44780 / MCP23008 AF16x2LCD
Generic I2C LCD LCD display Supported Uses HD44780 / PCF8574 I2CLCD
Pimoroni HyperPixel TFT display Supported Square, Round and Rectangular displays supported including touch. HyperPixel

Accessories


Model Type Status Notes Unit
Raspberry Pi Camera Module v1 & v2 Add-on board Supported
Raspberry Pi Camera Module v1 & v2 (NoIR) Add-on board Supported
Raspberry Pi Sense HAT Add-on board In progress LED matrix and joystick supported, Sensors in progress RPISENSEHAT
Raspberry Pi 7″ Touchscreen Display Touchscreen Supported Uses framebuffer driver from BCM2708/9/10 RPIFT5406

Legend


Status Meaning
Supported Implemented and fully tested.
In progress Support for this device is in progress.
Planned Support for this device is planned for a future release.
Not planned There are no current plans to support this device.
Tested Confirmed to work with existing drivers.