162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 262306a36Sopenharmony_ci// Copyright (C) 2020 Arm Ltd. 362306a36Sopenharmony_ci// based on the H6 dtsi, which is: 462306a36Sopenharmony_ci// Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.io> 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 762306a36Sopenharmony_ci#include <dt-bindings/clock/sun50i-h616-ccu.h> 862306a36Sopenharmony_ci#include <dt-bindings/clock/sun50i-h6-r-ccu.h> 962306a36Sopenharmony_ci#include <dt-bindings/clock/sun6i-rtc.h> 1062306a36Sopenharmony_ci#include <dt-bindings/reset/sun50i-h616-ccu.h> 1162306a36Sopenharmony_ci#include <dt-bindings/reset/sun50i-h6-r-ccu.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/ { 1462306a36Sopenharmony_ci interrupt-parent = <&gic>; 1562306a36Sopenharmony_ci #address-cells = <2>; 1662306a36Sopenharmony_ci #size-cells = <2>; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci cpus { 1962306a36Sopenharmony_ci #address-cells = <1>; 2062306a36Sopenharmony_ci #size-cells = <0>; 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci cpu0: cpu@0 { 2362306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 2462306a36Sopenharmony_ci device_type = "cpu"; 2562306a36Sopenharmony_ci reg = <0>; 2662306a36Sopenharmony_ci enable-method = "psci"; 2762306a36Sopenharmony_ci clocks = <&ccu CLK_CPUX>; 2862306a36Sopenharmony_ci }; 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci cpu1: cpu@1 { 3162306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 3262306a36Sopenharmony_ci device_type = "cpu"; 3362306a36Sopenharmony_ci reg = <1>; 3462306a36Sopenharmony_ci enable-method = "psci"; 3562306a36Sopenharmony_ci clocks = <&ccu CLK_CPUX>; 3662306a36Sopenharmony_ci }; 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci cpu2: cpu@2 { 3962306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 4062306a36Sopenharmony_ci device_type = "cpu"; 4162306a36Sopenharmony_ci reg = <2>; 4262306a36Sopenharmony_ci enable-method = "psci"; 4362306a36Sopenharmony_ci clocks = <&ccu CLK_CPUX>; 4462306a36Sopenharmony_ci }; 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci cpu3: cpu@3 { 4762306a36Sopenharmony_ci compatible = "arm,cortex-a53"; 4862306a36Sopenharmony_ci device_type = "cpu"; 4962306a36Sopenharmony_ci reg = <3>; 5062306a36Sopenharmony_ci enable-method = "psci"; 5162306a36Sopenharmony_ci clocks = <&ccu CLK_CPUX>; 5262306a36Sopenharmony_ci }; 5362306a36Sopenharmony_ci }; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci reserved-memory { 5662306a36Sopenharmony_ci #address-cells = <2>; 5762306a36Sopenharmony_ci #size-cells = <2>; 5862306a36Sopenharmony_ci ranges; 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci /* 6162306a36Sopenharmony_ci * 256 KiB reserved for Trusted Firmware-A (BL31). 6262306a36Sopenharmony_ci * This is added by BL31 itself, but some bootloaders fail 6362306a36Sopenharmony_ci * to propagate this into the DTB handed to kernels. 6462306a36Sopenharmony_ci */ 6562306a36Sopenharmony_ci secmon@40000000 { 6662306a36Sopenharmony_ci reg = <0x0 0x40000000 0x0 0x40000>; 6762306a36Sopenharmony_ci no-map; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci osc24M: osc24M-clk { 7262306a36Sopenharmony_ci #clock-cells = <0>; 7362306a36Sopenharmony_ci compatible = "fixed-clock"; 7462306a36Sopenharmony_ci clock-frequency = <24000000>; 7562306a36Sopenharmony_ci clock-output-names = "osc24M"; 7662306a36Sopenharmony_ci }; 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ci pmu { 7962306a36Sopenharmony_ci compatible = "arm,cortex-a53-pmu"; 8062306a36Sopenharmony_ci interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>, 8162306a36Sopenharmony_ci <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>, 8262306a36Sopenharmony_ci <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>, 8362306a36Sopenharmony_ci <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 8462306a36Sopenharmony_ci interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 8562306a36Sopenharmony_ci }; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci psci { 8862306a36Sopenharmony_ci compatible = "arm,psci-0.2"; 8962306a36Sopenharmony_ci method = "smc"; 9062306a36Sopenharmony_ci }; 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci timer { 9362306a36Sopenharmony_ci compatible = "arm,armv8-timer"; 9462306a36Sopenharmony_ci arm,no-tick-in-suspend; 9562306a36Sopenharmony_ci interrupts = <GIC_PPI 13 9662306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 9762306a36Sopenharmony_ci <GIC_PPI 14 9862306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 9962306a36Sopenharmony_ci <GIC_PPI 11 10062306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 10162306a36Sopenharmony_ci <GIC_PPI 10 10262306a36Sopenharmony_ci (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 10362306a36Sopenharmony_ci }; 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci soc { 10662306a36Sopenharmony_ci compatible = "simple-bus"; 10762306a36Sopenharmony_ci #address-cells = <1>; 10862306a36Sopenharmony_ci #size-cells = <1>; 10962306a36Sopenharmony_ci ranges = <0x0 0x0 0x0 0x40000000>; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci syscon: syscon@3000000 { 11262306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-system-control"; 11362306a36Sopenharmony_ci reg = <0x03000000 0x1000>; 11462306a36Sopenharmony_ci #address-cells = <1>; 11562306a36Sopenharmony_ci #size-cells = <1>; 11662306a36Sopenharmony_ci ranges; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci sram_c: sram@28000 { 11962306a36Sopenharmony_ci compatible = "mmio-sram"; 12062306a36Sopenharmony_ci reg = <0x00028000 0x30000>; 12162306a36Sopenharmony_ci #address-cells = <1>; 12262306a36Sopenharmony_ci #size-cells = <1>; 12362306a36Sopenharmony_ci ranges = <0 0x00028000 0x30000>; 12462306a36Sopenharmony_ci }; 12562306a36Sopenharmony_ci }; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_ci ccu: clock@3001000 { 12862306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ccu"; 12962306a36Sopenharmony_ci reg = <0x03001000 0x1000>; 13062306a36Sopenharmony_ci clocks = <&osc24M>, <&rtc CLK_OSC32K>, <&rtc CLK_IOSC>; 13162306a36Sopenharmony_ci clock-names = "hosc", "losc", "iosc"; 13262306a36Sopenharmony_ci #clock-cells = <1>; 13362306a36Sopenharmony_ci #reset-cells = <1>; 13462306a36Sopenharmony_ci }; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci watchdog: watchdog@30090a0 { 13762306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-wdt", 13862306a36Sopenharmony_ci "allwinner,sun6i-a31-wdt"; 13962306a36Sopenharmony_ci reg = <0x030090a0 0x20>; 14062306a36Sopenharmony_ci interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 14162306a36Sopenharmony_ci clocks = <&osc24M>; 14262306a36Sopenharmony_ci }; 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci pio: pinctrl@300b000 { 14562306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-pinctrl"; 14662306a36Sopenharmony_ci reg = <0x0300b000 0x400>; 14762306a36Sopenharmony_ci interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>, 14862306a36Sopenharmony_ci <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>, 14962306a36Sopenharmony_ci <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, 15062306a36Sopenharmony_ci <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>, 15162306a36Sopenharmony_ci <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, 15262306a36Sopenharmony_ci <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 15362306a36Sopenharmony_ci <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 15462306a36Sopenharmony_ci <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 15562306a36Sopenharmony_ci clocks = <&ccu CLK_APB1>, <&osc24M>, <&rtc CLK_OSC32K>; 15662306a36Sopenharmony_ci clock-names = "apb", "hosc", "losc"; 15762306a36Sopenharmony_ci gpio-controller; 15862306a36Sopenharmony_ci #gpio-cells = <3>; 15962306a36Sopenharmony_ci interrupt-controller; 16062306a36Sopenharmony_ci #interrupt-cells = <3>; 16162306a36Sopenharmony_ci 16262306a36Sopenharmony_ci ext_rgmii_pins: rgmii-pins { 16362306a36Sopenharmony_ci pins = "PI0", "PI1", "PI2", "PI3", "PI4", 16462306a36Sopenharmony_ci "PI5", "PI7", "PI8", "PI9", "PI10", 16562306a36Sopenharmony_ci "PI11", "PI12", "PI13", "PI14", "PI15", 16662306a36Sopenharmony_ci "PI16"; 16762306a36Sopenharmony_ci function = "emac0"; 16862306a36Sopenharmony_ci drive-strength = <40>; 16962306a36Sopenharmony_ci }; 17062306a36Sopenharmony_ci 17162306a36Sopenharmony_ci i2c0_pins: i2c0-pins { 17262306a36Sopenharmony_ci pins = "PI6", "PI7"; 17362306a36Sopenharmony_ci function = "i2c0"; 17462306a36Sopenharmony_ci }; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci i2c3_ph_pins: i2c3-ph-pins { 17762306a36Sopenharmony_ci pins = "PH4", "PH5"; 17862306a36Sopenharmony_ci function = "i2c3"; 17962306a36Sopenharmony_ci }; 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci ir_rx_pin: ir-rx-pin { 18262306a36Sopenharmony_ci pins = "PH10"; 18362306a36Sopenharmony_ci function = "ir_rx"; 18462306a36Sopenharmony_ci }; 18562306a36Sopenharmony_ci 18662306a36Sopenharmony_ci mmc0_pins: mmc0-pins { 18762306a36Sopenharmony_ci pins = "PF0", "PF1", "PF2", "PF3", 18862306a36Sopenharmony_ci "PF4", "PF5"; 18962306a36Sopenharmony_ci function = "mmc0"; 19062306a36Sopenharmony_ci drive-strength = <30>; 19162306a36Sopenharmony_ci bias-pull-up; 19262306a36Sopenharmony_ci }; 19362306a36Sopenharmony_ci 19462306a36Sopenharmony_ci /omit-if-no-ref/ 19562306a36Sopenharmony_ci mmc1_pins: mmc1-pins { 19662306a36Sopenharmony_ci pins = "PG0", "PG1", "PG2", "PG3", 19762306a36Sopenharmony_ci "PG4", "PG5"; 19862306a36Sopenharmony_ci function = "mmc1"; 19962306a36Sopenharmony_ci drive-strength = <30>; 20062306a36Sopenharmony_ci bias-pull-up; 20162306a36Sopenharmony_ci }; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci mmc2_pins: mmc2-pins { 20462306a36Sopenharmony_ci pins = "PC0", "PC1", "PC5", "PC6", 20562306a36Sopenharmony_ci "PC8", "PC9", "PC10", "PC11", 20662306a36Sopenharmony_ci "PC13", "PC14", "PC15", "PC16"; 20762306a36Sopenharmony_ci function = "mmc2"; 20862306a36Sopenharmony_ci drive-strength = <30>; 20962306a36Sopenharmony_ci bias-pull-up; 21062306a36Sopenharmony_ci }; 21162306a36Sopenharmony_ci 21262306a36Sopenharmony_ci /omit-if-no-ref/ 21362306a36Sopenharmony_ci spi0_pins: spi0-pins { 21462306a36Sopenharmony_ci pins = "PC0", "PC2", "PC4"; 21562306a36Sopenharmony_ci function = "spi0"; 21662306a36Sopenharmony_ci }; 21762306a36Sopenharmony_ci 21862306a36Sopenharmony_ci /omit-if-no-ref/ 21962306a36Sopenharmony_ci spi0_cs0_pin: spi0-cs0-pin { 22062306a36Sopenharmony_ci pins = "PC3"; 22162306a36Sopenharmony_ci function = "spi0"; 22262306a36Sopenharmony_ci }; 22362306a36Sopenharmony_ci 22462306a36Sopenharmony_ci /omit-if-no-ref/ 22562306a36Sopenharmony_ci spi1_pins: spi1-pins { 22662306a36Sopenharmony_ci pins = "PH6", "PH7", "PH8"; 22762306a36Sopenharmony_ci function = "spi1"; 22862306a36Sopenharmony_ci }; 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci /omit-if-no-ref/ 23162306a36Sopenharmony_ci spi1_cs0_pin: spi1-cs0-pin { 23262306a36Sopenharmony_ci pins = "PH5"; 23362306a36Sopenharmony_ci function = "spi1"; 23462306a36Sopenharmony_ci }; 23562306a36Sopenharmony_ci 23662306a36Sopenharmony_ci uart0_ph_pins: uart0-ph-pins { 23762306a36Sopenharmony_ci pins = "PH0", "PH1"; 23862306a36Sopenharmony_ci function = "uart0"; 23962306a36Sopenharmony_ci }; 24062306a36Sopenharmony_ci 24162306a36Sopenharmony_ci /omit-if-no-ref/ 24262306a36Sopenharmony_ci uart1_pins: uart1-pins { 24362306a36Sopenharmony_ci pins = "PG6", "PG7"; 24462306a36Sopenharmony_ci function = "uart1"; 24562306a36Sopenharmony_ci }; 24662306a36Sopenharmony_ci 24762306a36Sopenharmony_ci /omit-if-no-ref/ 24862306a36Sopenharmony_ci uart1_rts_cts_pins: uart1-rts-cts-pins { 24962306a36Sopenharmony_ci pins = "PG8", "PG9"; 25062306a36Sopenharmony_ci function = "uart1"; 25162306a36Sopenharmony_ci }; 25262306a36Sopenharmony_ci }; 25362306a36Sopenharmony_ci 25462306a36Sopenharmony_ci gic: interrupt-controller@3021000 { 25562306a36Sopenharmony_ci compatible = "arm,gic-400"; 25662306a36Sopenharmony_ci reg = <0x03021000 0x1000>, 25762306a36Sopenharmony_ci <0x03022000 0x2000>, 25862306a36Sopenharmony_ci <0x03024000 0x2000>, 25962306a36Sopenharmony_ci <0x03026000 0x2000>; 26062306a36Sopenharmony_ci interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 26162306a36Sopenharmony_ci interrupt-controller; 26262306a36Sopenharmony_ci #interrupt-cells = <3>; 26362306a36Sopenharmony_ci }; 26462306a36Sopenharmony_ci 26562306a36Sopenharmony_ci mmc0: mmc@4020000 { 26662306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-mmc", 26762306a36Sopenharmony_ci "allwinner,sun50i-a100-mmc"; 26862306a36Sopenharmony_ci reg = <0x04020000 0x1000>; 26962306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_MMC0>, <&ccu CLK_MMC0>; 27062306a36Sopenharmony_ci clock-names = "ahb", "mmc"; 27162306a36Sopenharmony_ci resets = <&ccu RST_BUS_MMC0>; 27262306a36Sopenharmony_ci reset-names = "ahb"; 27362306a36Sopenharmony_ci interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 27462306a36Sopenharmony_ci pinctrl-names = "default"; 27562306a36Sopenharmony_ci pinctrl-0 = <&mmc0_pins>; 27662306a36Sopenharmony_ci status = "disabled"; 27762306a36Sopenharmony_ci max-frequency = <150000000>; 27862306a36Sopenharmony_ci cap-sd-highspeed; 27962306a36Sopenharmony_ci cap-mmc-highspeed; 28062306a36Sopenharmony_ci mmc-ddr-3_3v; 28162306a36Sopenharmony_ci cap-sdio-irq; 28262306a36Sopenharmony_ci #address-cells = <1>; 28362306a36Sopenharmony_ci #size-cells = <0>; 28462306a36Sopenharmony_ci }; 28562306a36Sopenharmony_ci 28662306a36Sopenharmony_ci mmc1: mmc@4021000 { 28762306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-mmc", 28862306a36Sopenharmony_ci "allwinner,sun50i-a100-mmc"; 28962306a36Sopenharmony_ci reg = <0x04021000 0x1000>; 29062306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_MMC1>, <&ccu CLK_MMC1>; 29162306a36Sopenharmony_ci clock-names = "ahb", "mmc"; 29262306a36Sopenharmony_ci resets = <&ccu RST_BUS_MMC1>; 29362306a36Sopenharmony_ci reset-names = "ahb"; 29462306a36Sopenharmony_ci interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 29562306a36Sopenharmony_ci pinctrl-names = "default"; 29662306a36Sopenharmony_ci pinctrl-0 = <&mmc1_pins>; 29762306a36Sopenharmony_ci status = "disabled"; 29862306a36Sopenharmony_ci max-frequency = <150000000>; 29962306a36Sopenharmony_ci cap-sd-highspeed; 30062306a36Sopenharmony_ci cap-mmc-highspeed; 30162306a36Sopenharmony_ci mmc-ddr-3_3v; 30262306a36Sopenharmony_ci cap-sdio-irq; 30362306a36Sopenharmony_ci #address-cells = <1>; 30462306a36Sopenharmony_ci #size-cells = <0>; 30562306a36Sopenharmony_ci }; 30662306a36Sopenharmony_ci 30762306a36Sopenharmony_ci mmc2: mmc@4022000 { 30862306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-emmc", 30962306a36Sopenharmony_ci "allwinner,sun50i-a100-emmc"; 31062306a36Sopenharmony_ci reg = <0x04022000 0x1000>; 31162306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_MMC2>, <&ccu CLK_MMC2>; 31262306a36Sopenharmony_ci clock-names = "ahb", "mmc"; 31362306a36Sopenharmony_ci resets = <&ccu RST_BUS_MMC2>; 31462306a36Sopenharmony_ci reset-names = "ahb"; 31562306a36Sopenharmony_ci interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 31662306a36Sopenharmony_ci pinctrl-names = "default"; 31762306a36Sopenharmony_ci pinctrl-0 = <&mmc2_pins>; 31862306a36Sopenharmony_ci status = "disabled"; 31962306a36Sopenharmony_ci max-frequency = <150000000>; 32062306a36Sopenharmony_ci cap-sd-highspeed; 32162306a36Sopenharmony_ci cap-mmc-highspeed; 32262306a36Sopenharmony_ci mmc-ddr-3_3v; 32362306a36Sopenharmony_ci cap-sdio-irq; 32462306a36Sopenharmony_ci #address-cells = <1>; 32562306a36Sopenharmony_ci #size-cells = <0>; 32662306a36Sopenharmony_ci }; 32762306a36Sopenharmony_ci 32862306a36Sopenharmony_ci uart0: serial@5000000 { 32962306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 33062306a36Sopenharmony_ci reg = <0x05000000 0x400>; 33162306a36Sopenharmony_ci interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 33262306a36Sopenharmony_ci reg-shift = <2>; 33362306a36Sopenharmony_ci reg-io-width = <4>; 33462306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART0>; 33562306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART0>; 33662306a36Sopenharmony_ci status = "disabled"; 33762306a36Sopenharmony_ci }; 33862306a36Sopenharmony_ci 33962306a36Sopenharmony_ci uart1: serial@5000400 { 34062306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 34162306a36Sopenharmony_ci reg = <0x05000400 0x400>; 34262306a36Sopenharmony_ci interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 34362306a36Sopenharmony_ci reg-shift = <2>; 34462306a36Sopenharmony_ci reg-io-width = <4>; 34562306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART1>; 34662306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART1>; 34762306a36Sopenharmony_ci status = "disabled"; 34862306a36Sopenharmony_ci }; 34962306a36Sopenharmony_ci 35062306a36Sopenharmony_ci uart2: serial@5000800 { 35162306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 35262306a36Sopenharmony_ci reg = <0x05000800 0x400>; 35362306a36Sopenharmony_ci interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 35462306a36Sopenharmony_ci reg-shift = <2>; 35562306a36Sopenharmony_ci reg-io-width = <4>; 35662306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART2>; 35762306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART2>; 35862306a36Sopenharmony_ci status = "disabled"; 35962306a36Sopenharmony_ci }; 36062306a36Sopenharmony_ci 36162306a36Sopenharmony_ci uart3: serial@5000c00 { 36262306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 36362306a36Sopenharmony_ci reg = <0x05000c00 0x400>; 36462306a36Sopenharmony_ci interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 36562306a36Sopenharmony_ci reg-shift = <2>; 36662306a36Sopenharmony_ci reg-io-width = <4>; 36762306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART3>; 36862306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART3>; 36962306a36Sopenharmony_ci status = "disabled"; 37062306a36Sopenharmony_ci }; 37162306a36Sopenharmony_ci 37262306a36Sopenharmony_ci uart4: serial@5001000 { 37362306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 37462306a36Sopenharmony_ci reg = <0x05001000 0x400>; 37562306a36Sopenharmony_ci interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 37662306a36Sopenharmony_ci reg-shift = <2>; 37762306a36Sopenharmony_ci reg-io-width = <4>; 37862306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART4>; 37962306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART4>; 38062306a36Sopenharmony_ci status = "disabled"; 38162306a36Sopenharmony_ci }; 38262306a36Sopenharmony_ci 38362306a36Sopenharmony_ci uart5: serial@5001400 { 38462306a36Sopenharmony_ci compatible = "snps,dw-apb-uart"; 38562306a36Sopenharmony_ci reg = <0x05001400 0x400>; 38662306a36Sopenharmony_ci interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 38762306a36Sopenharmony_ci reg-shift = <2>; 38862306a36Sopenharmony_ci reg-io-width = <4>; 38962306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_UART5>; 39062306a36Sopenharmony_ci resets = <&ccu RST_BUS_UART5>; 39162306a36Sopenharmony_ci status = "disabled"; 39262306a36Sopenharmony_ci }; 39362306a36Sopenharmony_ci 39462306a36Sopenharmony_ci i2c0: i2c@5002000 { 39562306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 39662306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 39762306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 39862306a36Sopenharmony_ci reg = <0x05002000 0x400>; 39962306a36Sopenharmony_ci interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 40062306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_I2C0>; 40162306a36Sopenharmony_ci resets = <&ccu RST_BUS_I2C0>; 40262306a36Sopenharmony_ci pinctrl-names = "default"; 40362306a36Sopenharmony_ci pinctrl-0 = <&i2c0_pins>; 40462306a36Sopenharmony_ci status = "disabled"; 40562306a36Sopenharmony_ci #address-cells = <1>; 40662306a36Sopenharmony_ci #size-cells = <0>; 40762306a36Sopenharmony_ci }; 40862306a36Sopenharmony_ci 40962306a36Sopenharmony_ci i2c1: i2c@5002400 { 41062306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 41162306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 41262306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 41362306a36Sopenharmony_ci reg = <0x05002400 0x400>; 41462306a36Sopenharmony_ci interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 41562306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_I2C1>; 41662306a36Sopenharmony_ci resets = <&ccu RST_BUS_I2C1>; 41762306a36Sopenharmony_ci status = "disabled"; 41862306a36Sopenharmony_ci #address-cells = <1>; 41962306a36Sopenharmony_ci #size-cells = <0>; 42062306a36Sopenharmony_ci }; 42162306a36Sopenharmony_ci 42262306a36Sopenharmony_ci i2c2: i2c@5002800 { 42362306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 42462306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 42562306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 42662306a36Sopenharmony_ci reg = <0x05002800 0x400>; 42762306a36Sopenharmony_ci interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 42862306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_I2C2>; 42962306a36Sopenharmony_ci resets = <&ccu RST_BUS_I2C2>; 43062306a36Sopenharmony_ci status = "disabled"; 43162306a36Sopenharmony_ci #address-cells = <1>; 43262306a36Sopenharmony_ci #size-cells = <0>; 43362306a36Sopenharmony_ci }; 43462306a36Sopenharmony_ci 43562306a36Sopenharmony_ci i2c3: i2c@5002c00 { 43662306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 43762306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 43862306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 43962306a36Sopenharmony_ci reg = <0x05002c00 0x400>; 44062306a36Sopenharmony_ci interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 44162306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_I2C3>; 44262306a36Sopenharmony_ci resets = <&ccu RST_BUS_I2C3>; 44362306a36Sopenharmony_ci status = "disabled"; 44462306a36Sopenharmony_ci #address-cells = <1>; 44562306a36Sopenharmony_ci #size-cells = <0>; 44662306a36Sopenharmony_ci }; 44762306a36Sopenharmony_ci 44862306a36Sopenharmony_ci i2c4: i2c@5003000 { 44962306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 45062306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 45162306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 45262306a36Sopenharmony_ci reg = <0x05003000 0x400>; 45362306a36Sopenharmony_ci interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 45462306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_I2C4>; 45562306a36Sopenharmony_ci resets = <&ccu RST_BUS_I2C4>; 45662306a36Sopenharmony_ci status = "disabled"; 45762306a36Sopenharmony_ci #address-cells = <1>; 45862306a36Sopenharmony_ci #size-cells = <0>; 45962306a36Sopenharmony_ci }; 46062306a36Sopenharmony_ci 46162306a36Sopenharmony_ci spi0: spi@5010000 { 46262306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-spi", 46362306a36Sopenharmony_ci "allwinner,sun8i-h3-spi"; 46462306a36Sopenharmony_ci reg = <0x05010000 0x1000>; 46562306a36Sopenharmony_ci interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 46662306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; 46762306a36Sopenharmony_ci clock-names = "ahb", "mod"; 46862306a36Sopenharmony_ci resets = <&ccu RST_BUS_SPI0>; 46962306a36Sopenharmony_ci status = "disabled"; 47062306a36Sopenharmony_ci #address-cells = <1>; 47162306a36Sopenharmony_ci #size-cells = <0>; 47262306a36Sopenharmony_ci }; 47362306a36Sopenharmony_ci 47462306a36Sopenharmony_ci spi1: spi@5011000 { 47562306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-spi", 47662306a36Sopenharmony_ci "allwinner,sun8i-h3-spi"; 47762306a36Sopenharmony_ci reg = <0x05011000 0x1000>; 47862306a36Sopenharmony_ci interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 47962306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; 48062306a36Sopenharmony_ci clock-names = "ahb", "mod"; 48162306a36Sopenharmony_ci resets = <&ccu RST_BUS_SPI1>; 48262306a36Sopenharmony_ci status = "disabled"; 48362306a36Sopenharmony_ci #address-cells = <1>; 48462306a36Sopenharmony_ci #size-cells = <0>; 48562306a36Sopenharmony_ci }; 48662306a36Sopenharmony_ci 48762306a36Sopenharmony_ci emac0: ethernet@5020000 { 48862306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-emac0", 48962306a36Sopenharmony_ci "allwinner,sun50i-a64-emac"; 49062306a36Sopenharmony_ci reg = <0x05020000 0x10000>; 49162306a36Sopenharmony_ci interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 49262306a36Sopenharmony_ci interrupt-names = "macirq"; 49362306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_EMAC0>; 49462306a36Sopenharmony_ci clock-names = "stmmaceth"; 49562306a36Sopenharmony_ci resets = <&ccu RST_BUS_EMAC0>; 49662306a36Sopenharmony_ci reset-names = "stmmaceth"; 49762306a36Sopenharmony_ci syscon = <&syscon>; 49862306a36Sopenharmony_ci status = "disabled"; 49962306a36Sopenharmony_ci 50062306a36Sopenharmony_ci mdio0: mdio { 50162306a36Sopenharmony_ci compatible = "snps,dwmac-mdio"; 50262306a36Sopenharmony_ci #address-cells = <1>; 50362306a36Sopenharmony_ci #size-cells = <0>; 50462306a36Sopenharmony_ci }; 50562306a36Sopenharmony_ci }; 50662306a36Sopenharmony_ci 50762306a36Sopenharmony_ci usbotg: usb@5100000 { 50862306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-musb", 50962306a36Sopenharmony_ci "allwinner,sun8i-h3-musb"; 51062306a36Sopenharmony_ci reg = <0x05100000 0x0400>; 51162306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OTG>; 51262306a36Sopenharmony_ci resets = <&ccu RST_BUS_OTG>; 51362306a36Sopenharmony_ci interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 51462306a36Sopenharmony_ci interrupt-names = "mc"; 51562306a36Sopenharmony_ci phys = <&usbphy 0>; 51662306a36Sopenharmony_ci phy-names = "usb"; 51762306a36Sopenharmony_ci extcon = <&usbphy 0>; 51862306a36Sopenharmony_ci status = "disabled"; 51962306a36Sopenharmony_ci }; 52062306a36Sopenharmony_ci 52162306a36Sopenharmony_ci usbphy: phy@5100400 { 52262306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-usb-phy"; 52362306a36Sopenharmony_ci reg = <0x05100400 0x24>, 52462306a36Sopenharmony_ci <0x05101800 0x14>, 52562306a36Sopenharmony_ci <0x05200800 0x14>, 52662306a36Sopenharmony_ci <0x05310800 0x14>, 52762306a36Sopenharmony_ci <0x05311800 0x14>; 52862306a36Sopenharmony_ci reg-names = "phy_ctrl", 52962306a36Sopenharmony_ci "pmu0", 53062306a36Sopenharmony_ci "pmu1", 53162306a36Sopenharmony_ci "pmu2", 53262306a36Sopenharmony_ci "pmu3"; 53362306a36Sopenharmony_ci clocks = <&ccu CLK_USB_PHY0>, 53462306a36Sopenharmony_ci <&ccu CLK_USB_PHY1>, 53562306a36Sopenharmony_ci <&ccu CLK_USB_PHY2>, 53662306a36Sopenharmony_ci <&ccu CLK_USB_PHY3>, 53762306a36Sopenharmony_ci <&ccu CLK_BUS_EHCI2>; 53862306a36Sopenharmony_ci clock-names = "usb0_phy", 53962306a36Sopenharmony_ci "usb1_phy", 54062306a36Sopenharmony_ci "usb2_phy", 54162306a36Sopenharmony_ci "usb3_phy", 54262306a36Sopenharmony_ci "pmu2_clk"; 54362306a36Sopenharmony_ci resets = <&ccu RST_USB_PHY0>, 54462306a36Sopenharmony_ci <&ccu RST_USB_PHY1>, 54562306a36Sopenharmony_ci <&ccu RST_USB_PHY2>, 54662306a36Sopenharmony_ci <&ccu RST_USB_PHY3>; 54762306a36Sopenharmony_ci reset-names = "usb0_reset", 54862306a36Sopenharmony_ci "usb1_reset", 54962306a36Sopenharmony_ci "usb2_reset", 55062306a36Sopenharmony_ci "usb3_reset"; 55162306a36Sopenharmony_ci status = "disabled"; 55262306a36Sopenharmony_ci #phy-cells = <1>; 55362306a36Sopenharmony_ci }; 55462306a36Sopenharmony_ci 55562306a36Sopenharmony_ci ehci0: usb@5101000 { 55662306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ehci", 55762306a36Sopenharmony_ci "generic-ehci"; 55862306a36Sopenharmony_ci reg = <0x05101000 0x100>; 55962306a36Sopenharmony_ci interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 56062306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI0>, 56162306a36Sopenharmony_ci <&ccu CLK_BUS_EHCI0>, 56262306a36Sopenharmony_ci <&ccu CLK_USB_OHCI0>; 56362306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI0>, 56462306a36Sopenharmony_ci <&ccu RST_BUS_EHCI0>; 56562306a36Sopenharmony_ci phys = <&usbphy 0>; 56662306a36Sopenharmony_ci phy-names = "usb"; 56762306a36Sopenharmony_ci status = "disabled"; 56862306a36Sopenharmony_ci }; 56962306a36Sopenharmony_ci 57062306a36Sopenharmony_ci ohci0: usb@5101400 { 57162306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ohci", 57262306a36Sopenharmony_ci "generic-ohci"; 57362306a36Sopenharmony_ci reg = <0x05101400 0x100>; 57462306a36Sopenharmony_ci interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 57562306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI0>, 57662306a36Sopenharmony_ci <&ccu CLK_USB_OHCI0>; 57762306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI0>; 57862306a36Sopenharmony_ci phys = <&usbphy 0>; 57962306a36Sopenharmony_ci phy-names = "usb"; 58062306a36Sopenharmony_ci status = "disabled"; 58162306a36Sopenharmony_ci }; 58262306a36Sopenharmony_ci 58362306a36Sopenharmony_ci ehci1: usb@5200000 { 58462306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ehci", 58562306a36Sopenharmony_ci "generic-ehci"; 58662306a36Sopenharmony_ci reg = <0x05200000 0x100>; 58762306a36Sopenharmony_ci interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 58862306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI1>, 58962306a36Sopenharmony_ci <&ccu CLK_BUS_EHCI1>, 59062306a36Sopenharmony_ci <&ccu CLK_USB_OHCI1>; 59162306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI1>, 59262306a36Sopenharmony_ci <&ccu RST_BUS_EHCI1>; 59362306a36Sopenharmony_ci phys = <&usbphy 1>; 59462306a36Sopenharmony_ci phy-names = "usb"; 59562306a36Sopenharmony_ci status = "disabled"; 59662306a36Sopenharmony_ci }; 59762306a36Sopenharmony_ci 59862306a36Sopenharmony_ci ohci1: usb@5200400 { 59962306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ohci", 60062306a36Sopenharmony_ci "generic-ohci"; 60162306a36Sopenharmony_ci reg = <0x05200400 0x100>; 60262306a36Sopenharmony_ci interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 60362306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI1>, 60462306a36Sopenharmony_ci <&ccu CLK_USB_OHCI1>; 60562306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI1>; 60662306a36Sopenharmony_ci phys = <&usbphy 1>; 60762306a36Sopenharmony_ci phy-names = "usb"; 60862306a36Sopenharmony_ci status = "disabled"; 60962306a36Sopenharmony_ci }; 61062306a36Sopenharmony_ci 61162306a36Sopenharmony_ci ehci2: usb@5310000 { 61262306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ehci", 61362306a36Sopenharmony_ci "generic-ehci"; 61462306a36Sopenharmony_ci reg = <0x05310000 0x100>; 61562306a36Sopenharmony_ci interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 61662306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI2>, 61762306a36Sopenharmony_ci <&ccu CLK_BUS_EHCI2>, 61862306a36Sopenharmony_ci <&ccu CLK_USB_OHCI2>; 61962306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI2>, 62062306a36Sopenharmony_ci <&ccu RST_BUS_EHCI2>; 62162306a36Sopenharmony_ci phys = <&usbphy 2>; 62262306a36Sopenharmony_ci phy-names = "usb"; 62362306a36Sopenharmony_ci status = "disabled"; 62462306a36Sopenharmony_ci }; 62562306a36Sopenharmony_ci 62662306a36Sopenharmony_ci ohci2: usb@5310400 { 62762306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ohci", 62862306a36Sopenharmony_ci "generic-ohci"; 62962306a36Sopenharmony_ci reg = <0x05310400 0x100>; 63062306a36Sopenharmony_ci interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 63162306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI2>, 63262306a36Sopenharmony_ci <&ccu CLK_USB_OHCI2>; 63362306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI2>; 63462306a36Sopenharmony_ci phys = <&usbphy 2>; 63562306a36Sopenharmony_ci phy-names = "usb"; 63662306a36Sopenharmony_ci status = "disabled"; 63762306a36Sopenharmony_ci }; 63862306a36Sopenharmony_ci 63962306a36Sopenharmony_ci ehci3: usb@5311000 { 64062306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ehci", 64162306a36Sopenharmony_ci "generic-ehci"; 64262306a36Sopenharmony_ci reg = <0x05311000 0x100>; 64362306a36Sopenharmony_ci interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 64462306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI3>, 64562306a36Sopenharmony_ci <&ccu CLK_BUS_EHCI3>, 64662306a36Sopenharmony_ci <&ccu CLK_USB_OHCI3>; 64762306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI3>, 64862306a36Sopenharmony_ci <&ccu RST_BUS_EHCI3>; 64962306a36Sopenharmony_ci phys = <&usbphy 3>; 65062306a36Sopenharmony_ci phy-names = "usb"; 65162306a36Sopenharmony_ci status = "disabled"; 65262306a36Sopenharmony_ci }; 65362306a36Sopenharmony_ci 65462306a36Sopenharmony_ci ohci3: usb@5311400 { 65562306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ohci", 65662306a36Sopenharmony_ci "generic-ohci"; 65762306a36Sopenharmony_ci reg = <0x05311400 0x100>; 65862306a36Sopenharmony_ci interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 65962306a36Sopenharmony_ci clocks = <&ccu CLK_BUS_OHCI3>, 66062306a36Sopenharmony_ci <&ccu CLK_USB_OHCI3>; 66162306a36Sopenharmony_ci resets = <&ccu RST_BUS_OHCI3>; 66262306a36Sopenharmony_ci phys = <&usbphy 3>; 66362306a36Sopenharmony_ci phy-names = "usb"; 66462306a36Sopenharmony_ci status = "disabled"; 66562306a36Sopenharmony_ci }; 66662306a36Sopenharmony_ci 66762306a36Sopenharmony_ci rtc: rtc@7000000 { 66862306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-rtc"; 66962306a36Sopenharmony_ci reg = <0x07000000 0x400>; 67062306a36Sopenharmony_ci interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 67162306a36Sopenharmony_ci clocks = <&r_ccu CLK_R_APB1_RTC>, <&osc24M>, 67262306a36Sopenharmony_ci <&ccu CLK_PLL_SYSTEM_32K>; 67362306a36Sopenharmony_ci clock-names = "bus", "hosc", 67462306a36Sopenharmony_ci "pll-32k"; 67562306a36Sopenharmony_ci #clock-cells = <1>; 67662306a36Sopenharmony_ci }; 67762306a36Sopenharmony_ci 67862306a36Sopenharmony_ci r_ccu: clock@7010000 { 67962306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-r-ccu"; 68062306a36Sopenharmony_ci reg = <0x07010000 0x210>; 68162306a36Sopenharmony_ci clocks = <&osc24M>, <&rtc CLK_OSC32K>, <&rtc CLK_IOSC>, 68262306a36Sopenharmony_ci <&ccu CLK_PLL_PERIPH0>; 68362306a36Sopenharmony_ci clock-names = "hosc", "losc", "iosc", "pll-periph"; 68462306a36Sopenharmony_ci #clock-cells = <1>; 68562306a36Sopenharmony_ci #reset-cells = <1>; 68662306a36Sopenharmony_ci }; 68762306a36Sopenharmony_ci 68862306a36Sopenharmony_ci r_pio: pinctrl@7022000 { 68962306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-r-pinctrl"; 69062306a36Sopenharmony_ci reg = <0x07022000 0x400>; 69162306a36Sopenharmony_ci clocks = <&r_ccu CLK_R_APB1>, <&osc24M>, 69262306a36Sopenharmony_ci <&rtc CLK_OSC32K>; 69362306a36Sopenharmony_ci clock-names = "apb", "hosc", "losc"; 69462306a36Sopenharmony_ci gpio-controller; 69562306a36Sopenharmony_ci #gpio-cells = <3>; 69662306a36Sopenharmony_ci 69762306a36Sopenharmony_ci /omit-if-no-ref/ 69862306a36Sopenharmony_ci r_i2c_pins: r-i2c-pins { 69962306a36Sopenharmony_ci pins = "PL0", "PL1"; 70062306a36Sopenharmony_ci function = "s_i2c"; 70162306a36Sopenharmony_ci }; 70262306a36Sopenharmony_ci 70362306a36Sopenharmony_ci r_rsb_pins: r-rsb-pins { 70462306a36Sopenharmony_ci pins = "PL0", "PL1"; 70562306a36Sopenharmony_ci function = "s_rsb"; 70662306a36Sopenharmony_ci }; 70762306a36Sopenharmony_ci }; 70862306a36Sopenharmony_ci 70962306a36Sopenharmony_ci ir: ir@7040000 { 71062306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-ir", 71162306a36Sopenharmony_ci "allwinner,sun6i-a31-ir"; 71262306a36Sopenharmony_ci reg = <0x07040000 0x400>; 71362306a36Sopenharmony_ci interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 71462306a36Sopenharmony_ci clocks = <&r_ccu CLK_R_APB1_IR>, 71562306a36Sopenharmony_ci <&r_ccu CLK_IR>; 71662306a36Sopenharmony_ci clock-names = "apb", "ir"; 71762306a36Sopenharmony_ci resets = <&r_ccu RST_R_APB1_IR>; 71862306a36Sopenharmony_ci pinctrl-names = "default"; 71962306a36Sopenharmony_ci pinctrl-0 = <&ir_rx_pin>; 72062306a36Sopenharmony_ci status = "disabled"; 72162306a36Sopenharmony_ci }; 72262306a36Sopenharmony_ci 72362306a36Sopenharmony_ci r_i2c: i2c@7081400 { 72462306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-i2c", 72562306a36Sopenharmony_ci "allwinner,sun8i-v536-i2c", 72662306a36Sopenharmony_ci "allwinner,sun6i-a31-i2c"; 72762306a36Sopenharmony_ci reg = <0x07081400 0x400>; 72862306a36Sopenharmony_ci interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 72962306a36Sopenharmony_ci clocks = <&r_ccu CLK_R_APB2_I2C>; 73062306a36Sopenharmony_ci resets = <&r_ccu RST_R_APB2_I2C>; 73162306a36Sopenharmony_ci status = "disabled"; 73262306a36Sopenharmony_ci #address-cells = <1>; 73362306a36Sopenharmony_ci #size-cells = <0>; 73462306a36Sopenharmony_ci }; 73562306a36Sopenharmony_ci 73662306a36Sopenharmony_ci r_rsb: rsb@7083000 { 73762306a36Sopenharmony_ci compatible = "allwinner,sun50i-h616-rsb", 73862306a36Sopenharmony_ci "allwinner,sun8i-a23-rsb"; 73962306a36Sopenharmony_ci reg = <0x07083000 0x400>; 74062306a36Sopenharmony_ci interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 74162306a36Sopenharmony_ci clocks = <&r_ccu CLK_R_APB2_RSB>; 74262306a36Sopenharmony_ci clock-frequency = <3000000>; 74362306a36Sopenharmony_ci resets = <&r_ccu RST_R_APB2_RSB>; 74462306a36Sopenharmony_ci pinctrl-names = "default"; 74562306a36Sopenharmony_ci pinctrl-0 = <&r_rsb_pins>; 74662306a36Sopenharmony_ci status = "disabled"; 74762306a36Sopenharmony_ci #address-cells = <1>; 74862306a36Sopenharmony_ci #size-cells = <0>; 74962306a36Sopenharmony_ci }; 75062306a36Sopenharmony_ci }; 75162306a36Sopenharmony_ci}; 752