[SRU][L:riscv][PULL v2] Enable Allwinner D1 based boards
Stefan Bader
stefan.bader at canonical.com
Mon Aug 7 09:23:28 UTC 2023
On 12.06.23 12:54, Emil Renner Berthing wrote:
> BugLink: https://bugs.launchpad.net/bugs/1975592
>
> [Impact]
> Enable the Allwinner D1 based Nezha, Lichee RV and MangoPi MQ Pro
> boards.
> Patches yet to make it upstream are available from Samuel Hollands tree
> at
> https://github.com/smaeul/linux
>
> [Test]
> Cherry pick patches and run the kernel on the various boards and see
> that devices that does not yet have upstream support.
>
> [Regression potential]
> The out-of-tree patches may interfere with other supported boards, so
> make sure to test on those too.
>
> ----------------------------------------------------------------
>
> The following changes since commit 9fe017d25c0994fdbe6d8a7e6fdc33c4e2aef1dc:
>
> UBUNTU: Ubuntu-riscv-6.2.0-23.23.1 (2023-06-01 09:08:34 +0200)
>
> are available in the Git repository at:
>
> git+ssh://esmil@git.launchpad.net/~esmil/ubuntu/+source/linux-riscv/+git/lunar d1
>
> for you to fetch changes up to a89cf8fbf754615ea1813638143aa3db3573649b:
>
> UBUNTU: [Config] riscv: Default to performance cpufreq governor (2023-06-12 12:40:37 +0200)
>
> ----------------------------------------------------------------
> András Szemző (1):
> clk: sunxi-ng: d1: Mark cpux clock as critical
>
> Anup Patel (2):
> dt-bindings: timer: Add bindings for the RISC-V timer device
> clocksource/drivers/timer-riscv: Set CLOCK_EVT_FEAT_C3STOP based on DT
>
> Arnd Bergmann (1):
> soc: sunxi: select CONFIG_PM
>
> Ban Tao (2):
> UBUNTU: SAUCE: pwm: sun8i-v536: document device tree bindings
> UBUNTU: SAUCE: pwm: sunxi: Add Allwinner SoC PWM controller driver
>
> Emil Renner Berthing (7):
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add misc nodes
> UBUNTU: SAUCE: riscv: dts: allwinner: Keep aldo regulator on
> UBUNTU: SAUCE: riscv: dts: allwinner: Add button on the Nezha board
> UBUNTU: SAUCE: riscv: dts: allwinner: Add button on the Lichee RV Dock
> UBUNTU: [Config] riscv: updateconfigs for Allwinner D1 support
> UBUNTU: [Config] riscv: Build in cpufreq-dt like other archs
> UBUNTU: [Config] riscv: Default to performance cpufreq governor
>
> Fabien Poussin (1):
> clk: sunxi-ng: d1: Add CAN bus gates and resets
>
> Icenowy Zheng (1):
> dt-bindings: timer: sifive,clint: add comaptibles for T-Head's C9xx
>
> Jagan Teki (1):
> UBUNTU: SAUCE: drm/sun4i: tcon_top: Register reset, clock gates in probe
>
> Lad Prabhakar (1):
> clocksource/drivers/riscv: Get rid of clocksource_arch_init() callback
>
> Randy Dunlap (1):
> clk: sunxi-ng: fix ccu_mmc_timing.c kernel-doc issues
>
> Roman Beranek (1):
> UBUNTU: SAUCE: drm/sun4i: decouple TCON_DCLK_DIV value from pll_mipi/dotclock ratio
>
> Samuel Holland (74):
> clk: sunxi-ng: Avoid computing the rate twice
> clk: sunxi-ng: Remove duplicate ARCH_SUNXI dependencies
> clk: sunxi-ng: Move SoC driver conditions to dependencies
> clk: sunxi-ng: d1: Allow building for R528/T113
> dt-bindings: clock: Add D1 CAN bus gates and resets
> soc: sunxi: sram: Only iterate over SRAM children
> dt-bindings: power: Add Allwinner D1 PPU
> soc: sunxi: Add Allwinner D1 PPU driver
> dt-bindings: crypto: sun8i-ce: Add compatible for D1
> crypto: sun8i-ce - Add TRNG clock to the D1 variant
> dmaengine: sun6i: Set the maximum segment size
> dt-bindings: vendor-prefixes: Add Allwinner D1/D1s board vendors
> dt-bindings: riscv: Add Allwinner D1/D1s board compatibles
> riscv: dts: allwinner: Add the D1/D1s SoC devicetree
> riscv: dts: allwinner: Add MangoPi MQ devicetree
> riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
> riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
> riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
> riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
> riscv: Add the Allwinner SoC family Kconfig option
> riscv: dts: allwinner: d1: Add power controller node
> nvmem: sunxi_sid: Drop the workaround on A64
> clocksource/drivers/riscv: Increase the clock source rating
> riscv: dts: allwinner: d1: Add crypto engine node
> UBUNTU: SAUCE: mmc: sunxi-mmc: Correct the maximum segment size
> UBUNTU: SAUCE: dt-bindings: nvmem: Allow bit offsets greater than a byte
> UBUNTU: SAUCE: nvmem: core: Support reading cells with >= 8 bit offsets
> UBUNTU: SAUCE: regulator: dt-bindings: Add Allwinner D1 LDOs
> UBUNTU: SAUCE: regulator: sun20i: Add support for Allwinner D1 LDOs
> UBUNTU: SAUCE: dt-bindings: sram: sunxi-sram: Add optional regulators child
> UBUNTU: SAUCE: dt-bindings: thermal: sun8i: Add compatible for D1
> UBUNTU: SAUCE: thermal: sun8i: Document the unknown field
> UBUNTU: SAUCE: thermal: sun8i: Set the event type for new samples
> UBUNTU: SAUCE: thermal: sun8i: Use optional clock/reset getters
> UBUNTU: SAUCE: thermal: sun8i: Ensure vref is powered
> UBUNTU: SAUCE: thermal: sun8i: Add support for the D1 variant
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add thermal sensor and zone
> UBUNTU: SAUCE: pwm: sun8i-v536: Add support for the Allwinner D1
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add PWM support
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Hook up PWM-controlled CPU voltage regulators
> UBUNTU: SAUCE: drm/sun4i: dsi: Allow panel attach before card registration
> UBUNTU: SAUCE: drm/sun4i: mixer: Remove unused CMA headers
> UBUNTU: SAUCE: drm/sun4i: tcon: Always protect the LCD dotclock rate
> UBUNTU: SAUCE: riscv: dts: allwinner: lichee-rv-86-panel-480p: Add panel
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add HDMI pipeline
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Enable HDMI on supported boards
> UBUNTU: SAUCE: dt-bindings: display: sun4i-tcon: Add external LVDS PHY
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add LVDS0 PHY
> UBUNTU: SAUCE: dt-bindings: leds: Add Allwinner A100 LED controller
> UBUNTU: SAUCE: leds: sun50i-a100: New driver for the A100 LED controller
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add LED controller node
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add RGB LEDs to boards
> UBUNTU: SAUCE: ASoC: sun20i-codec: New driver for D1 internal codec
> UBUNTU: SAUCE: [WIP] ASoC: sun20i-codec: What is this ramp thing?
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add sound cards to boards
> UBUNTU: SAUCE: dt-bindings: display: sun8i-a83t-dw-hdmi: Remove #phy-cells
> UBUNTU: SAUCE: dt-bindings: display: Add D1 HDMI compatibles
> UBUNTU: SAUCE: drm/sun4i: Add support for D1 HDMI
> UBUNTU: SAUCE: drm/sun4i: sun8i-hdmi-phy: Add support for D1 PHY
> UBUNTU: SAUCE: [HACK] drm/sun4i: Copy in BSP code for D1 HDMI PHY
> UBUNTU: SAUCE: dt-bindings: iommu: sun50i: Add compatible for Allwinner D1
> UBUNTU: SAUCE: iommu/sun50i: Support variants without an external reset
> UBUNTU: SAUCE: iommu/sun50i: Ensure bypass is disabled
> UBUNTU: SAUCE: iommu/sun50i: Add support for the D1 variant
> UBUNTU: SAUCE: iommu/sun50i: Ensure the IOMMU can be used for DMA
> UBUNTU: SAUCE: riscv: dts: allwinner: d1: Add IOMMU node
> UBUNTU: SAUCE: riscv: mm: Use IOMMU for DMA when available
> UBUNTU: SAUCE: dt-bindings: spi: sun6i: Add R329 variant
> UBUNTU: SAUCE: spi: spi-sun6i: Use a struct for quirks
> UBUNTU: SAUCE: spi: spi-sun6i: Add Allwinner R329 support
> UBUNTU: SAUCE: [WIP] spi: spi-sun6i: Dual/Quad RX Support
> UBUNTU: SAUCE: riscv: dts: allwinner: Add SPI support
> UBUNTU: SAUCE: dt-bindings: display: Add Sitronix ST7701s panel binding
> UBUNTU: SAUCE: drm/panel: Add driver for ST7701s DPI LCD panel
>
> Trevor Woerner (1):
> riscv: dts: nezha-d1: add gpio-line-names
>
> .../bindings/crypto/allwinner,sun8i-ce.yaml | 33 +-
> .../bindings/display/allwinner,sun4i-a10-tcon.yaml | 7 +
> .../display/allwinner,sun8i-a83t-dw-hdmi.yaml | 4 +-
> .../display/allwinner,sun8i-a83t-hdmi-phy.yaml | 1 +
> .../bindings/display/panel/sitronix,st7701s.yaml | 32 +
> .../bindings/iommu/allwinner,sun50i-h6-iommu.yaml | 16 +-
> .../bindings/leds/allwinner,sun50i-a100-ledc.yaml | 139 +++
> Documentation/devicetree/bindings/nvmem/nvmem.yaml | 2 +-
> .../bindings/power/allwinner,sun20i-d1-ppu.yaml | 54 ++
> .../devicetree/bindings/pwm/pwm-sun8i-v536.txt | 24 +
> .../regulator/allwinner,sun20i-d1-analog-ldos.yaml | 74 ++
> .../regulator/allwinner,sun20i-d1-system-ldos.yaml | 37 +
> Documentation/devicetree/bindings/riscv/sunxi.yaml | 69 ++
> .../bindings/spi/allwinner,sun6i-a31-spi.yaml | 8 +
> .../sram/allwinner,sun4i-a10-system-control.yaml | 28 +
> .../bindings/thermal/allwinner,sun8i-a83t-ths.yaml | 21 +-
> .../devicetree/bindings/timer/riscv,timer.yaml | 52 ++
> .../devicetree/bindings/timer/sifive,clint.yaml | 8 +
> .../devicetree/bindings/vendor-prefixes.yaml | 4 +
> MAINTAINERS | 6 +
> arch/riscv/Kconfig | 1 -
> arch/riscv/Kconfig.socs | 9 +
> arch/riscv/boot/dts/Makefile | 1 +
> arch/riscv/boot/dts/allwinner/Makefile | 9 +
> .../dts/allwinner/sun20i-common-regulators.dtsi | 28 +
> .../dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts | 149 ++++
> .../sun20i-d1-lichee-rv-86-panel-480p.dts | 80 ++
> .../sun20i-d1-lichee-rv-86-panel-720p.dts | 10 +
> .../allwinner/sun20i-d1-lichee-rv-86-panel.dtsi | 140 +++
> .../dts/allwinner/sun20i-d1-lichee-rv-dock.dts | 161 ++++
> .../boot/dts/allwinner/sun20i-d1-lichee-rv.dts | 93 ++
> .../dts/allwinner/sun20i-d1-mangopi-mq-pro.dts | 171 ++++
> arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts | 350 ++++++++
> arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi | 149 ++++
> .../boot/dts/allwinner/sun20i-d1s-mangopi-mq.dts | 128 +++
> arch/riscv/boot/dts/allwinner/sun20i-d1s.dtsi | 130 +++
> arch/riscv/boot/dts/allwinner/sunxi-d1-t113.dtsi | 65 ++
> arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi | 944 +++++++++++++++++++++
> arch/riscv/kernel/time.c | 9 -
> arch/riscv/mm/dma-noncoherent.c | 4 +
> debian.riscv/config/annotations | 128 ++-
> drivers/clk/sunxi-ng/Kconfig | 71 +-
> drivers/clk/sunxi-ng/ccu-sun20i-d1.c | 13 +-
> drivers/clk/sunxi-ng/ccu-sun20i-d1.h | 2 +-
> drivers/clk/sunxi-ng/ccu_mmc_timing.c | 8 +-
> drivers/clk/sunxi-ng/ccu_mp.c | 11 +-
> drivers/clk/sunxi-ng/ccu_nk.c | 9 +-
> drivers/clk/sunxi-ng/ccu_nkm.c | 10 +-
> drivers/clk/sunxi-ng/ccu_nkmp.c | 10 +-
> drivers/clk/sunxi-ng/ccu_nm.c | 9 +-
> drivers/clocksource/timer-riscv.c | 17 +-
> drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 1 +
> drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h | 2 +-
> drivers/dma/sun6i-dma.c | 3 +
> drivers/gpu/drm/panel/Kconfig | 8 +
> drivers/gpu/drm/panel/Makefile | 1 +
> drivers/gpu/drm/panel/panel-sitronix-st7701s.c | 444 ++++++++++
> drivers/gpu/drm/sun4i/aw_phy.h | 411 +++++++++
> drivers/gpu/drm/sun4i/sun4i_dotclock.c | 4 +
> drivers/gpu/drm/sun4i/sun4i_tcon.c | 50 +-
> drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 8 +-
> drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 11 +-
> drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 170 ++++
> drivers/gpu/drm/sun4i/sun8i_hdmi_phy.c | 188 ++++
> drivers/gpu/drm/sun4i/sun8i_mixer.c | 2 +-
> drivers/gpu/drm/sun4i/sun8i_tcon_top.c | 42 +-
> drivers/iommu/Kconfig | 1 +
> drivers/iommu/sun50i-iommu.c | 24 +-
> drivers/leds/Kconfig | 9 +
> drivers/leds/Makefile | 1 +
> drivers/leds/leds-sun50i-a100.c | 554 ++++++++++++
> drivers/mmc/host/sunxi-mmc.c | 14 +-
> drivers/nvmem/core.c | 43 +-
> drivers/nvmem/sunxi_sid.c | 8 +-
> drivers/pwm/Kconfig | 11 +
> drivers/pwm/Makefile | 1 +
> drivers/pwm/pwm-sun8i-v536.c | 405 +++++++++
> drivers/regulator/Kconfig | 8 +
> drivers/regulator/Makefile | 1 +
> drivers/regulator/sun20i-regulator.c | 232 +++++
> drivers/soc/sunxi/Kconfig | 9 +
> drivers/soc/sunxi/Makefile | 1 +
> drivers/soc/sunxi/sun20i-ppu.c | 207 +++++
> drivers/soc/sunxi/sunxi_sram.c | 3 +
> drivers/spi/spi-sun6i.c | 127 ++-
> drivers/thermal/sun8i_thermal.c | 81 +-
> include/dt-bindings/clock/sun20i-d1-ccu.h | 2 +
> .../dt-bindings/power/allwinner,sun20i-d1-ppu.h | 10 +
> include/dt-bindings/reset/sun20i-d1-ccu.h | 2 +
> sound/soc/sunxi/Kconfig | 6 +
> sound/soc/sunxi/Makefile | 1 +
> sound/soc/sunxi/sun20i-codec.c | 890 +++++++++++++++++++
> 92 files changed, 7283 insertions(+), 251 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/display/panel/sitronix,st7701s.yaml
> create mode 100644 Documentation/devicetree/bindings/leds/allwinner,sun50i-a100-ledc.yaml
> create mode 100644 Documentation/devicetree/bindings/power/allwinner,sun20i-d1-ppu.yaml
> create mode 100644 Documentation/devicetree/bindings/pwm/pwm-sun8i-v536.txt
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-analog-ldos.yaml
> create mode 100644 Documentation/devicetree/bindings/regulator/allwinner,sun20i-d1-system-ldos.yaml
> create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
> create mode 100644 Documentation/devicetree/bindings/timer/riscv,timer.yaml
> create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-common-regulators.dtsi
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1s-mangopi-mq.dts
> create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1s.dtsi
> create mode 100644 arch/riscv/boot/dts/allwinner/sunxi-d1-t113.dtsi
> create mode 100644 arch/riscv/boot/dts/allwinner/sunxi-d1s-t113.dtsi
> create mode 100644 drivers/gpu/drm/panel/panel-sitronix-st7701s.c
> create mode 100644 drivers/gpu/drm/sun4i/aw_phy.h
> create mode 100644 drivers/leds/leds-sun50i-a100.c
> create mode 100644 drivers/pwm/pwm-sun8i-v536.c
> create mode 100644 drivers/regulator/sun20i-regulator.c
> create mode 100644 drivers/soc/sunxi/sun20i-ppu.c
> create mode 100644 include/dt-bindings/power/allwinner,sun20i-d1-ppu.h
> create mode 100644 sound/soc/sunxi/sun20i-codec.c
Not sure where to place this. The submission was lunar:linux-riscv, the
applied for mantic. Are you still waiting for a second ack to apply this
to lunar?
- Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xE8675DEECBEECEA3.asc
Type: application/pgp-keys
Size: 44613 bytes
Desc: OpenPGP public key
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20230807/caee89aa/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20230807/caee89aa/attachment-0001.sig>
More information about the kernel-team
mailing list