Difference between revisions of "RPi Upstreaming"

From eLinux.org
Jump to: navigation, search
m
(update for current merges)
 
(26 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
== MOVED: Building an Upstream Kernel for Raspberry Pi ==
 
== MOVED: Building an Upstream Kernel for Raspberry Pi ==
  
Please see [[RPi_Upstream_Kernel_Compilation]] instead.
+
Please see [[RPi_Upstream_Kernel_Compilation]] or [https://github.com/anholt/linux/wiki/Raspberry-Pi-development-environment Raspberry-Pi-development-environment] instead.
 +
 
 +
== Contact ==
 +
 
 +
You can find us in #raspberrypi-kernel @ Freenode IRC.
  
 
== Documentation ==
 
== Documentation ==
Line 7: 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://https://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 13: Line 19:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
!  Component  !!    Status     !!  Assigned To  !!          Comments                             !!          Meta Comments
+
!  Component  !!    Status       !!  Assigned To  !!          Comments
 +
|-
 +
| RPi3 GPIO expander || [https://github.com/anholt/linux/commit/bc8dd6a272f0eda801ee24e91bcb8a36c92f4f12 WIP] || anholt
 +
|-
 +
| MMC DMA      || Downstream only ||  || drivers/mmc/host/sdhci-iproc.c
 +
|-
 +
| thermal      || reviewed for 4.9 || anholt || [https://www.spinics.net/lists/arm-kernel/msg566217.html]
 +
|-
 +
| cpufreq      || [http://lists.infradead.org/pipermail/linux-rpi-kernel/2015-October/002402.html in review] || lkundrak  || Current implementation RPi-only
 +
|-
 +
| PWM analog audio || mzoran || [https://www.spinics.net/lists/alsa-devel/msg60674.html]
 +
|}
 +
 
 +
== Done ==
 +
{| class="wikitable"
 +
|-
 +
!  Component  !! Version !!          Comments
 +
|-
 +
| SDHOST MMC    || 4.12 || everything but the last DT bits in 4.12.
 
|-
 
|-
| Audio        ||                 ||               || Depends on DMA and/or Mailbox (codec/digi/dac) || Which one(s)
+
| Camera        || 4.11 ||
 
|-
 
|-
| Framebuffer  || Replace with DRM eventually ||  || Depends on Mailbox                            ||
+
| VCHI          || 4.9 || driver now in staging, needs porting to 64-bit (WIP by Electron752)
 
|-
 
|-
| GPU (DRM)     || Execution ready soon, modesetting will take longer || anholt || Depends on Mailbox until modesetting is ready ||
+
| RPi3 (64-bit) || 4.9 ||
 
|-
 
|-
| HWMON        ||                ||               || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| one-shot DMA  || 4.7 ||
 
|-
 
|-
| VCHIQ         ||                 || lkundrak      || Depends Mailbox. Requires big clean-up. Staging candidate? || Does this depend on DMA?
+
| UART1         || 4.6 ||
 
|-
 
|-
| Sound        ||                 || lkundrak      || I2S is already in. Depends on VCHIQ    || Does this depend on DMA?
+
| SPI1/2        || 4.6 ||
 
|-
 
|-
| Power (?)    || More info req'd ||               || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| RPi2          || 4.5 ||
 
|-
 
|-
| CPUFreq      || WIP            || lkundrak      || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| GPU (DRM)    || 4.7 ||
 
|-
 
|-
| Mailbox      || WIP            || lkundrak      || Depends on Mailbox API                        || bcm2708_vcio 
+
| Power        || 4.5 || Current implementation RPi-only, requires current firmware for full functionality
 
|-
 
|-
| Thermal      || WIP            || lkundrak      || Depends on DMA and/or Mailbox                  || Which one(s) 
+
| Framebuffer  || Deprecated, use DRM instead ||
 
|-
 
|-
| MMC          || Semi-Upstreamed ||              || drivers/mmc/host/sdhci-bcm2835.c              || Which one(s)
+
| mailbox      || 4.4 ||
 
|-
 
|-
| || || || ||
+
| clocks-aux    || 4.5 || drivers/clk/bcm/clk-bcm2835-aux.c
 
|-
 
|-
| Clock Source || Upstreamed      ||              || drivers/clocksource/bcm2835_timer.c           ||             
+
| clocks-audio || 4.4 || drivers/clk/bcm/clk-bcm2835.c
 
|-
 
|-
| Common Clk    || Upstreamed      ||              || drivers/clk/clk-bcm2835.c                     ||             
+
| Clock Source  || Done || drivers/clocksource/bcm2835_timer.c
 
|-
 
|-
| DMA          || Upstreamed      ||              || drivers/dma/bcm2835-dma.c - less FIQ sup't     ||             
+
| DMA          || Done || drivers/dma/bcm2835-dma.c - less FIQ sup't
 
|-
 
|-
| I2C          || Upstreamed      ||              || drivers/i2c/busses/i2c-bcm2835.c               ||             
+
| I2C          || Done || drivers/i2c/busses/i2c-bcm2835.c
 
|-
 
|-
| IRQ          || Upstreamed      ||              || drivers/irqchip/irq-bcm2835.c                 ||             
+
| IRQ          || Done || drivers/irqchip/irq-bcm2835.c
 
|-
 
|-
| I2S (Audio)  || Upstreamed      ||              || sound/soc/bcm/bcm2835-i2s.c                   ||             
+
| I2S (Audio)  || Done || sound/soc/bcm/bcm2835-i2s.c
 
|-
 
|-
| Pinctrl      || Upstreamed      ||              || drivers/pinctrl/pinctrl-bcm2835.c             ||             
+
| Pinctrl      || Done || drivers/pinctrl/pinctrl-bcm2835.c
 
|-
 
|-
| Random NG    || Upstreamed      ||              || drivers/char/hw_random/bcm2835-rng.c           ||             
+
| Random NG    || Done || drivers/char/hw_random/bcm2835-rng.c
 
|-
 
|-
| SPI          || Upstreamed      ||              || drivers/spi/spi-bcm2835.c                     ||             
+
| SPI          || Done || drivers/spi/spi-bcm2835.c
 
|-
 
|-
| Watchdog      || Upstreamed      ||              || drivers/watchdog/bcm2835_wdt.c                 ||             
+
| Watchdog      || Done || drivers/watchdog/bcm2835_wdt.c
 
|-
 
|-
| LEDs          || Pre-Upstreamed  ||               || drivers/leds/leds-gpio.c                      ||           
+
| LEDs          || Done || arch/arm/boot/dts/bcm2835-*
 
|-
 
|-
| Serial        || Pre-Upstreamed  ||              || drivers/tty/serial/amba-pl011.c               ||                               
+
| Serial        || Done || drivers/tty/serial/amba-pl011.c
 
|}
 
|}

Latest revision as of 17:23, 17 March 2017

MOVED: Building an Upstream Kernel for Raspberry Pi

Please see RPi_Upstream_Kernel_Compilation or Raspberry-Pi-development-environment 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 GPIO expander WIP anholt
MMC DMA Downstream only drivers/mmc/host/sdhci-iproc.c
thermal reviewed for 4.9 anholt [1]
cpufreq in review lkundrak Current implementation RPi-only
PWM analog audio mzoran [2]

Done

Component Version Comments
SDHOST MMC 4.12 everything but the last DT bits in 4.12.
Camera 4.11
VCHI 4.9 driver now in staging, needs porting to 64-bit (WIP by Electron752)
RPi3 (64-bit) 4.9
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