Difference between revisions of "RPi Upstreaming"

From eLinux.org
Jump to: navigation, search
(uart1 in stblinux, too.)
(major rewrite of rpi status)
Line 19: Line 19:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
!  Component  !!    Status     !!  Assigned To  !!          Comments                              !!          Meta Comments
+
!  Component  !!    Status       !!  Assigned To  !!          Comments
 
|-
 
|-
| one-shot DMA  || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-April/001568.html in review] || notro || ||
+
| RPi3 64-bit  || [https://github.com/anholt/linux/commits/bcm2837-64-next partially reviewed] || anholt
 
|-
 
|-
| thermal      || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002404.html in review] || lkundrak      || Current implementation RPi-only ||
+
| RPi3 GPIO expander || [https://github.com/anholt/linux/commit/bc8dd6a272f0eda801ee24e91bcb8a36c92f4f12 WIP] || anholt
 
|-
 
|-
| cpufreq       || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002402.html in review] || lkundrak      || Current implementation RPi-only ||
+
| MMC DMA       || Semi-Upstreamed  || || drivers/mmc/host/sdhci-iproc.c
 
|-
 
|-
| Audio        ||                 ||               || Depends on DMA and/or Mailbox (codec/digi/dac) || Which one(s)
+
| SDHOST MMC    || Needs cleanup    || anholt      || [https://github.com/anholt/linux/tree/bcm2835-mmc WIP cleanups]
 
|-
 
|-
| VCHIQ        ||                 || lkundrak      || Depends on mailbox. Requires big clean-up. Staging candidate? || Does this depend on DMA?
+
| thermal      || reviewed for 4.8 || anholt ||
 
|-
 
|-
| Sound        ||                 || lkundrak     || I2S is already in. Depends on VCHIQ    || Does this depend on DMA?
+
| cpufreq      || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002402.html in review] || lkundrak || Current implementation RPi-only
 
|-
 
|-
| MMC          || Semi-Upstreamed || pietrushnic  || drivers/mmc/host/sdhci-bcm2835.c - lacking DMA || Depends on DMA slave_sg transfer mode
+
| PWM analog audio || ||
 
|-
 
|-
| SDHOST MMC    || Needs cleanup  ||| anholt      || [https://github.com/anholt/linux/tree/bcm2835-mmc WIP cleanups]
+
| VCHIQ        ||                 || lkundrak      || Requires big clean-up. Staging candidate?
 
|-
 
|-
| Camera        || || || Needs VCHIQ for MMAL ||
+
| Camera        || || || Needs VCHIQ for MMAL
 
|-
 
|-
| Video decode       || || || Needs VCHIQ for MMAL ||
+
| Video decode || || || Needs VCHIQ for MMAL
| || || || ||
+
|}
 +
 
 +
== Done ==
 +
{| class="wikitable"
 
|-
 
|-
| UART1        || Upstreamed (4.6)   || msperl || ||
+
!   Component  !! Version !!          Comments
 
|-
 
|-
| SPI1/2        || Upstreamed (4.6)    || msperl || ||  
+
| one-shot DMA  || 4.7 || || ||
 
|-
 
|-
| RPi2          || Upstreamed (4.5)    || anholt ||
+
| UART1        || 4.6 || || ||
 
|-
 
|-
| GPU (DRM)    || Upstreamed (4.5) || anholt || See also  [http://dri.freedesktop.org/wiki/VC4/ Instructions]. ||  
+
| SPI1/2        || 4.6 || ||  
 
|-
 
|-
| Power        || Upstreamed (4.5|| anholt        || Current implementation RPi-only, requires current firmware for full functionality  ||  
+
| RPi2          || 4.5 || ||
 
|-
 
|-
| Framebuffer  || Deprecated, use DRM instead ||   || Depends on Mailbox                            ||
+
| GPU (DRM)    || 4.7 || ||  
 
|-
 
|-
| mailbox      || Upstream (4.4)  || anholt        || Mailbox driver landed in 4.3, 4.4 will have firmware interfaces built on it ||
+
| Power        || 4.5 || Current implementation RPi-only, requires current firmware for full functionality  ||  
 
|-
 
|-
| clocks-aux    || Upstream (4.5) || anholt ||  Supports setting SPI1, SPI2, UART1 clocks ||
+
| Framebuffer  || Deprecated, use DRM instead || ||
 
|-
 
|-
| clocks-audio  || Upstreamed (4.4) || anholt        ||  Native support for setting most clocks on the system. ||  
+
| mailbox      || 4.4 ||  ||
 
|-
 
|-
| Clock Source  || Upstreamed      ||              || drivers/clocksource/bcm2835_timer.c           ||              
+
| clocks-aux    || 4.5 || drivers/clk/bcm/clk-bcm2835-aux.c ||
 
|-
 
|-
| DMA          || Upstreamed      ||              || drivers/dma/bcm2835-dma.c - less FIQ sup't    ||              
+
| clocks-audio  || 4.4 || drivers/clk/bcm/clk-bcm2835.c ||  
 
|-
 
|-
| I2C          || Upstreamed      ||              || drivers/i2c/busses/i2c-bcm2835.c               ||               
+
| Clock Source  || Done || drivers/clocksource/bcm2835_timer.c           ||               
 
|-
 
|-
| IRQ           || Upstreamed      ||              || drivers/irqchip/irq-bcm2835.c                 ||               
+
| DMA           || Done || drivers/dma/bcm2835-dma.c - less FIQ sup't    ||               
 
|-
 
|-
| I2S (Audio)  || Upstreamed      ||               || sound/soc/bcm/bcm2835-i2s.c                   ||               
+
| I2C          || Done || drivers/i2c/busses/i2c-bcm2835.c               ||               
 
|-
 
|-
| Pinctrl      || Upstreamed      ||              || drivers/pinctrl/pinctrl-bcm2835.c             ||
+
| IRQ          || Done || drivers/irqchip/irq-bcm2835.c                 ||              
 
|-
 
|-
| Random NG    || Upstreamed      ||               || drivers/char/hw_random/bcm2835-rng.c           ||               
+
| I2S (Audio)  || Done || sound/soc/bcm/bcm2835-i2s.c                   ||               
 
|-
 
|-
| SPI          || Upstreamed      ||              || drivers/spi/spi-bcm2835.c                     ||              
+
| Pinctrl      || Done || drivers/pinctrl/pinctrl-bcm2835.c             ||
 
|-
 
|-
| Watchdog      || Upstreamed      ||              || drivers/watchdog/bcm2835_wdt.c                 ||               
+
| Random NG    || Done || drivers/char/hw_random/bcm2835-rng.c           ||               
 
|-
 
|-
| LEDs          || Upstreamed      || matthiasklein || arch/arm/boot/dts/bcm2835-*                    || Device Tree for B+
+
| SPI          || Done || drivers/spi/spi-bcm2835.c                      ||              
 
|-
 
|-
| Serial        || Pre-Upstreamed  ||               || drivers/tty/serial/amba-pl011.c                ||                                 
+
| Watchdog      || Done || drivers/watchdog/bcm2835_wdt.c                ||             
 +
|-
 +
| LEDs          || Done || arch/arm/boot/dts/bcm2835-*                    ||
 +
|-
 +
| Serial        || Done || drivers/tty/serial/amba-pl011.c                ||                                 
 
|}
 
|}

Revision as of 10:17, 20 May 2016

MOVED: Building an Upstream Kernel for Raspberry Pi

Please see RPi_Upstream_Kernel_Compilation instead.

Contact

You can find us in #raspberrypi-kernel @ Freenode IRC.

Documentation

BCM2835 ARM Peripherals Reference Manual [PDF]

BCM2836 New ARM-local control registers [PDF]]

VideoCore Mailbox Interface

Status

Component Status Assigned To Comments
RPi3 64-bit partially reviewed anholt
RPi3 GPIO expander WIP anholt
MMC DMA Semi-Upstreamed drivers/mmc/host/sdhci-iproc.c
SDHOST MMC Needs cleanup anholt WIP cleanups
thermal reviewed for 4.8 anholt
cpufreq in review lkundrak Current implementation RPi-only
PWM analog audio
VCHIQ lkundrak Requires big clean-up. Staging candidate?
Camera Needs VCHIQ for MMAL
Video decode Needs VCHIQ for MMAL

Done

Component Version Comments
one-shot DMA 4.7
UART1 4.6
SPI1/2 4.6
RPi2 4.5
GPU (DRM) 4.7
Power 4.5 Current implementation RPi-only, requires current firmware for full functionality
Framebuffer Deprecated, use DRM instead
mailbox 4.4
clocks-aux 4.5 drivers/clk/bcm/clk-bcm2835-aux.c
clocks-audio 4.4 drivers/clk/bcm/clk-bcm2835.c
Clock Source Done drivers/clocksource/bcm2835_timer.c
DMA Done drivers/dma/bcm2835-dma.c - less FIQ sup't
I2C Done drivers/i2c/busses/i2c-bcm2835.c
IRQ Done drivers/irqchip/irq-bcm2835.c
I2S (Audio) Done sound/soc/bcm/bcm2835-i2s.c
Pinctrl Done drivers/pinctrl/pinctrl-bcm2835.c
Random NG Done drivers/char/hw_random/bcm2835-rng.c
SPI Done drivers/spi/spi-bcm2835.c
Watchdog Done drivers/watchdog/bcm2835_wdt.c
LEDs Done arch/arm/boot/dts/bcm2835-*
Serial Done drivers/tty/serial/amba-pl011.c