[PATCH v2 00/10] Support for Allwinner V853 SoC
Rob Herring (Arm)
robh at kernel.org
Wed Feb 5 11:17:08 PST 2025
On Wed, 05 Feb 2025 13:52:15 +0100, Andras Szemzo wrote:
> V85x is a SoC from Allwinner with video encoding targeted for the field of
> IP Camera. It integrates the single CA7 core, and a T-Head E907 RISC-V mcu.
> The SoC has the usual Allwinner peripherals and a Vivante NPU.
> V853 is a BGA package without DRAM, V851s/V851s3 has the same die with
> co-packaged 64MB/128MB DRAM (in a QFN88 package).
>
> This patchset tries to add basical support for the V853 device family.
>
> Changelog - v2:
> - rebased on 6.14-rc1
> - add a needed gate with key support to sunxi clk
> - rewrite the ccu-r driver
> - fix license issues
> - remove the pinctrl binding, as it has beed applied
> - rework the pinctrl driver, use the new sunxi dt based mux support. This new pinctrl
> driver depends on the new sunxi device-tree based mux support patch series [1].
> - remove the new usb phy binding, as the v853's usb phy is very close to d1/a64
> - add a board dts
> - ccu: add module description
> - ccu: fix PLL enable bits, and min multipliers
> - ccu: change PLL flags to CLK_SET_RATE_GATE
> - ccu: use SUNXI_CCU_M_HWS at peripheral PLLs
> - ccu: convert the VIDEO and CSI PLLs from nm type to nkmp according to BSP
> - ccu: cpu axi clk use pointer
> - ccu: fix comments
> - ccu: swap i2s1 and i2s0 bus clocks
> - ccu: fix indentation
> - ccu: fix RST_BUS_SPIF order
> - ccu: convert RST_RISCV_CLK_GATING from reset to gate
>
> [1]: https://lore.kernel.org/linux-sunxi/20241111005750.13071-1-andre.przywara@arm.com/T/
>
> Andras Szemzo (10):
> clk: sunxi-ng: allow key feature in ccu reset and gate
> pinctrl: sunxi: add driver for Allwinner V853
> dt-bindings: clock: sunxi-ng: add compatibles for V853
> clk: sunxi-ng: add CCU drivers for V853
> dt-bindings: power: add V853 ppu bindings
> pmdomain: sunxi: add V853 ppu support
> dt-bindings: phy: allwinner: add v853 usb phy
> phy: allwinner: add v853 usb phy compatible
> ARM: dts: sun8i: add DTSI file for V853
> ARM: dts: sun8i: add DTS file for yuzuki-lizard V851s
>
> .../clock/allwinner,sun4i-a10-ccu.yaml | 3 +
> .../phy/allwinner,sun50i-a64-usb-phy.yaml | 2 +
> .../power/allwinner,sun20i-d1-ppu.yaml | 1 +
> arch/arm/boot/dts/allwinner/Makefile | 1 +
> .../boot/dts/allwinner/sun8i-v851s-lizard.dts | 196 +++
> arch/arm/boot/dts/allwinner/sun8i-v853.dtsi | 656 ++++++++++
> drivers/clk/sunxi-ng/Kconfig | 10 +
> drivers/clk/sunxi-ng/Makefile | 4 +
> drivers/clk/sunxi-ng/ccu-sun8i-v853-r.c | 120 ++
> drivers/clk/sunxi-ng/ccu-sun8i-v853-r.h | 14 +
> drivers/clk/sunxi-ng/ccu-sun8i-v853.c | 1145 +++++++++++++++++
> drivers/clk/sunxi-ng/ccu-sun8i-v853.h | 14 +
> drivers/clk/sunxi-ng/ccu_common.h | 2 +
> drivers/clk/sunxi-ng/ccu_gate.c | 6 +
> drivers/clk/sunxi-ng/ccu_gate.h | 14 +
> drivers/clk/sunxi-ng/ccu_mux.c | 4 +-
> drivers/clk/sunxi-ng/ccu_reset.c | 7 +
> drivers/clk/sunxi-ng/ccu_reset.h | 2 +-
> drivers/phy/allwinner/phy-sun4i-usb.c | 10 +
> drivers/pinctrl/sunxi/Kconfig | 5 +
> drivers/pinctrl/sunxi/Makefile | 1 +
> drivers/pinctrl/sunxi/pinctrl-sun8i-v853.c | 53 +
> drivers/pmdomain/sunxi/sun20i-ppu.c | 15 +
> .../clock/allwinner,sun8i-v853-ccu.h | 132 ++
> .../clock/allwinner,sun8i-v853-r-ccu.h | 16 +
> .../power/allwinner,sun8i-v853-ppu.h | 10 +
> .../reset/allwinner,sun8i-v853-ccu.h | 60 +
> .../reset/allwinner,sun8i-v853-r-ccu.h | 14 +
> 28 files changed, 2513 insertions(+), 4 deletions(-)
> create mode 100644 arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dts
> create mode 100644 arch/arm/boot/dts/allwinner/sun8i-v853.dtsi
> create mode 100644 drivers/clk/sunxi-ng/ccu-sun8i-v853-r.c
> create mode 100644 drivers/clk/sunxi-ng/ccu-sun8i-v853-r.h
> create mode 100644 drivers/clk/sunxi-ng/ccu-sun8i-v853.c
> create mode 100644 drivers/clk/sunxi-ng/ccu-sun8i-v853.h
> create mode 100644 drivers/pinctrl/sunxi/pinctrl-sun8i-v853.c
> create mode 100644 include/dt-bindings/clock/allwinner,sun8i-v853-ccu.h
> create mode 100644 include/dt-bindings/clock/allwinner,sun8i-v853-r-ccu.h
> create mode 100644 include/dt-bindings/power/allwinner,sun8i-v853-ppu.h
> create mode 100644 include/dt-bindings/reset/allwinner,sun8i-v853-ccu.h
> create mode 100644 include/dt-bindings/reset/allwinner,sun8i-v853-r-ccu.h
>
> --
> 2.39.5
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
New warnings running 'make CHECK_DTBS=y for arch/arm/boot/dts/allwinner/' for 20250205125225.1152849-1-szemzo.andras at gmail.com:
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /: memory: False schema does not allow {'reg': [[1073741824, 67108864]]}
from schema $id: http://devicetree.org/schemas/root-node.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /: memory: 'device_type' is a required property
from schema $id: http://devicetree.org/schemas/memory.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /: failed to match any schema with compatible: ['yuzukihd,lizard', 'allwinner,sun8i-v853', 'allwinner,sun8i']
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /: failed to match any schema with compatible: ['yuzukihd,lizard', 'allwinner,sun8i-v853', 'allwinner,sun8i']
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /: failed to match any schema with compatible: ['yuzukihd,lizard', 'allwinner,sun8i-v853', 'allwinner,sun8i']
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: cpu at 0: compatible: ['arm,cortex-a7', 'arm,armv7'] is too long
from schema $id: http://devicetree.org/schemas/arm/cpus.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /cpus/cpu at 0: failed to match any schema with compatible: ['arm,cortex-a7', 'arm,armv7']
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: pinctrl at 2000000: uart0-ph9-pins: 'allwinner,pinmux' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/pinctrl/allwinner,sun4i-a10-pinctrl.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: pinctrl at 2000000: spi0-pins: 'allwinner,pinmux' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/pinctrl/allwinner,sun4i-a10-pinctrl.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: pinctrl at 2000000: i2c2-ph11-pins: 'allwinner,pinmux' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/pinctrl/allwinner,sun4i-a10-pinctrl.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: pinctrl at 2000000: mmc0-pins: 'allwinner,pinmux' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/pinctrl/allwinner,sun4i-a10-pinctrl.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: pinctrl at 2000000: mmc1-pins: 'allwinner,pinmux' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/pinctrl/allwinner,sun4i-a10-pinctrl.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 2001000: clock-names:1: 'losc' was expected
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 2001000: clock-names:2: 'iosc' was expected
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500000: dma-names:0: 'tx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500000: dma-names:1: 'rx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500000: Unevaluated properties are not allowed ('dma-names' was unexpected)
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500400: dma-names:0: 'tx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500400: dma-names:1: 'rx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500800: dma-names:0: 'tx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500800: dma-names:1: 'rx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500c00: dma-names:0: 'tx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: serial at 2500c00: dma-names:1: 'rx' was expected
from schema $id: http://devicetree.org/schemas/serial/snps-dw-apb-uart.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: syscon at 3000000: sram at 20000:sram-section at 0:compatible: 'oneOf' conditional failed, one must be fixed:
['allwinner,sun8i-v3s-sram-c', 'allwinner,sun4i-a10-sram-c1'] is too long
'allwinner,sun4i-a10-sram-a3-a4' was expected
'allwinner,sun4i-a10-sram-c1' was expected
'allwinner,sun4i-a10-sram-d' was expected
'allwinner,sun50i-a64-sram-c' was expected
'allwinner,sun8i-v3s-sram-c' is not one of ['allwinner,sun5i-a13-sram-a3-a4', 'allwinner,sun7i-a20-sram-a3-a4']
'allwinner,sun8i-v3s-sram-c' is not one of ['allwinner,sun5i-a13-sram-c1', 'allwinner,sun7i-a20-sram-c1', 'allwinner,sun8i-a23-sram-c1', 'allwinner,sun8i-h3-sram-c1', 'allwinner,sun8i-r40-sram-c1', 'allwinner,sun50i-a64-sram-c1', 'allwinner,sun50i-h5-sram-c1', 'allwinner,sun50i-h6-sram-c1']
'allwinner,sun8i-v3s-sram-c' is not one of ['allwinner,suniv-f1c100s-sram-d', 'allwinner,sun5i-a13-sram-d', 'allwinner,sun7i-a20-sram-d']
'allwinner,sun50i-h6-sram-c' was expected
from schema $id: http://devicetree.org/schemas/sram/allwinner,sun4i-a10-system-control.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: /soc/syscon at 3000000/sram at 20000/sram-section at 0: failed to match any schema with compatible: ['allwinner,sun8i-v3s-sram-c', 'allwinner,sun4i-a10-sram-c1']
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: hwlock at 3005000: '#hwlock-cells' is a required property
from schema $id: http://devicetree.org/schemas/hwlock/allwinner,sun6i-a31-hwspinlock.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: hwlock at 3005000: 'clock-names', 'interrupts', 'reset-names' do not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/hwlock/allwinner,sun6i-a31-hwspinlock.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: hstimer at 3008000: interrupts: [[0, 55, 4], [0, 56, 4]] is too short
from schema $id: http://devicetree.org/schemas/timer/allwinner,sun5i-a13-hstimer.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: reg: [[68158464, 256], [68163584, 256]] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: reg-names: ['phy_ctrl', 'pmu0'] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: clocks: [[1, 94]] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: clock-names: ['usb0_phy'] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: resets: [[1, 38]] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: reset-names: ['usb0_reset'] is too short
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: phy at 4100400: 'usb0_id_det-gpio' does not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/phy/allwinner,sun50i-a64-usb-phy.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clocks: [[4], [5, 2], [5, 0], [1, 10], [1, 19]] is too long
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clock-names:1: 'losc' was expected
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clock-names:2: 'iosc' was expected
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clock-names: ['hosc', 'iosc', 'losc', 'pll-periph', 'pll-audio'] is too long
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clocks: [[4], [5, 2], [5, 0], [1, 10], [1, 19]] is too long
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: clock-controller at 7010000: clock-names: ['hosc', 'iosc', 'losc', 'pll-periph', 'pll-audio'] is too long
from schema $id: http://devicetree.org/schemas/clock/allwinner,sun4i-a10-ccu.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: intc-nmi at 7010320: $nodename:0: 'intc-nmi at 7010320' does not match '^interrupt-controller(@[0-9a-f,]+)*$'
from schema $id: http://devicetree.org/schemas/interrupt-controller/allwinner,sun7i-a20-sc-nmi.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: intc-nmi at 7010320: Unevaluated properties are not allowed ('#address-cells' was unexpected)
from schema $id: http://devicetree.org/schemas/interrupt-controller/allwinner,sun7i-a20-sc-nmi.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: rtc at 7090000: clocks: [[17, 4]] is too short
from schema $id: http://devicetree.org/schemas/rtc/allwinner,sun6i-a31-rtc.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: rtc at 7090000: clock-names: ['bus'] is too short
from schema $id: http://devicetree.org/schemas/rtc/allwinner,sun6i-a31-rtc.yaml#
arch/arm/boot/dts/allwinner/sun8i-v851s-lizard.dtb: rtc at 7090000: 'resets', 'wakeup-source' do not match any of the regexes: 'pinctrl-[0-9]+'
from schema $id: http://devicetree.org/schemas/rtc/allwinner,sun6i-a31-rtc.yaml#
More information about the linux-riscv
mailing list