Difference between revisions of "RPi Upstreaming"

From eLinux.org
Jump to: navigation, search
m (Fix URL of Mailbox Property Interface)
(major update to upstreaming status, add 2836 docs.)
Line 11: Line 11:
 
[http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf BCM2835 ARM Peripherals Reference Manual [PDF<nowiki>]</nowiki>]
 
[http://www.raspberrypi.org/wp-content/uploads/2012/02/BCM2835-ARM-Peripherals.pdf BCM2835 ARM Peripherals Reference Manual [PDF<nowiki>]</nowiki>]
  
[http://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface VideoCore Mailbox Interface [PDF<nowiki>]</nowiki>]
+
[https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2836/QA7_rev3.4.pdf BCM2836 New ARM-local control registers [PDF<nowiki>]</nowiki>]]
 +
 
 +
[http://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface VideoCore Mailbox Interface]
  
 
== Status ==
 
== Status ==
Line 19: Line 21:
 
!  Component  !!    Status      !!  Assigned To  !!          Comments                              !!          Meta Comments
 
!  Component  !!    Status      !!  Assigned To  !!          Comments                              !!          Meta Comments
 
|-
 
|-
| Audio        ||                 ||               || Depends on DMA and/or Mailbox (codec/digi/dac) || Which one(s)
+
| GPU (DRM)    || KMS works based on stubs, GEM has unstable ABI.  [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002379.html KMS in review]. || anholt || Current trees: [https://github.com/anholt/linux/tree/vc4-kms-v3d upstream-targeted 2835], [https://github.com/anholt/linux/tree/vc4-kms-v3d-rpi2 downstream-targeted 2708/2709].  [http://dri.freedesktop.org/wiki/VC4/ Instructions]. ||
 +
|-
 +
| clocks-audio  || queued for 4.4 || anholt        ||  Native support for setting most clocks on the system. ||  
 
|-
 
|-
| Framebuffer  || Replace with DRM eventually ||   || Depends on Mailbox                            ||
+
| clocks-aux    || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-September/002311.html Needs review feedback handling] || anholt ||  Supports setting SPI1, SPI2, UART1 clocks || Depends on clocks-audio
 
|-
 
|-
| GPU (DRM)    || KMS works based on stubs, GEM has unstable ABI || anholt || https://github.com/anholt/linux/tree/vc4 (2708/rpi1, V3D-only), https://github.com/anholt/linux/tree/vc4-kms (2835-only, KMS)Depends on mailbox for V3D enable ||
+
| SPI1/2        || driver queued for 4.4, waiting on clocks-aux for [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-September/002284.html DT] to land. || msperl || ||  
 
|-
 
|-
| HWMON         ||                 ||               || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| UART1         || needs [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-September/002290.html review feedback] handling || msperl || ||  
 
|-
 
|-
| VCHIQ        ||                 || lkundrak      || Depends Mailbox. Requires big clean-up. Staging candidate? || Does this depend on DMA?
+
| mailbox      || queued for 4.4  || anholt        || Mailbox driver landed in 4.3, 4.4 will have firmware interfaces built on it ||
 
|-
 
|-
| Sound        ||                 || lkundrak      || I2S is already in. Depends on VCHIQ    || Does this depend on DMA?
+
| thermal      || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002404.html in review] || lkundrak      || Current implementation RPi-only, depends on mailbox ||
 
|-
 
|-
| Power        || in review       || anholt        || https://github.com/anholt/linux/tree/rpi-mailbox ||  
+
| cpufreq       || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002402.html in review] || lkundrak      || Current implementation RPi-only, depends on mailbox ||
 
|-
 
|-
| CPUFreq      || WIP            || lkundrak      || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| Power        || unwritten      || anholt        || anholt wrote a firmware-based implementation which isn't very useful.  Needs to write a native one.  ||  
 
|-
 
|-
| Mailbox      || in review      || anholt        || https://github.com/anholt/linux/tree/rpi-mbox-only ||  
+
| Audio        ||                 ||               || Depends on DMA and/or Mailbox (codec/digi/dac) || Which one(s)
 
|-
 
|-
| Thermal      || WIP            || lkundrak      || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| VCHIQ        ||                 || lkundrak      || Depends on mailbox. Requires big clean-up. Staging candidate? ||  Does this depend on DMA?
 +
|-
 +
| Sound        ||                 || lkundrak      || I2S is already in. Depends on VCHIQ    || Does this depend on DMA?
 
|-
 
|-
 
| MMC          || Semi-Upstreamed || pietrushnic  || drivers/mmc/host/sdhci-bcm2835.c - lacking DMA || Depends on DMA slave_sg transfer mode
 
| MMC          || Semi-Upstreamed || pietrushnic  || drivers/mmc/host/sdhci-bcm2835.c - lacking DMA || Depends on DMA slave_sg transfer mode
 
|-
 
|-
| Common Clk    || Stub Upstreamed ||               || drivers/clk/clk-bcm2835.c - real driver depends on VideoCore interaction ||              
+
| || || || ||
 
|-
 
|-
| || || || ||
+
| Framebuffer  || Deprecated, use KMS instead ||   || Depends on Mailbox                            ||
 
|-
 
|-
 
| Clock Source  || Upstreamed      ||              || drivers/clocksource/bcm2835_timer.c            ||               
 
| Clock Source  || Upstreamed      ||              || drivers/clocksource/bcm2835_timer.c            ||               

Revision as of 11:33, 15 October 2015

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 Meta Comments
GPU (DRM) KMS works based on stubs, GEM has unstable ABI. KMS in review. anholt Current trees: upstream-targeted 2835, downstream-targeted 2708/2709. Instructions.
clocks-audio queued for 4.4 anholt Native support for setting most clocks on the system.
clocks-aux Needs review feedback handling anholt Supports setting SPI1, SPI2, UART1 clocks Depends on clocks-audio
SPI1/2 driver queued for 4.4, waiting on clocks-aux for DT to land. msperl
UART1 needs review feedback handling msperl
mailbox queued for 4.4 anholt Mailbox driver landed in 4.3, 4.4 will have firmware interfaces built on it
thermal in review lkundrak Current implementation RPi-only, depends on mailbox
cpufreq in review lkundrak Current implementation RPi-only, depends on mailbox
Power unwritten anholt anholt wrote a firmware-based implementation which isn't very useful. Needs to write a native one.
Audio Depends on DMA and/or Mailbox (codec/digi/dac) Which one(s)
VCHIQ lkundrak Depends on mailbox. Requires big clean-up. Staging candidate? Does this depend on DMA?
Sound lkundrak I2S is already in. Depends on VCHIQ Does this depend on DMA?
MMC Semi-Upstreamed pietrushnic drivers/mmc/host/sdhci-bcm2835.c - lacking DMA Depends on DMA slave_sg transfer mode
Framebuffer Deprecated, use KMS instead Depends on Mailbox
Clock Source Upstreamed drivers/clocksource/bcm2835_timer.c
DMA Upstreamed drivers/dma/bcm2835-dma.c - less FIQ sup't
I2C Upstreamed drivers/i2c/busses/i2c-bcm2835.c
IRQ Upstreamed drivers/irqchip/irq-bcm2835.c
I2S (Audio) Upstreamed sound/soc/bcm/bcm2835-i2s.c
Pinctrl Upstreamed drivers/pinctrl/pinctrl-bcm2835.c
Random NG Upstreamed drivers/char/hw_random/bcm2835-rng.c
SPI Upstreamed drivers/spi/spi-bcm2835.c
Watchdog Upstreamed drivers/watchdog/bcm2835_wdt.c
LEDs Upstreamed matthiasklein arch/arm/boot/dts/bcm2835-* Device Tree for B+
Serial Pre-Upstreamed drivers/tty/serial/amba-pl011.c