// SPDX-License-Identifier: GPL-2.0-or-later OR MIT #include "qcom-ipq4019.dtsi" #include #include #include #include / { model = "Linksys WHW03 (Velop)"; compatible = "linksys,whw03", "qcom,ipq4019"; aliases { led-boot = &led_blue; led-failsafe = &led_red; led-running = &led_blue; led-upgrade = &led_red; }; // Default bootargs include rootfstype=ext4 and need to be overriden. chosen { bootargs-append = " rootfstype=squashfs"; }; soc { ess-tcsr@1953000 { compatible = "qcom,tcsr"; reg = <0x1953000 0x1000>; qcom,ess-interface-select = ; }; tcsr@1949000 { compatible = "qcom,tcsr"; reg = <0x1949000 0x100>; qcom,wifi_glb_cfg = ; }; tcsr@194b000 { compatible = "qcom,tcsr"; reg = <0x194b000 0x100>; qcom,usb-hsphy-mode-select = ; }; tcsr@1957000 { compatible = "qcom,tcsr"; reg = <0x1957000 0x100>; qcom,wifi_noc_memtype_m0_m2 = ; }; }; keys { compatible = "gpio-keys"; reset { label = "reset"; gpios = <&tlmm 18 GPIO_ACTIVE_LOW>; linux,code = ; }; }; }; &tlmm { mdio_pins: mdio-pinmux { mux-1 { pins = "gpio6"; function = "mdio"; bias-pull-up; }; mux-2 { pins = "gpio7"; function = "mdc"; bias-pull-up; }; }; sd_pins: sd-pinmux { pins = "gpio23", "gpio24", "gpio25", "gpio26", "gpio27", "gpio28", "gpio29", "gpio30", "gpio31", "gpio32"; function = "sdio"; }; i2c_0_pins: i2c-0-pinmux { pins = "gpio58", "gpio59"; function = "blsp_i2c0"; bias-disable; }; serial_0_pins: serial0-pinmux { pins = "gpio16", "gpio17"; function = "blsp_uart0"; bias-disable; }; serial_1_pins: serial1-pinmux { pins = "gpio8", "gpio9", "gpio10", "gpio11"; function = "blsp_uart1"; bias-disable; }; spi_0_pins: spi-0-pinmux { pins = "gpio12", "gpio13", "gpio14", "gpio15"; function = "blsp_spi0"; bias-disable; }; spi_1_pins: spi-1-pinmux { mux-1 { pins = "gpio44", "gpio46", "gpio47"; function = "blsp_spi1"; bias-disable; }; mux-2 { pins = "gpio45", "gpio49"; function = "gpio"; bias-pull-up; output-high; }; host-interrupt { pins = "gpio42"; function = "gpio"; input; }; }; wifi_0_pins: wifi0-pinmux { pins = "gpio52"; function = "gpio"; drive-strength = <6>; bias-pull-up; output-high; }; zigbee-0 { gpio-hog; gpios = <29 GPIO_ACTIVE_HIGH>; bias-disable; output-low; }; zigbee-1 { gpio-hog; gpios = <50 GPIO_ACTIVE_HIGH>; bias-disable; input; }; bluetooth-enable { gpio-hog; gpios = <32 GPIO_ACTIVE_HIGH>; output-high; }; }; &mdio { status = "okay"; pinctrl-0 = <&mdio_pins>; pinctrl-names = "default"; reset-gpios = <&tlmm 41 GPIO_ACTIVE_LOW>; }; ðphy0 { status = "disabled"; }; ðphy1 { status = "disabled"; }; ðphy2 { status = "disabled"; }; &watchdog { status = "okay"; }; &prng { status = "okay"; }; &blsp_dma { status = "okay"; }; &cryptobam { num-channels = <4>; qcom,num-ees = <2>; status = "okay"; }; &crypto { status = "okay"; }; &vqmmc { status = "okay"; }; &blsp1_uart1 { status = "okay"; pinctrl-0 = <&serial_0_pins>; pinctrl-names = "default"; }; &blsp1_uart2 { status = "okay"; pinctrl-0 = <&serial_1_pins>; pinctrl-names = "default"; bluetooth { compatible = "csr,8811"; enable-gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>; }; }; &blsp1_spi2 { pinctrl-0 = <&spi_1_pins>; pinctrl-names = "default"; status = "okay"; cs-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>; zigbee@0 { #address-cells = <1>; #size-cells = <0>; compatible = "silabs,em3581"; reg = <0>; spi-max-frequency = <12000000>; }; }; &blsp1_i2c3 { pinctrl-0 = <&i2c_0_pins>; pinctrl-names = "default"; status = "okay"; // RGB LEDs pca9633: led-controller@62 { compatible = "nxp,pca9633"; nxp,hw-blink; reg = <0x62>; #address-cells = <1>; #size-cells = <0>; led_red: red@0 { color = ; function = LED_FUNCTION_INDICATOR; reg = <0>; }; led_green: green@1 { color = ; function = LED_FUNCTION_INDICATOR; reg = <1>; }; led_blue: blue@2 { color = ; function = LED_FUNCTION_INDICATOR; reg = <2>; }; }; }; &sdhci { vqmmc-supply = <&vqmmc>; pinctrl-0 = <&sd_pins>; pinctrl-names = "default"; cd-gpios = <&tlmm 22 GPIO_ACTIVE_LOW>; sd-ldo-gpios = <&tlmm 33 GPIO_ACTIVE_LOW>; status = "okay"; }; &pcie0 { status = "okay"; perst-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>; wake-gpios = <&tlmm 40 GPIO_ACTIVE_LOW>; clkreq-gpios = <&tlmm 39 GPIO_ACTIVE_LOW>; bridge@0,0 { reg = <0x00000000 0 0 0 0>; #address-cells = <3>; #size-cells = <2>; ranges; wifi2: wifi@1,0 { compatible = "qcom,ath10k"; reg = <0x00000000 0 0 0 0>; }; }; }; &qpic_bam { status = "okay"; }; &gmac { status = "okay"; }; &switch { status = "okay"; }; &swport4 { status = "okay"; label = "lan"; }; &swport5 { status = "okay"; label = "wan"; }; &wifi0 { pinctrl-0 = <&wifi_0_pins>; pinctrl-names = "default"; status = "okay"; qcom,coexist-support = <1>; qcom,coexist-gpio-pin = <52>; qcom,ath10k-calibration-variant = "linksys-whw03"; }; &wifi1 { status = "okay"; ieee80211-freq-limit = <5170000 5330000>; qcom,ath10k-calibration-variant = "linksys-whw03"; }; &wifi2 { status = "okay"; ieee80211-freq-limit = <5490000 5835000>; qcom,ath10k-calibration-variant = "linksys-whw03"; };