1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright 2014 The ChromiumOS Authors
6 #include "qcom-ipq8064-smb208.dtsi"
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/soc/qcom,tcsr.h>
16 serial0 = &gsbi4_serial;
20 stdout-path = "serial0:115200n8";
29 reg = <0x41200000 0x300000>;
35 compatible = "gpio-keys";
36 pinctrl-0 = <&button_pins>;
37 pinctrl-names = "default";
41 gpios = <&qcom_pinmux 16 GPIO_ACTIVE_LOW>;
42 linux,code = <KEY_RESTART>;
43 debounce-interval = <60>;
49 gpios = <&qcom_pinmux 15 GPIO_ACTIVE_LOW>;
50 linux,code = <KEY_CONFIG>;
51 debounce-interval = <60>;
57 compatible = "virtual,mdio-gpio";
60 gpios = <&qcom_pinmux 1 GPIO_ACTIVE_HIGH>,
61 <&qcom_pinmux 0 GPIO_ACTIVE_HIGH>;
62 pinctrl-0 = <&mdio_pins>;
63 pinctrl-names = "default";
66 compatible = "qca,qca8337";
80 tx-internal-delay-ps = <1000>;
81 rx-internal-delay-ps = <1000>;
92 phy-mode = "internal";
93 phy-handle = <&phy_port1>;
99 phy-mode = "internal";
100 phy-handle = <&phy_port2>;
108 qca,sgmii-enable-pll;
118 #address-cells = <1>;
138 compatible = "google,storm-audio";
139 qcom,model = "ipq806x-storm";
141 codec = <&max98357a>;
144 lpass: lpass@28100000 {
146 pinctrl-names = "default", "idle";
147 pinctrl-0 = <&mi2s_default>;
148 pinctrl-1 = <&mi2s_idle>;
151 max98357a: max98357a {
152 compatible = "maxim,max98357a";
153 #sound-dai-cells = <1>;
154 pinctrl-names = "default";
155 pinctrl-0 = <&sdmode_pins>;
156 sdmode-gpios = <&qcom_pinmux 25 GPIO_ACTIVE_HIGH>;
162 rgmii0_pins: rgmii0_pins {
164 pins = "gpio2", "gpio66";
165 drive-strength = <8>;
170 mi2s_default: mi2s_default {
174 drive-strength = <16>;
180 drive-strength = <16>;
186 drive-strength = <16>;
190 mi2s_idle: mi2s_idle {
194 drive-strength = <2>;
200 drive-strength = <2>;
206 drive-strength = <2>;
212 mdio_pins: mdio_pins {
214 pins = "gpio0", "gpio1";
216 drive-strength = <8>;
225 sdmode_pins: sdmode_pinmux {
228 drive-strength = <16>;
232 sdcc1_pins: sdcc1_pinmux {
234 pins = "gpio38", "gpio39", "gpio40",
235 "gpio41", "gpio42", "gpio43",
236 "gpio44", "gpio45", "gpio46",
242 drive-strength = <10>;
246 pins = "gpio38", "gpio39", "gpio40",
247 "gpio41", "gpio43", "gpio44",
249 drive-strength = <10>;
254 drive-strength = <16>;
259 i2c1_pins: i2c1_pinmux {
260 pins = "gpio53", "gpio54";
265 rpm_i2c_pinmux: rpm_i2c_pinmux {
267 pins = "gpio12", "gpio13";
269 drive-strength = <12>;
276 pins = "gpio18", "gpio19", "gpio21";
279 /delete-property/ bias-none;
280 /delete-property/ drive-strength;
283 pins = "gpio18", "gpio19";
284 drive-strength = <10>;
288 drive-strength = <10>;
293 drive-strength = <12>;
304 button_pins: button_pins {
317 spi6_pins: spi6_pins {
319 pins = "gpio55", "gpio56", "gpio58";
324 pins = "gpio55", "gpio56";
325 drive-strength = <10>;
329 drive-strength = <10>;
335 drive-strength = <12>;
349 pinctrl-0 = <&rgmii0_pins>;
350 pinctrl-names = "default";
371 qcom,mode = <GSBI_PROT_I2C_UART>;
377 clock-frequency = <100000>;
379 pinctrl-0 = <&i2c1_pins>;
380 pinctrl-names = "default";
383 compatible = "infineon,slb9645tt";
385 powered-while-suspended;
391 qcom,mode = <GSBI_PROT_I2C_UART>;
400 qcom,mode = <GSBI_PROT_SPI>;
404 spi-max-frequency = <50000000>;
405 pinctrl-0 = <&spi_pins>;
406 pinctrl-names = "default";
408 cs-gpios = <&qcom_pinmux 20 0>;
411 compatible = "jedec,spi-nor";
412 spi-max-frequency = <50000000>;
420 qcom,mode = <GSBI_PROT_SPI>;
425 spi-max-frequency = <25000000>;
427 pinctrl-0 = <&spi6_pins>;
428 pinctrl-names = "default";
430 cs-gpios = <&qcom_pinmux 57 GPIO_ACTIVE_HIGH>;
432 dmas = <&adm_dma 8 0xb>,
434 dma-names = "rx", "tx";
437 * This "spidev" was included in the manufacturer device tree. I suspect
438 * it's the (unused) Zigbee radio -- SiliconLabs EM3581 Zigbee? There's
439 * no driver or binding for this at the moment.
442 compatible = "spidev";
444 spi-max-frequency = <25000000>;
453 #interrupt-cells = <1>;
455 #address-cells = <3>;
457 interrupt-controller;
462 qcom,ath10k-sa-gpio = <2 3 4 0>;
463 qcom,ath10k-sa-gpio-func = <5 5 5 0>;
473 #interrupt-cells = <1>;
475 #address-cells = <3>;
477 interrupt-controller;
482 qcom,ath10k-sa-gpio = <2 3 4 0>;
483 qcom,ath10k-sa-gpio-func = <5 5 5 0>;
493 #interrupt-cells = <1>;
495 #address-cells = <3>;
497 interrupt-controller;
507 pinctrl-0 = <&rpm_i2c_pinmux>;
508 pinctrl-names = "default";
513 pinctrl-0 = <&sdcc1_pins>;
514 pinctrl-names = "default";
515 /delete-property/ mmc-ddr-1_8v;
519 compatible = "qcom,tcsr-ipq8064", "qcom,tcsr", "syscon";
520 qcom,usb-ctrl-select = <TCSR_USB_SELECT_USB3_DUAL>;