// SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* * Copyright (c) 2026 Rockchip Electronics Co., Ltd. */ #include #include #include #include #include #include / { #address-cells = <1>; #size-cells = <1>; compatible = "rockchip,rv1103b"; interrupt-parent = <&gic>; arm-pmu { compatible = "arm,cortex-a7-pmu"; interrupts = ; interrupt-affinity = <&cpu0>; }; cpus { #address-cells = <1>; #size-cells = <0>; cpu0: cpu@0 { compatible = "arm,cortex-a7"; reg = <0x0>; clocks = <&cru ARMCLK>; device_type = "cpu"; }; }; timer { compatible = "arm,armv7-timer"; clock-frequency = <24000000>; interrupts = , ; }; xin24m: oscillator-24m { compatible = "fixed-clock"; clock-frequency = <24000000>; clock-output-names = "xin24m"; #clock-cells = <0>; }; pinctrl: pinctrl { compatible = "rockchip,rv1103b-pinctrl"; rockchip,grf = <&ioc>; ranges; #address-cells = <1>; #size-cells = <1>; gpio0: gpio@20520000 { compatible = "rockchip,gpio-bank"; reg = <0x20520000 0x200>; clocks = <&cru PCLK_PMU_GPIO0>, <&cru DBCLK_PMU_GPIO0>; gpio-controller; interrupts = ; interrupt-controller; #gpio-cells = <2>; #interrupt-cells = <2>; }; gpio1: gpio@20d80000 { compatible = "rockchip,gpio-bank"; reg = <0x20d80000 0x200>; clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>; gpio-controller; interrupts = ; interrupt-controller; #gpio-cells = <2>; #interrupt-cells = <2>; }; gpio2: gpio@20840000 { compatible = "rockchip,gpio-bank"; reg = <0x20840000 0x200>; clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>; gpio-controller; interrupts = ; interrupt-controller; #gpio-cells = <2>; #interrupt-cells = <2>; }; }; soc { compatible = "simple-bus"; #address-cells = <1>; #size-cells = <1>; ranges; cru: clock-controller@20000000 { compatible = "rockchip,rv1103b-cru"; reg = <0x20000000 0x81000>; #clock-cells = <1>; #reset-cells = <1>; }; pmu_grf: syscon@20160000 { compatible = "rockchip,rv1103b-pmu-grf", "syscon", "simple-mfd"; reg = <0x20160000 0x1000>; reboot_mode: reboot-mode { compatible = "syscon-reboot-mode"; offset = <0x200>; mode-normal = ; mode-recovery = ; mode-bootloader = ; mode-loader = ; }; }; ioc: syscon@20170000 { compatible = "rockchip,rv1103b-ioc", "syscon"; reg = <0x20170000 0x60000>; }; gic: interrupt-controller@20411000 { compatible = "arm,gic-400"; reg = <0x20411000 0x1000>, <0x20412000 0x2000>, <0x20414000 0x2000>, <0x20416000 0x2000>; interrupts = ; interrupt-controller; #interrupt-cells = <3>; #address-cells = <0>; }; uart0: serial@20540000 { compatible = "rockchip,rv1103b-uart", "snps,dw-apb-uart"; reg = <0x20540000 0x100>; clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>; clock-names = "baudclk", "apb_pclk"; interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&uart0m0_xfer>; reg-shift = <2>; reg-io-width = <4>; status = "disabled"; }; sdmmc1: mmc@20650000 { compatible = "rockchip,rv1103b-dw-mshc", "rockchip,rk3576-dw-mshc"; reg = <0x20650000 0x4000>; clocks = <&cru HCLK_SDMMC1>, <&cru CCLK_SDMMC1>; clock-names = "biu", "ciu"; fifo-depth = <0x100>; interrupts = ; max-frequency = <150000000>; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_clk &sdmmc1_cmd &sdmmc1_bus4>; status = "disabled"; }; uart1: serial@20870000 { compatible = "rockchip,rv1103b-uart", "snps,dw-apb-uart"; reg = <0x20870000 0x100>; clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>; clock-names = "baudclk", "apb_pclk"; interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&uart1m0_xfer>; reg-shift = <2>; reg-io-width = <4>; status = "disabled"; }; uart2: serial@20880000 { compatible = "rockchip,rv1103b-uart", "snps,dw-apb-uart"; reg = <0x20880000 0x100>; clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>; clock-names = "baudclk", "apb_pclk"; interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&uart2m0_xfer>; reg-shift = <2>; reg-io-width = <4>; status = "disabled"; }; sdmmc0: mmc@20d20000 { compatible = "rockchip,rv1103b-dw-mshc", "rockchip,rk3576-dw-mshc"; reg = <0x20d20000 0x4000>; clocks = <&cru HCLK_SDMMC0>, <&cru CCLK_SDMMC0>; clock-names = "biu", "ciu"; fifo-depth = <0x100>; interrupts = ; max-frequency = <150000000>; pinctrl-names = "default"; pinctrl-0 = <&sdmmc0_det &sdmmc0_clk &sdmmc0_cmd &sdmmc0_bus4>; status = "disabled"; }; emmc: mmc@20d30000 { compatible = "rockchip,rv1103b-dw-mshc", "rockchip,rk3576-dw-mshc"; reg = <0x20d30000 0x4000>; clocks = <&cru HCLK_EMMC>, <&cru CCLK_EMMC>; clock-names = "biu", "ciu"; fifo-depth = <0x100>; interrupts = ; max-frequency = <150000000>; pinctrl-names = "default"; pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus4>; status = "disabled"; }; fspi0: spi@20d40000 { compatible = "rockchip,sfc"; reg = <0x20d40000 0x4000>; clocks = <&cru SCLK_SFC_2X>, <&cru HCLK_SFC>; clock-names = "clk_sfc", "hclk_sfc"; interrupts = ; pinctrl-names = "default"; pinctrl-0 = <&fspi_bus4 &fspi_cs0 &fspi_clk>; #address-cells = <1>; #size-cells = <0>; status = "disabled"; }; system_sram: sram@210f6000 { compatible = "mmio-sram"; reg = <0x210f6000 0x8000>; ranges = <0 0x210f6000 0x8000>; #address-cells = <1>; #size-cells = <1>; }; }; }; #include "rv1103b-pinctrl.dtsi"