12846c905SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 22846c905SEmmanuel Vadot/* 32846c905SEmmanuel Vadot * IPQ5424 RDP466 board device tree source 42846c905SEmmanuel Vadot * 52846c905SEmmanuel Vadot * Copyright (c) 2024 The Linux Foundation. All rights reserved. 62846c905SEmmanuel Vadot */ 72846c905SEmmanuel Vadot 82846c905SEmmanuel Vadot/dts-v1/; 92846c905SEmmanuel Vadot 10*ae5de77eSEmmanuel Vadot#include <dt-bindings/input/input.h> 11*ae5de77eSEmmanuel Vadot#include <dt-bindings/leds/common.h> 122846c905SEmmanuel Vadot#include "ipq5424.dtsi" 132846c905SEmmanuel Vadot 142846c905SEmmanuel Vadot/ { 152846c905SEmmanuel Vadot model = "Qualcomm Technologies, Inc. IPQ5424 RDP466"; 162846c905SEmmanuel Vadot compatible = "qcom,ipq5424-rdp466", "qcom,ipq5424"; 172846c905SEmmanuel Vadot 182846c905SEmmanuel Vadot aliases { 192846c905SEmmanuel Vadot serial0 = &uart1; 202846c905SEmmanuel Vadot }; 212846c905SEmmanuel Vadot 22*ae5de77eSEmmanuel Vadot gpio-keys { 23*ae5de77eSEmmanuel Vadot compatible = "gpio-keys"; 24*ae5de77eSEmmanuel Vadot pinctrl-0 = <&gpio_keys_default>; 25*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 26*ae5de77eSEmmanuel Vadot 27*ae5de77eSEmmanuel Vadot button-wps { 28*ae5de77eSEmmanuel Vadot label = "wps"; 29*ae5de77eSEmmanuel Vadot linux,code = <KEY_WPS_BUTTON>; 30*ae5de77eSEmmanuel Vadot gpios = <&tlmm 19 GPIO_ACTIVE_LOW>; 31*ae5de77eSEmmanuel Vadot debounce-interval = <60>; 32*ae5de77eSEmmanuel Vadot }; 33*ae5de77eSEmmanuel Vadot }; 34*ae5de77eSEmmanuel Vadot 35*ae5de77eSEmmanuel Vadot leds { 36*ae5de77eSEmmanuel Vadot compatible = "gpio-leds"; 37*ae5de77eSEmmanuel Vadot pinctrl-0 = <&gpio_leds_default>; 38*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 39*ae5de77eSEmmanuel Vadot 40*ae5de77eSEmmanuel Vadot led-0 { 41*ae5de77eSEmmanuel Vadot color = <LED_COLOR_ID_GREEN>; 42*ae5de77eSEmmanuel Vadot function = LED_FUNCTION_WLAN; 43*ae5de77eSEmmanuel Vadot gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>; 44*ae5de77eSEmmanuel Vadot linux,default-trigger = "phy0tx"; 45*ae5de77eSEmmanuel Vadot default-state = "off"; 46*ae5de77eSEmmanuel Vadot }; 47*ae5de77eSEmmanuel Vadot }; 48*ae5de77eSEmmanuel Vadot 492846c905SEmmanuel Vadot vreg_misc_3p3: regulator-usb-3p3 { 502846c905SEmmanuel Vadot compatible = "regulator-fixed"; 512846c905SEmmanuel Vadot regulator-min-microvolt = <3300000>; 522846c905SEmmanuel Vadot regulator-max-microvolt = <3300000>; 532846c905SEmmanuel Vadot regulator-boot-on; 542846c905SEmmanuel Vadot regulator-always-on; 552846c905SEmmanuel Vadot regulator-name = "usb_hs_vdda_3p3"; 562846c905SEmmanuel Vadot }; 572846c905SEmmanuel Vadot 582846c905SEmmanuel Vadot vreg_misc_1p8: regulator-usb-1p8 { 592846c905SEmmanuel Vadot compatible = "regulator-fixed"; 602846c905SEmmanuel Vadot regulator-min-microvolt = <1800000>; 612846c905SEmmanuel Vadot regulator-max-microvolt = <1800000>; 622846c905SEmmanuel Vadot regulator-boot-on; 632846c905SEmmanuel Vadot regulator-always-on; 642846c905SEmmanuel Vadot regulator-name = "vdda_1p8_usb"; 652846c905SEmmanuel Vadot }; 662846c905SEmmanuel Vadot 672846c905SEmmanuel Vadot vreg_misc_0p925: regulator-usb-0p925 { 682846c905SEmmanuel Vadot compatible = "regulator-fixed"; 692846c905SEmmanuel Vadot regulator-min-microvolt = <925000>; 702846c905SEmmanuel Vadot regulator-max-microvolt = <925000>; 712846c905SEmmanuel Vadot regulator-boot-on; 722846c905SEmmanuel Vadot regulator-always-on; 732846c905SEmmanuel Vadot regulator-name = "vdd_core_usb"; 742846c905SEmmanuel Vadot }; 752846c905SEmmanuel Vadot}; 762846c905SEmmanuel Vadot 772846c905SEmmanuel Vadot&dwc_0 { 782846c905SEmmanuel Vadot dr_mode = "host"; 792846c905SEmmanuel Vadot}; 802846c905SEmmanuel Vadot 812846c905SEmmanuel Vadot&dwc_1 { 822846c905SEmmanuel Vadot dr_mode = "host"; 832846c905SEmmanuel Vadot}; 842846c905SEmmanuel Vadot 85*ae5de77eSEmmanuel Vadot&pcie2 { 86*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pcie2_default_state>; 87*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 88*ae5de77eSEmmanuel Vadot 89*ae5de77eSEmmanuel Vadot perst-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; 90*ae5de77eSEmmanuel Vadot 91*ae5de77eSEmmanuel Vadot status = "okay"; 92*ae5de77eSEmmanuel Vadot}; 93*ae5de77eSEmmanuel Vadot 94*ae5de77eSEmmanuel Vadot&pcie2_phy { 95*ae5de77eSEmmanuel Vadot status = "okay"; 96*ae5de77eSEmmanuel Vadot}; 97*ae5de77eSEmmanuel Vadot 98*ae5de77eSEmmanuel Vadot&pcie3 { 99*ae5de77eSEmmanuel Vadot pinctrl-0 = <&pcie3_default_state>; 100*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 101*ae5de77eSEmmanuel Vadot 102*ae5de77eSEmmanuel Vadot perst-gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; 103*ae5de77eSEmmanuel Vadot 104*ae5de77eSEmmanuel Vadot status = "okay"; 105*ae5de77eSEmmanuel Vadot}; 106*ae5de77eSEmmanuel Vadot 107*ae5de77eSEmmanuel Vadot&pcie3_phy { 108*ae5de77eSEmmanuel Vadot status = "okay"; 109*ae5de77eSEmmanuel Vadot}; 110*ae5de77eSEmmanuel Vadot 1112846c905SEmmanuel Vadot&qusb_phy_0 { 1122846c905SEmmanuel Vadot vdd-supply = <&vreg_misc_0p925>; 1132846c905SEmmanuel Vadot vdda-pll-supply = <&vreg_misc_1p8>; 1142846c905SEmmanuel Vadot vdda-phy-dpdm-supply = <&vreg_misc_3p3>; 1152846c905SEmmanuel Vadot 1162846c905SEmmanuel Vadot status = "okay"; 1172846c905SEmmanuel Vadot}; 1182846c905SEmmanuel Vadot 1192846c905SEmmanuel Vadot&qusb_phy_1 { 1202846c905SEmmanuel Vadot vdd-supply = <&vreg_misc_0p925>; 1212846c905SEmmanuel Vadot vdda-pll-supply = <&vreg_misc_1p8>; 1222846c905SEmmanuel Vadot vdda-phy-dpdm-supply = <&vreg_misc_3p3>; 1232846c905SEmmanuel Vadot 1242846c905SEmmanuel Vadot status = "okay"; 1252846c905SEmmanuel Vadot}; 1262846c905SEmmanuel Vadot 127*ae5de77eSEmmanuel Vadot&sdhc { 128*ae5de77eSEmmanuel Vadot pinctrl-0 = <&sdc_default_state>; 129*ae5de77eSEmmanuel Vadot pinctrl-names = "default"; 130*ae5de77eSEmmanuel Vadot 131*ae5de77eSEmmanuel Vadot status = "okay"; 132*ae5de77eSEmmanuel Vadot}; 133*ae5de77eSEmmanuel Vadot 1342846c905SEmmanuel Vadot&sleep_clk { 1352846c905SEmmanuel Vadot clock-frequency = <32000>; 1362846c905SEmmanuel Vadot}; 1372846c905SEmmanuel Vadot 1382846c905SEmmanuel Vadot&spi0 { 1392846c905SEmmanuel Vadot pinctrl-0 = <&spi0_default_state>; 1402846c905SEmmanuel Vadot pinctrl-names = "default"; 1412846c905SEmmanuel Vadot status = "okay"; 1422846c905SEmmanuel Vadot 1432846c905SEmmanuel Vadot flash@0 { 1442846c905SEmmanuel Vadot compatible = "micron,n25q128a11", "jedec,spi-nor"; 1452846c905SEmmanuel Vadot reg = <0>; 1462846c905SEmmanuel Vadot #address-cells = <1>; 1472846c905SEmmanuel Vadot #size-cells = <1>; 1482846c905SEmmanuel Vadot spi-max-frequency = <50000000>; 1492846c905SEmmanuel Vadot }; 1502846c905SEmmanuel Vadot}; 1512846c905SEmmanuel Vadot 1522846c905SEmmanuel Vadot&ssphy_0 { 1532846c905SEmmanuel Vadot vdda-pll-supply = <&vreg_misc_1p8>; 1542846c905SEmmanuel Vadot vdda-phy-supply = <&vreg_misc_0p925>; 1552846c905SEmmanuel Vadot 1562846c905SEmmanuel Vadot status = "okay"; 1572846c905SEmmanuel Vadot}; 1582846c905SEmmanuel Vadot 1592846c905SEmmanuel Vadot&tlmm { 160*ae5de77eSEmmanuel Vadot gpio_keys_default: gpio-keys-default-state { 161*ae5de77eSEmmanuel Vadot pins = "gpio19"; 162*ae5de77eSEmmanuel Vadot function = "gpio"; 163*ae5de77eSEmmanuel Vadot drive-strength = <8>; 164*ae5de77eSEmmanuel Vadot bias-pull-up; 165*ae5de77eSEmmanuel Vadot }; 166*ae5de77eSEmmanuel Vadot 167*ae5de77eSEmmanuel Vadot gpio_leds_default: gpio-leds-default-state { 168*ae5de77eSEmmanuel Vadot pins = "gpio42"; 169*ae5de77eSEmmanuel Vadot function = "gpio"; 170*ae5de77eSEmmanuel Vadot drive-strength = <8>; 171*ae5de77eSEmmanuel Vadot bias-pull-down; 172*ae5de77eSEmmanuel Vadot }; 173*ae5de77eSEmmanuel Vadot 1742846c905SEmmanuel Vadot spi0_default_state: spi0-default-state { 1752846c905SEmmanuel Vadot clk-pins { 1762846c905SEmmanuel Vadot pins = "gpio6"; 1772846c905SEmmanuel Vadot function = "spi0_clk"; 1782846c905SEmmanuel Vadot drive-strength = <8>; 1792846c905SEmmanuel Vadot bias-pull-down; 1802846c905SEmmanuel Vadot }; 1812846c905SEmmanuel Vadot 1822846c905SEmmanuel Vadot cs-pins { 1832846c905SEmmanuel Vadot pins = "gpio7"; 1842846c905SEmmanuel Vadot function = "spi0_cs"; 1852846c905SEmmanuel Vadot drive-strength = <8>; 1862846c905SEmmanuel Vadot bias-pull-up; 1872846c905SEmmanuel Vadot }; 1882846c905SEmmanuel Vadot 1892846c905SEmmanuel Vadot miso-pins { 1902846c905SEmmanuel Vadot pins = "gpio8"; 1912846c905SEmmanuel Vadot function = "spi0_miso"; 1922846c905SEmmanuel Vadot drive-strength = <8>; 1932846c905SEmmanuel Vadot bias-pull-down; 1942846c905SEmmanuel Vadot }; 1952846c905SEmmanuel Vadot 1962846c905SEmmanuel Vadot mosi-pins { 1972846c905SEmmanuel Vadot pins = "gpio9"; 1982846c905SEmmanuel Vadot function = "spi0_mosi"; 1992846c905SEmmanuel Vadot drive-strength = <8>; 2002846c905SEmmanuel Vadot bias-pull-down; 2012846c905SEmmanuel Vadot }; 2022846c905SEmmanuel Vadot }; 2032846c905SEmmanuel Vadot 2042846c905SEmmanuel Vadot sdc_default_state: sdc-default-state { 2052846c905SEmmanuel Vadot clk-pins { 2062846c905SEmmanuel Vadot pins = "gpio5"; 2072846c905SEmmanuel Vadot function = "sdc_clk"; 2082846c905SEmmanuel Vadot drive-strength = <8>; 2092846c905SEmmanuel Vadot bias-disable; 2102846c905SEmmanuel Vadot }; 2112846c905SEmmanuel Vadot 2122846c905SEmmanuel Vadot cmd-pins { 2132846c905SEmmanuel Vadot pins = "gpio4"; 2142846c905SEmmanuel Vadot function = "sdc_cmd"; 2152846c905SEmmanuel Vadot drive-strength = <8>; 2162846c905SEmmanuel Vadot bias-pull-up; 2172846c905SEmmanuel Vadot }; 2182846c905SEmmanuel Vadot 2192846c905SEmmanuel Vadot data-pins { 2202846c905SEmmanuel Vadot pins = "gpio0", "gpio1", "gpio2", "gpio3"; 2212846c905SEmmanuel Vadot function = "sdc_data"; 2222846c905SEmmanuel Vadot drive-strength = <8>; 2232846c905SEmmanuel Vadot bias-pull-up; 2242846c905SEmmanuel Vadot }; 2252846c905SEmmanuel Vadot }; 226*ae5de77eSEmmanuel Vadot 227*ae5de77eSEmmanuel Vadot pcie2_default_state: pcie2-default-state { 228*ae5de77eSEmmanuel Vadot pins = "gpio31"; 229*ae5de77eSEmmanuel Vadot function = "gpio"; 230*ae5de77eSEmmanuel Vadot drive-strength = <8>; 231*ae5de77eSEmmanuel Vadot bias-pull-up; 232*ae5de77eSEmmanuel Vadot }; 233*ae5de77eSEmmanuel Vadot 234*ae5de77eSEmmanuel Vadot pcie3_default_state: pcie3-default-state { 235*ae5de77eSEmmanuel Vadot pins = "gpio34"; 236*ae5de77eSEmmanuel Vadot function = "gpio"; 237*ae5de77eSEmmanuel Vadot drive-strength = <8>; 238*ae5de77eSEmmanuel Vadot bias-pull-up; 239*ae5de77eSEmmanuel Vadot }; 2402846c905SEmmanuel Vadot}; 2412846c905SEmmanuel Vadot 2422846c905SEmmanuel Vadot&uart1 { 2432846c905SEmmanuel Vadot pinctrl-0 = <&uart1_pins>; 2442846c905SEmmanuel Vadot pinctrl-names = "default"; 2452846c905SEmmanuel Vadot status = "okay"; 2462846c905SEmmanuel Vadot}; 2472846c905SEmmanuel Vadot 2482846c905SEmmanuel Vadot&usb2 { 2492846c905SEmmanuel Vadot status = "okay"; 2502846c905SEmmanuel Vadot}; 2512846c905SEmmanuel Vadot 2522846c905SEmmanuel Vadot&usb3 { 2532846c905SEmmanuel Vadot status = "okay"; 2542846c905SEmmanuel Vadot}; 2552846c905SEmmanuel Vadot 2562846c905SEmmanuel Vadot&xo_board { 2572846c905SEmmanuel Vadot clock-frequency = <24000000>; 2582846c905SEmmanuel Vadot}; 259