1*44045aa7SYanan He// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*44045aa7SYanan He/* 3*44045aa7SYanan He * Copyright (c) 2026 Yanan He <grumpycat921013@gmail.com> 4*44045aa7SYanan He */ 5*44045aa7SYanan He 6*44045aa7SYanan He/dts-v1/; 7*44045aa7SYanan He#include <dt-bindings/input/input.h> 8*44045aa7SYanan He#include "rv1126-alientek-clrv1126f.dtsi" 9*44045aa7SYanan He 10*44045aa7SYanan He/ { 11*44045aa7SYanan He model = "Alientek ATK-DLRV1126"; 12*44045aa7SYanan He compatible = "alientek,dlrv1126", "alientek,clrv1126f", "rockchip,rv1126"; 13*44045aa7SYanan He 14*44045aa7SYanan He aliases { 15*44045aa7SYanan He ethernet0 = &gmac; 16*44045aa7SYanan He mmc1 = &sdio; 17*44045aa7SYanan He mmc2 = &sdmmc; 18*44045aa7SYanan He }; 19*44045aa7SYanan He 20*44045aa7SYanan He chosen { 21*44045aa7SYanan He stdout-path = "serial2:1500000n8"; 22*44045aa7SYanan He }; 23*44045aa7SYanan He 24*44045aa7SYanan He adc-keys { 25*44045aa7SYanan He compatible = "adc-keys"; 26*44045aa7SYanan He io-channels = <&saradc 0>; 27*44045aa7SYanan He io-channel-names = "buttons"; 28*44045aa7SYanan He keyup-threshold-microvolt = <1800000>; 29*44045aa7SYanan He poll-interval = <100>; 30*44045aa7SYanan He 31*44045aa7SYanan He button-esc { 32*44045aa7SYanan He label = "esc"; 33*44045aa7SYanan He linux,code = <KEY_ESC>; 34*44045aa7SYanan He press-threshold-microvolt = <0>; 35*44045aa7SYanan He }; 36*44045aa7SYanan He 37*44045aa7SYanan He button-left { 38*44045aa7SYanan He label = "left"; 39*44045aa7SYanan He linux,code = <KEY_LEFT>; 40*44045aa7SYanan He press-threshold-microvolt = <801562>; 41*44045aa7SYanan He }; 42*44045aa7SYanan He 43*44045aa7SYanan He button-menu { 44*44045aa7SYanan He label = "menu"; 45*44045aa7SYanan He linux,code = <KEY_MENU>; 46*44045aa7SYanan He press-threshold-microvolt = <1198828>; 47*44045aa7SYanan He }; 48*44045aa7SYanan He 49*44045aa7SYanan He button-right { 50*44045aa7SYanan He label = "right"; 51*44045aa7SYanan He linux,code = <KEY_RIGHT>; 52*44045aa7SYanan He press-threshold-microvolt = <400781>; 53*44045aa7SYanan He }; 54*44045aa7SYanan He }; 55*44045aa7SYanan He 56*44045aa7SYanan He leds { 57*44045aa7SYanan He compatible = "gpio-leds"; 58*44045aa7SYanan He 59*44045aa7SYanan He led-0 { 60*44045aa7SYanan He label = "sys-led"; 61*44045aa7SYanan He gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; 62*44045aa7SYanan He linux,default-trigger = "heartbeat"; 63*44045aa7SYanan He default-state = "on"; 64*44045aa7SYanan He }; 65*44045aa7SYanan He 66*44045aa7SYanan He led-1 { 67*44045aa7SYanan He label = "user-led"; 68*44045aa7SYanan He gpios = <&gpio3 RK_PD6 GPIO_ACTIVE_HIGH>; 69*44045aa7SYanan He linux,default-trigger = "none"; 70*44045aa7SYanan He default-state = "on"; 71*44045aa7SYanan He }; 72*44045aa7SYanan He }; 73*44045aa7SYanan He 74*44045aa7SYanan He sound { 75*44045aa7SYanan He compatible = "simple-audio-card"; 76*44045aa7SYanan He simple-audio-card,format = "i2s"; 77*44045aa7SYanan He simple-audio-card,name = "Analog RK809"; 78*44045aa7SYanan He simple-audio-card,mclk-fs = <256>; 79*44045aa7SYanan He simple-audio-card,widgets = 80*44045aa7SYanan He "Speaker", "Speaker", 81*44045aa7SYanan He "Headphone", "Headphones", 82*44045aa7SYanan He "Microphone", "Mic Jack"; 83*44045aa7SYanan He simple-audio-card,routing = 84*44045aa7SYanan He "Speaker", "SPKO", 85*44045aa7SYanan He "Headphones", "HPOL", 86*44045aa7SYanan He "Headphones", "HPOR", 87*44045aa7SYanan He "MICL", "Mic Jack"; 88*44045aa7SYanan He 89*44045aa7SYanan He simple-audio-card,cpu { 90*44045aa7SYanan He sound-dai = <&i2s0>; 91*44045aa7SYanan He }; 92*44045aa7SYanan He 93*44045aa7SYanan He simple-audio-card,codec { 94*44045aa7SYanan He sound-dai = <&rk809>; 95*44045aa7SYanan He }; 96*44045aa7SYanan He }; 97*44045aa7SYanan He 98*44045aa7SYanan He vcc5v0_sys: regulator-vcc5v0-sys { 99*44045aa7SYanan He compatible = "regulator-fixed"; 100*44045aa7SYanan He regulator-name = "vcc5v0_sys"; 101*44045aa7SYanan He regulator-always-on; 102*44045aa7SYanan He regulator-boot-on; 103*44045aa7SYanan He regulator-min-microvolt = <5000000>; 104*44045aa7SYanan He regulator-max-microvolt = <5000000>; 105*44045aa7SYanan He }; 106*44045aa7SYanan He 107*44045aa7SYanan He sdio_pwrseq: pwrseq-sdio { 108*44045aa7SYanan He compatible = "mmc-pwrseq-simple"; 109*44045aa7SYanan He pinctrl-names = "default"; 110*44045aa7SYanan He pinctrl-0 = <&wifi_enable_h>; 111*44045aa7SYanan He reset-gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>; 112*44045aa7SYanan He post-power-on-delay-ms = <200>; 113*44045aa7SYanan He power-off-delay-us = <20000>; 114*44045aa7SYanan He }; 115*44045aa7SYanan He}; 116*44045aa7SYanan He 117*44045aa7SYanan He&gmac { 118*44045aa7SYanan He assigned-clocks = <&cru CLK_GMAC_SRC>, <&cru CLK_GMAC_TX_RX>, 119*44045aa7SYanan He <&cru CLK_GMAC_ETHERNET_OUT>; 120*44045aa7SYanan He assigned-clock-parents = <&cru CLK_GMAC_SRC_M1>, 121*44045aa7SYanan He <&cru RGMII_MODE_CLK>; 122*44045aa7SYanan He assigned-clock-rates = <125000000>, <0>, <25000000>; 123*44045aa7SYanan He clock_in_out = "input"; 124*44045aa7SYanan He phy-handle = <&phy>; 125*44045aa7SYanan He phy-mode = "rgmii-id"; 126*44045aa7SYanan He pinctrl-names = "default"; 127*44045aa7SYanan He pinctrl-0 = <&rgmiim1_miim &rgmiim1_bus2 &rgmiim1_bus4 128*44045aa7SYanan He &clk_out_ethernetm1_pins>; 129*44045aa7SYanan He status = "okay"; 130*44045aa7SYanan He}; 131*44045aa7SYanan He 132*44045aa7SYanan He&i2c5 { 133*44045aa7SYanan He status = "okay"; 134*44045aa7SYanan He clock-frequency = <400000>; 135*44045aa7SYanan He 136*44045aa7SYanan He pcf8563: rtc@51 { 137*44045aa7SYanan He compatible = "nxp,pcf8563"; 138*44045aa7SYanan He reg = <0x51>; 139*44045aa7SYanan He #clock-cells = <0>; 140*44045aa7SYanan He clock-output-names = "xin32k"; 141*44045aa7SYanan He interrupt-parent = <&gpio1>; 142*44045aa7SYanan He interrupts = <RK_PD0 IRQ_TYPE_LEVEL_LOW>; 143*44045aa7SYanan He }; 144*44045aa7SYanan He}; 145*44045aa7SYanan He 146*44045aa7SYanan He&i2s0 { 147*44045aa7SYanan He pinctrl-names = "default"; 148*44045aa7SYanan He pinctrl-0 = <&i2s0m0_sclk_tx>, 149*44045aa7SYanan He <&i2s0m0_mclk>, 150*44045aa7SYanan He <&i2s0m0_lrck_tx>, 151*44045aa7SYanan He <&i2s0m0_sdo0>, 152*44045aa7SYanan He <&i2s0m0_sdo1_sdi3>; 153*44045aa7SYanan He rockchip,trcm-sync-tx-only; 154*44045aa7SYanan He rockchip,i2s-rx-route = <3 1 2 0>; 155*44045aa7SYanan He rockchip,i2s-tx-route = <0 1 2 3>; 156*44045aa7SYanan He status = "okay"; 157*44045aa7SYanan He}; 158*44045aa7SYanan He 159*44045aa7SYanan He&mdio { 160*44045aa7SYanan He phy: ethernet-phy@1 { 161*44045aa7SYanan He compatible = "ethernet-phy-ieee802.3-c22"; 162*44045aa7SYanan He reg = <0x1>; 163*44045aa7SYanan He clocks = <&cru CLK_GMAC_ETHERNET_OUT>; 164*44045aa7SYanan He pinctrl-names = "default"; 165*44045aa7SYanan He pinctrl-0 = <ð_phy_rst>; 166*44045aa7SYanan He reset-gpios = <&gpio3 RK_PA0 GPIO_ACTIVE_LOW>; 167*44045aa7SYanan He reset-assert-us = <20000>; 168*44045aa7SYanan He reset-deassert-us = <100000>; 169*44045aa7SYanan He }; 170*44045aa7SYanan He}; 171*44045aa7SYanan He 172*44045aa7SYanan He&pinctrl { 173*44045aa7SYanan He bt { 174*44045aa7SYanan He bt_enable: bt-enable { 175*44045aa7SYanan He rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>; 176*44045aa7SYanan He }; 177*44045aa7SYanan He 178*44045aa7SYanan He bt_wake_dev: bt-wake-dev { 179*44045aa7SYanan He rockchip,pins = <1 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; 180*44045aa7SYanan He }; 181*44045aa7SYanan He 182*44045aa7SYanan He bt_wake_host: bt-wake-host { 183*44045aa7SYanan He rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 184*44045aa7SYanan He }; 185*44045aa7SYanan He }; 186*44045aa7SYanan He 187*44045aa7SYanan He ethernet { 188*44045aa7SYanan He eth_phy_rst: eth-phy-rst { 189*44045aa7SYanan He rockchip,pins = <3 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>; 190*44045aa7SYanan He }; 191*44045aa7SYanan He }; 192*44045aa7SYanan He 193*44045aa7SYanan He wifi { 194*44045aa7SYanan He wifi_enable_h: wifi-enable-h { 195*44045aa7SYanan He rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 196*44045aa7SYanan He }; 197*44045aa7SYanan He }; 198*44045aa7SYanan He}; 199*44045aa7SYanan He 200*44045aa7SYanan He&sdio { 201*44045aa7SYanan He bus-width = <4>; 202*44045aa7SYanan He cap-sdio-irq; 203*44045aa7SYanan He keep-power-in-suspend; 204*44045aa7SYanan He max-frequency = <25000000>; 205*44045aa7SYanan He mmc-pwrseq = <&sdio_pwrseq>; 206*44045aa7SYanan He non-removable; 207*44045aa7SYanan He pinctrl-names = "default"; 208*44045aa7SYanan He pinctrl-0 = <&sdmmc1_clk &sdmmc1_cmd &sdmmc1_bus4>; 209*44045aa7SYanan He rockchip,default-sample-phase = <90>; 210*44045aa7SYanan He vmmc-supply = <&vcc3v3_sd>; 211*44045aa7SYanan He vqmmc-supply = <&vcc_1v8>; 212*44045aa7SYanan He status = "okay"; 213*44045aa7SYanan He}; 214*44045aa7SYanan He 215*44045aa7SYanan He&sdmmc { 216*44045aa7SYanan He bus-width = <4>; 217*44045aa7SYanan He cap-mmc-highspeed; 218*44045aa7SYanan He cap-sd-highspeed; 219*44045aa7SYanan He card-detect-delay = <200>; 220*44045aa7SYanan He pinctrl-names = "default"; 221*44045aa7SYanan He pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_bus4 &sdmmc0_det>; 222*44045aa7SYanan He rockchip,default-sample-phase = <90>; 223*44045aa7SYanan He sd-uhs-sdr12; 224*44045aa7SYanan He sd-uhs-sdr25; 225*44045aa7SYanan He sd-uhs-sdr104; 226*44045aa7SYanan He vmmc-supply = <&vcc3v3_sd>; 227*44045aa7SYanan He vqmmc-supply = <&vccio_sd>; 228*44045aa7SYanan He status = "okay"; 229*44045aa7SYanan He}; 230*44045aa7SYanan He 231*44045aa7SYanan He&uart0 { 232*44045aa7SYanan He pinctrl-names = "default"; 233*44045aa7SYanan He pinctrl-0 = <&uart0_xfer &uart0_ctsn &uart0_rtsn>; 234*44045aa7SYanan He uart-has-rtscts; 235*44045aa7SYanan He status = "okay"; 236*44045aa7SYanan He 237*44045aa7SYanan He bluetooth { 238*44045aa7SYanan He compatible = "brcm,bcm43430a1-bt"; 239*44045aa7SYanan He clocks = <&rk809 1>; 240*44045aa7SYanan He clock-names = "lpo"; 241*44045aa7SYanan He device-wakeup-gpios = <&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>; 242*44045aa7SYanan He interrupt-parent = <&gpio0>; 243*44045aa7SYanan He interrupts = <RK_PA5 IRQ_TYPE_EDGE_RISING>; 244*44045aa7SYanan He interrupt-names = "host-wakeup"; 245*44045aa7SYanan He max-speed = <115200>; 246*44045aa7SYanan He pinctrl-names = "default"; 247*44045aa7SYanan He pinctrl-0 = <&bt_enable>, <&bt_wake_dev>, <&bt_wake_host>; 248*44045aa7SYanan He shutdown-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_HIGH>; 249*44045aa7SYanan He vbat-supply = <&vcc_3v3>; 250*44045aa7SYanan He vddio-supply = <&vcc_1v8>; 251*44045aa7SYanan He }; 252*44045aa7SYanan He}; 253*44045aa7SYanan He 254*44045aa7SYanan He&uart2 { 255*44045aa7SYanan He status = "okay"; 256*44045aa7SYanan He}; 257