Image Release Map

From Banana Pi Wiki
Revision as of 01:27, 2 June 2018 by JackZengWiki (talk | contribs) (Overview)
Jump to: navigation, search

View source for Linux mainlining effort ← Linux mainlining effort You do not have permission to edit this page, for the following reasons:

The action you have requested is limited to users in the group: Users. You must confirm your email address before editing pages. Please set and validate your email address through your user preferences. You can view and copy the source of this page:


The purpose of this page is to try and define sub-goals and milestones for the mainlining effort, containing goals and sub-goals with milestones for adding Allwinner support in the upstream mainline Linux Kernel.

Overview

Status

The Mainline Kernel howto contains the currently used repositories for the mainlining process. The U-Boot repository and toolchain is described in the Mainline U-Boot howto.

The Mainline Kernel category gives an overview of currently supported devices.

Status Matrix

The goal of this matrix is to give an easy view of work on each SoC worked on by linux-sunxi.

Model A10 A10s A13

R8

A20 A23 A31 A33

R16

A64 A80 A83T GR8 H3 H5 H6 R40 V3s
AC97 NO N/A N/A NO N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO N/A
Audio Codec 4.4 4.4 4.4 4.4 4.10 4.10 4.11 NO N/A N/A 4.9 4.10 4.12 NO NO 4.13
ADC GPADC 4.12 4.12 4.12 4.12 N/A WIP N/A N/A NO N/A 4.12 N/A N/A N/A NO N/A
Thermal 3.16 3.14 3.14 3.16  ? WIP 4.12 WIP WIP WIP 4.9 WIP WIP NO NO N/A
Touch 3.16 3.14 3.14 3.16 N/A WIP N/A N/A NO N/A 4.9 N/A N/A N/A NO N/A
Clocks 3.10 3.11 3.10 3.12 3.17 3.12 4.2 4.10 3.19 4.13 4.9 4.8 4.12 4.17 4.14 4.11
CPUFreq 4.0 4.0 4.0 4.0 NO 4.2 4.11 NO NO 4.17 NO 4.18 4.18 NO NO NO
Crypto 4.3 4.13 4.13 4.3  ? 4.3 4.3 WIP WIP WIP 4.13 WIP WIP WIP  ?  ?
Camera BT656 NO NO NO NO NO NO NO NO NO WIP NO WIP WIP NO NO WIP
ISP NO N/A N/A NO N/A NO N/A N/A NO NO N/A N/A N/A N/A N/A NO
MIPI-CSI N/A N/A N/A N/A N/A NO N/A N/A NO NO N/A N/A N/A N/A N/A NO
Parallel NO NO NO NO NO NO NO NO NO WIP NO WIP WIP NO NO WIP
Display (SimpleFB) 3.19 3.19 4.0 3.19 3.19 3.19 3.19 4.17 NO NO 4.9 4.16 4.16 NO NO NO
Display

(DRM)

CVBS NO 4.9 ? 4.7 NO N/A N/A N/A N/A N/A N/A 4.9 NO NO NO NO N/A
HDMI 4.15 4.13 N/A 4.15 N/A 4.15 N/A NO NO 4.17 N/A 4.17 4.17 WIP WIP N/A
HDMI Audio NO NO N/A NO N/A NO N/A NO NO NO N/A NO NO NO NO N/A
HDMI CEC 4.15 4.14 N/A 4.15 N/A 4.15 N/A NO NO 4.17 N/A 4.17 4.17 NO WIP N/A
LVDS  ? N/A N/A  ?  ?  ?  ?  ?  ? 4.16 N/A N/A N/A N/A  ? N/A
MIPI DSI N/A N/A N/A N/A  ? NO 4.18 NO NO NO N/A N/A N/A N/A NO N/A
RGB 4.15  ? 4.7 4.15  ? 4.10 4.9 NO WIP 4.16 4.9 N/A N/A NO NO 4.13
VGA NO N/A N/A NO N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO N/A
DMA 4.3 4.3 4.3 4.3 3.18 3.17 4.2 4.15  ? 4.9 4.9 4.2 4.12  ? NO 4.13
Ethernet EMAC 3.11 3.11 N/A 3.11 N/A N/A N/A 4.15 NO 4.16 N/A 4.15 4.15 WIP 4.18 4.13
GMAC N/A N/A 3.15 3.17
HW Spinlocks N/A N/A N/A N/A N/A N/A N/A NO NO NO N/A NO NO NO N/A N/A
I2C 3.11 3.12 3.11 3.13 3.18 3.15 4.2 4.10 3.19 4.16 4.9 4.9 4.12 NO 4.15 4.11
I2S 4.8  ? N/A 4.8  ? NO 4.11 4.17 NO 4.16 4.9 4.14 NO NO NO N/A
IOMMU N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO N/A N/A
IR 3.17 4.0 4.0 3.17 N/A 4.0 N/A  ? 4.5 WIP 4.9 4.6 4.12 NO  ? N/A
Keypad WIP N/A N/A WIP N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO N/A
LRADC 4.0 4.0 4.0 4.0 4.0 4.0 4.2  ?  ?  ? 4.9  ?  ? N/A  ? 4.13
MsgBox N/A N/A N/A N/A N/A N/A N/A NO NO NO N/A NO NO NO N/A N/A
NAND  ?  ? 4.12 <ref name="mlc">While the NAND controller itself is supported, the NAND technology found on the vast majority of boards isn't. See this page </ref>  ? 4.9 <ref name="mlc"/>  ? 4.9 <ref name="mlc" />  ?  ?  ? 4.9 <ref name="mlc" />  ?  ? NO  ? N/A
PCIe N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO <ref name="h6-pcie">Allwinner H6 has a quirky PCIe controller that doesn't map the PCIe address space properly to CPU,
and accessing the PCIe config space, IO space or memory space will need to be wrapped. As Linux doesn't wrap PCIe memory space access, it's not possible to do a proper PCIe controller driver for H6. The BSP kernel modifies the driver to wrap the access, so it's also not generic, and only devices with modified driver will work.</ref>
N/A N/A
Pinctrl 3.9 3.9 3.9 3.12 3.18 3.12 4.2 4.6 3.19 4.4 4.9 4.5 4.12 4.17 4.14 4.11
PWM 4.0 4.4 4.4 4.0 4.4 WIP 4.4 4.17 NO 4.16 4.9 4.9 4.12  ? WIP  ?
RSB N/A N/A N/A N/A 4.4 N/A 4.4 4.13 4.3 4.14 N/A  ?  ?  ? N/A N/A
RTC 3.14 N/A N/A 3.14 3.18 3.18 4.2 4.10 N/A N/A N/A 4.5 4.12  ?  ? 4.11
SATA 3.15 N/A N/A 3.15 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A NO N/A
SD/ MMC 3.16 3.16 3.16 3.16 3.18 3.16 4.2 4.11 4.0 4.14 4.9 4.5 4.12 WIP 4.14 4.11
SMP N/A N/A N/A PSCI PSCI PSCI PSCI PSCI 4.17 4.18 N/A PSCI PSCI NO PSCI N/A
SPDIF 4.7 N/A N/A 4.7 N/A 4.9 N/A 4.17  ? 4.13 4.9 4.11 4.12 NO  ? N/A
SPI 3.16 3.15 3.15 3.15  ? 3.15  ? 4.15  ?  ? 4.9 4.10 4.12 NO  ? 4.13
SRAM 4.2 4.2 4.2 4.2 NO NO NO NO N/A N/A 4.2 N/A N/A N/A NO N/A
USB 3.15 3.15 3.15 3.15 4.3 3.16 4.3 4.11 4.2 4.14 4.9 4.8 4.12 WIP 4.15 4.11
USB OTG 4.3 4.3 4.3 4.3 4.8 4.3 4.8 4.11 NO 4.15 4.9 4.12 4.12 NO NO 4.11
USB3 N/A N/A N/A N/A N/A N/A N/A N/A NO N/A N/A N/A N/A WIP N/A N/A
VE | Sunxi-Cedrus WIP NO WIP WIP NO NO WIP WIP NO NO NO WIP WIP NO NO NO
Watchdog 3.12 3.12 3.12 3.12 3.18 3.18 4.2 4.17 3.19 4.6 4.9 4.5 4.12  ?  ? 4.11
Model A10 A10s A13

R8

A20 A23 A31 A33

R16

A64 A80 A83T GR8 H3 H5 H6 R40 V3s


Legend
In Linux mainline since version x
Nobody works on it, but it should be compatible with already done drivers
Somebody works on it
No support, nobody works on it
support impossible
Status is unknown/to be completed

Work In Progress

Core Stuff

  • Message box (WiP: Samuel Holland) patch
  • A13 PSCI Suspend / Resume / CPUIdle (WiP: Antoine Tenart) patch-v1
  • H6 PRCM, R_PIO, USB, PMIC, Ethernet (WiP: Icenowy Zheng (icenowy)) [branch]

Major drivers

  • Audio codec support:
  • Display Engine driver

Minor drivers

Planned for 4.18

  • A33
    • MIPI DSI
  • A83t
    • SMP Support
  • H3
    • CPUFreq
  • R40
    • EMAC support

Merged into 4.17

Driver changes

  • A80
    • SMP
  • A83T
    • HDMI support
    • PMIC ADC and Battery power supply support
  • H3 / H5
    • HDMI support
  • H6
    • Basic support
    • PIO pinctrl support (R_PIO not supported)
    • CCU clock/reset support (R_CCU/PRCM not supported)

Device tree changes

  • A64
    • SimpleFB
    • I2S
    • SPDIF
    • Watchdog

New devices supported

Merged into 4.16

Drivers:

  • Display
    • LVDS support
    • DE2 (multi-plane support, HW scaling)
  • A83T
    • Display (LCD) support
    • I2S support
  • H3/H5
    • SimpleFB support

Device tree changes:

  • SoC specific
    • A83T
      • I2C, I2S added
      • First display pipeline (LCD/LVDS)
      • GPIO for AXP81x PMIC
    • H3/H5
      • SimpleFB

New boards supported:

Merged into 4.15

Drivers:

  • A10/A20/A31
    • display
    • HDMI controller
  • sunxi-ng clocks
    • audio PLL sigma-delta modulation support for accurate audio playback
  • A33
    • Audio codec fixes
  • A64
    • DMA controller

Device tree changes:

  • SoC specific
    • A10/A20
      • CCU sunxi-ng style clock conversion
      • Display pipeline
      • HDMI controller
    • A31
      • HDMI controller
      • I2S controllers
    • A64
      • DMA controller
      • EMAC
      • SPI
    • H3/H5
      • EMAC
    • R40
      • Basic dtsi
  • Cleanups
    • Removal of GPIO pinmux settings for A10 and A80

New boards supported:

Merged into 4.14

Drivers:

  • A10s
    • HDMI DDC I2C Adapter
    • HDMI CEC support
  • most of Allwinner SoC
    • sun4i-ss SecuritySystem PRNG driver
  • A10/A20
    • CCU Clock-ng support
  • A10/A20/A31/A33/H3
  • A64
    • SRAM controller driver
  • A83T
    • SD/MMC support
    • AXP813 PMIC
    • USB support
  • H3
  • R40
    • CCU sunxi-ng style clock driver support
    • pinctrl support
  • AXP PMICs
    • PEK time fix for AXP22x

Device tree changes:

  • SoC specific
    • A83T / A64
      • R_INTC interrupt controller
    • A83T
      • RSB support
      • SD/MMC support
      • AXP813 PMIC and codec
      • USB host support

New boards supported:

Merged into 4.13

Drivers:

  • V3s
    • Clock driver for Display Engine 2.0
    • DRM/KMS display driver support for Display Engine 2.0
    • codec support
  • A64 / A83T / H2+ / H3 / H5
    • dwmac-sun8i ethernet driver Unfinished due to unstable DT binding

Device tree changes:

  • SoC Specific
    • LRADC, MMC1, SPI, Display Engine 2.0 for V3s

Added board support: FriendlyARM NanoPi NEO2, Xunlong Orange Pi Prime, LicheePi Zero dock board

Merged into 4.12

  • H3
    • USB OTG support
  • H5
    • New SoC variant, similar to H3, but ARM64 with Cortex-A53 cores.
    • pinctrl driver
    • CCU (sunxi-ng) driver
    • USB OTG support
  • A31/H3 SPI
    • Support transfers larger than 64 bytes
  • AXP PMICs
    • AXP803 basic support
    • ACIN Power Supply driver
    • ADC IIO driver
    • Battery Power Supply driver

Added board support: FriendlyARM NanoPi NEO Air, Xunlong Orange Pi PC 2

Merged into 4.11

  • A23
    • Audio codec device tree changes
  • A31
    • SPDIF output support
  • A33
    • cpufreq support
    • Audio codec support
  • A64
    • MMC Support
    • USB support
  • A80
    • sunxi-ng style clock support
  • H2+
    • New SoC variant, similar to H3
  • H3
    • Audio codec device tree changes
    • SPDIF output support
  • V3s
    • New SoC support
    • USB PHY driver
    • pinctrl driver
    • CCU driver

Added board support: LicheePi One, Xunlong Orange Pi Zero, LicheePi Zero, Sinovoip Banana Pi M64

Merged into 4.10

  • A23
    • Audio Codec driver
  • A31/A31s
    • Display Driver (first pipeline)
    • Audio Codec support
  • A64
    • Clock driver
  • A80
    • External SDIO WiFi
  • H3
    • Audio Codec driver
    • SPI

Added board support: NextThingCo CHIP Pro, Pine64, FriendlyARM NanoPi M1

Merged into 4.9

  • GR8
    • SoC Support
  • A31
    • SPDIF support
  • A33
    • Display Driver
  • A64
    • USB PHY support
  • H3
    • PWM support
    • I2C support
  • AXP806 PMIC
    • regulator support
  • AC100 RTC / codec IC
    • mfd driver
    • RTC driver

Added board support: Orange Pi PC Plus, Olimex A33-OLinuXino, Xunlong Orange Pi Lite, Inet q972, Empire Electronix M712, Xunlong Orange Pi Plus 2, Xunlong Orange Pi Plus 2E, FriendlyARM NanoPi NEO,

Merged into 4.8

  • A10/A20
    • Display engine clocks (TCON, FE, DE)
    • I2S audio interface driver
  • H3
    • Clocks (through sunxi-ng)
    • USB multi-reset lines support
  • AXP2xx driver:
    • External drivebus support
    • AXP223 USB power supply support
    • AXP809 PMIC support

Merged into 4.7

  • A13/R8
    • Display Engine support
  • A31/A23/H3 DMAengine improvements for H3 audio support (WiP: Jean-Francois Moine) patch-v6
  • H3
    • USB support (multi-reset line support delayed til 4.8)

Added board support: Dserve DSRV9703C, Polaroid MID2809PXE4, colorfly e708 q1, Difrence DIT4350

Merged into 4.6

  • Allwinner A83T support
    • Initial bringup
    • timer, watchdog and reboot
  • H3
    • R_PIO support
  • A64
    • pinctrl driver
    • generic arm64 Allwinner platform (ARCH_SUNXI) support
  • NAND
    • ECC layout definition rework (partially) and randomizer support
  • A10/A20 SPDIF driver
  • AXP223 PMIC support
  • eMMC HS-DDR support for all currently supported SoCs except A80

Added board support: Allwinner A83TDevBoard, Cubietech Cubietruck Plus

Merged into 4.5

  • Allwinner A80 support
    • IR receiver driver
    • NMI controller
    • PRCM driver
    • R_PIO support
    • RSB driver
  • Allwinner H3 SoC support
    • H3 USB PHY clocks
  • A10/A20 Video Engine clocks
  • MIC1 capture for sun4i codec
  • Audio codec enabled on various boards

Added board support: Xunlong Orange Pi Plus

Template:KnownProblems A quick fix is to revert commit 88f8b1b which introduced the regression. See http://lists.infradead.org/pipermail/linux-arm-kernel/2016-March/415939.html, https://www.mail-archive.com/[email protected]/msg104119.html, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823493.
Version v4.5-rc7 is known to be still okay, v4.6-rc2 fixes stmmac again.

Changes merged up to 4.4

Changes up to 4.4 can be found on Linux mainlining history page.

References

<references />

See also

External Links

How to upstream

Notes

<references group=note />

Templates used on this page:

Template:KnownProblems (view source) Template:Note (view source) Template:Red (view source) Return to Linux mainlining effort.

Create accountLog inPageDiscussionReadView sourceView history

Search

Navigation Main page Community portal Recent changes Random page Help Tools What links here Related changes Special pages Privacy policyAbout linux-sunxi.orgDisclaimersCreative Commons Attribution Powered by MediaWiki