// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* Copyright (c) 2022, Robert Marko */ /dts-v1/; #include "ipq8074.dtsi" #include "ipq8074-hk-cpu.dtsi" #include "ipq8074-ess.dtsi" #include #include #include / { model = "Dynalink DL-WRX36"; compatible = "dynalink,dl-wrx36", "qcom,ipq8074"; aliases { led-boot = &led_system_red; led-failsafe = &led_system_red; led-running = &led_system_blue; led-upgrade = &led_system_red; serial0 = &blsp1_uart5; /* Aliases as required by u-boot to patch MAC addresses */ ethernet0 = &dp6_syn; ethernet1 = &dp4; ethernet2 = &dp3; ethernet3 = &dp2; ethernet4 = &dp1; label-mac-device = &dp6_syn; }; chosen { stdout-path = "serial0:115200n8"; bootargs-append = " root=/dev/ubiblock0_1"; }; keys { compatible = "gpio-keys"; reset { label = "reset"; gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; linux,code = ; }; wps { label = "wps"; gpios = <&tlmm 63 GPIO_ACTIVE_LOW>; linux,code = ; }; }; leds { compatible = "gpio-leds"; led_system_blue: system-blue { label = "blue:system"; gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>; color = ; }; led_system_red: system-red { label = "red:system"; gpios = <&tlmm 25 GPIO_ACTIVE_HIGH>; color = ; }; }; }; &tlmm { mdio_pins: mdio-pins { mdc { pins = "gpio68"; function = "mdc"; drive-strength = <8>; bias-pull-up; }; mdio { pins = "gpio69"; function = "mdio"; drive-strength = <8>; bias-pull-up; }; }; }; &blsp1_uart5 { status = "okay"; }; &prng { status = "okay"; }; &cryptobam { status = "okay"; }; &crypto { status = "okay"; }; &qpic_bam { status = "okay"; }; &qpic_nand { status = "okay"; nand@0 { reg = <0>; nand-ecc-strength = <8>; nand-ecc-step-size = <512>; nand-bus-width = <8>; partitions { compatible = "qcom,smem-part"; }; }; }; &qusb_phy_0 { status = "okay"; }; &ssphy_0 { status = "okay"; }; &usb_0 { status = "okay"; }; &mdio { status = "okay"; pinctrl-0 = <&mdio_pins>; pinctrl-names = "default"; reset-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>; qca8075_0: ethernet-phy@0 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <0>; }; qca8075_1: ethernet-phy@1 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <1>; }; qca8075_2: ethernet-phy@2 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <2>; }; qca8075_3: ethernet-phy@3 { compatible = "ethernet-phy-ieee802.3-c22"; reg = <3>; }; qca8081: ethernet-phy@28 { compatible = "ethernet-phy-id004d.d101"; reg = <28>; reset-gpios = <&tlmm 44 GPIO_ACTIVE_LOW>; }; }; &switch { status = "okay"; switch_cpu_bmp = <0x1>; /* cpu port bitmap */ switch_lan_bmp = <0x3e>; /* lan port bitmap */ switch_wan_bmp = <0x40>; /* wan port bitmap */ switch_mac_mode = <0xb>; /* mac mode for uniphy instance0*/ switch_mac_mode1 = <0xff>; /* mac mode for uniphy instance1*/ switch_mac_mode2 = <0xc>; /* mac mode for uniphy instance2*/ bm_tick_mode = <0>; /* bm tick mode */ tm_tick_mode = <0>; /* tm tick mode */ qcom,port_phyinfo { port@0 { port_id = <1>; phy_address = <0>; }; port@1 { port_id = <2>; phy_address = <1>; }; port@2 { port_id = <3>; phy_address = <2>; }; port@3 { port_id = <4>; phy_address = <3>; }; port@5 { port_id = <6>; phy_address = <28>; port_mac_sel = "QGMAC_PORT"; }; }; }; &edma { status = "okay"; }; &dp1 { status = "okay"; phy-handle = <&qca8075_0>; label = "lan4"; }; &dp2 { status = "okay"; phy-handle = <&qca8075_1>; label = "lan3"; }; &dp3 { status = "okay"; phy-handle = <&qca8075_2>; label = "lan2"; }; &dp4 { status = "okay"; phy-handle = <&qca8075_3>; label = "lan1"; }; &dp6_syn { status = "okay"; phy-handle = <&qca8081>; label = "wan"; }; &wifi { status = "okay"; qcom,ath11k-calibration-variant = "Dynalink-DL-WRX36"; };