| // SPDX-License-Identifier: GPL-2.0 |
| /* |
| * Copyright (c) 2017-2018 MediaTek Inc. |
| * Author: Sean Wang <sean.wang@mediatek.com> |
| * |
| */ |
| |
| /dts-v1/; |
| #include <dt-bindings/input/input.h> |
| #include "mt7623n.dtsi" |
| #include "mt6323.dtsi" |
| |
| / { |
| model = "MediaTek MT7623N with eMMC reference board"; |
| compatible = "mediatek,mt7623n-rfb-emmc", "mediatek,mt7623"; |
| |
| aliases { |
| serial0 = &uart0; |
| serial1 = &uart1; |
| serial2 = &uart2; |
| }; |
| |
| chosen { |
| stdout-path = "serial2:115200n8"; |
| }; |
| |
| connector { |
| compatible = "hdmi-connector"; |
| label = "hdmi"; |
| type = "d"; |
| ddc-i2c-bus = <&hdmiddc0>; |
| |
| port { |
| hdmi_connector_in: endpoint { |
| remote-endpoint = <&hdmi0_out>; |
| }; |
| }; |
| }; |
| |
| cpus { |
| cpu@0 { |
| proc-supply = <&mt6323_vproc_reg>; |
| }; |
| |
| cpu@1 { |
| proc-supply = <&mt6323_vproc_reg>; |
| }; |
| |
| cpu@2 { |
| proc-supply = <&mt6323_vproc_reg>; |
| }; |
| |
| cpu@3 { |
| proc-supply = <&mt6323_vproc_reg>; |
| }; |
| }; |
| |
| gpio-keys { |
| compatible = "gpio-keys"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&key_pins_a>; |
| |
| button-factory { |
| label = "factory"; |
| linux,code = <BTN_0>; |
| gpios = <&pio 256 GPIO_ACTIVE_LOW>; |
| }; |
| |
| button-wps { |
| label = "wps"; |
| linux,code = <KEY_WPS_BUTTON>; |
| gpios = <&pio 257 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| memory@80000000 { |
| device_type = "memory"; |
| reg = <0 0x80000000 0 0x40000000>; |
| }; |
| |
| reg_1p8v: regulator-1p8v { |
| compatible = "regulator-fixed"; |
| regulator-name = "fixed-1.8V"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| reg_3p3v: regulator-3p3v { |
| compatible = "regulator-fixed"; |
| regulator-name = "fixed-3.3V"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| reg_5v: regulator-5v { |
| compatible = "regulator-fixed"; |
| regulator-name = "fixed-5V"; |
| regulator-min-microvolt = <5000000>; |
| regulator-max-microvolt = <5000000>; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| sound { |
| compatible = "mediatek,mt2701-wm8960-machine"; |
| mediatek,platform = <&afe>; |
| audio-routing = |
| "Headphone", "HP_L", |
| "Headphone", "HP_R", |
| "LINPUT1", "AMIC", |
| "RINPUT1", "AMIC"; |
| mediatek,audio-codec = <&wm8960>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2s0_pins_a>; |
| }; |
| }; |
| |
| &bls { |
| status = "okay"; |
| }; |
| |
| &btif { |
| status = "okay"; |
| }; |
| |
| &cec { |
| status = "okay"; |
| }; |
| |
| &cir { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&cir_pins_a>; |
| status = "okay"; |
| }; |
| |
| &crypto { |
| status = "okay"; |
| }; |
| |
| &dpi0 { |
| status = "okay"; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| port@0 { |
| reg = <0>; |
| dpi0_out: endpoint { |
| remote-endpoint = <&hdmi0_in>; |
| }; |
| }; |
| }; |
| }; |
| |
| &gmac0 { |
| status = "okay"; |
| phy-mode = "trgmii"; |
| |
| fixed-link { |
| speed = <1000>; |
| full-duplex; |
| pause; |
| }; |
| }; |
| |
| &gmac1 { |
| status = "okay"; |
| phy-mode = "rgmii"; |
| phy-handle = <&phy5>; |
| }; |
| |
| ð { |
| status = "okay"; |
| |
| mdio-bus { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| phy5: ethernet-phy@5 { |
| reg = <5>; |
| phy-mode = "rgmii-rxid"; |
| }; |
| |
| switch@1f { |
| compatible = "mediatek,mt7530"; |
| reg = <0x1f>; |
| reset-gpios = <&pio 33 0>; |
| core-supply = <&mt6323_vpa_reg>; |
| io-supply = <&mt6323_vemc3v3_reg>; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@0 { |
| reg = <0>; |
| label = "lan0"; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| label = "lan1"; |
| }; |
| |
| port@2 { |
| reg = <2>; |
| label = "lan2"; |
| }; |
| |
| port@3 { |
| reg = <3>; |
| label = "lan3"; |
| }; |
| |
| port@4 { |
| reg = <4>; |
| label = "wan"; |
| }; |
| |
| port@6 { |
| reg = <6>; |
| label = "cpu"; |
| ethernet = <&gmac0>; |
| phy-mode = "trgmii"; |
| |
| fixed-link { |
| speed = <1000>; |
| full-duplex; |
| pause; |
| }; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &hdmi0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&hdmi_pins_a>; |
| status = "okay"; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| port@0 { |
| reg = <0>; |
| hdmi0_in: endpoint { |
| remote-endpoint = <&dpi0_out>; |
| }; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| hdmi0_out: endpoint { |
| remote-endpoint = <&hdmi_connector_in>; |
| }; |
| }; |
| }; |
| }; |
| |
| &hdmiddc0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&hdmi_ddc_pins_a>; |
| status = "okay"; |
| }; |
| |
| &hdmi_phy { |
| mediatek,ibias = <0xa>; |
| mediatek,ibias_up = <0x1c>; |
| status = "okay"; |
| }; |
| |
| &i2c0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2c0_pins_a>; |
| status = "okay"; |
| }; |
| |
| &i2c1 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2c1_pins_b>; |
| status = "okay"; |
| |
| wm8960: wm8960@1a { |
| compatible = "wlf,wm8960"; |
| reg = <0x1a>; |
| }; |
| }; |
| |
| &i2c2 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2c2_pins_a>; |
| status = "okay"; |
| }; |
| |
| &mmc0 { |
| pinctrl-names = "default", "state_uhs"; |
| pinctrl-0 = <&mmc0_pins_default>; |
| pinctrl-1 = <&mmc0_pins_uhs>; |
| status = "okay"; |
| bus-width = <8>; |
| max-frequency = <50000000>; |
| cap-mmc-highspeed; |
| vmmc-supply = <®_3p3v>; |
| vqmmc-supply = <®_1p8v>; |
| non-removable; |
| }; |
| |
| &mmc1 { |
| pinctrl-names = "default", "state_uhs"; |
| pinctrl-0 = <&mmc1_pins_default>; |
| pinctrl-1 = <&mmc1_pins_uhs>; |
| status = "okay"; |
| bus-width = <4>; |
| max-frequency = <50000000>; |
| cap-sd-highspeed; |
| cd-gpios = <&pio 261 GPIO_ACTIVE_LOW>; |
| vmmc-supply = <®_3p3v>; |
| vqmmc-supply = <®_3p3v>; |
| }; |
| |
| &pcie { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pcie_default>; |
| status = "okay"; |
| |
| pcie@0,0 { |
| status = "okay"; |
| }; |
| |
| pcie@1,0 { |
| status = "okay"; |
| }; |
| }; |
| |
| &pcie0_phy { |
| status = "okay"; |
| }; |
| |
| &pcie1_phy { |
| status = "okay"; |
| }; |
| |
| &pwm { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pwm_pins_a>; |
| status = "okay"; |
| }; |
| |
| &spi0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&spi0_pins_a>; |
| status = "okay"; |
| }; |
| |
| &spi1 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&spi1_pins_a>; |
| status = "okay"; |
| }; |
| |
| &spi2 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&spi2_pins_a>; |
| status = "okay"; |
| }; |
| |
| &uart0 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&uart0_pins_a>; |
| status = "okay"; |
| }; |
| |
| &uart1 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&uart1_pins_a>; |
| status = "okay"; |
| }; |
| |
| &uart2 { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&uart2_pins_a>; |
| status = "okay"; |
| }; |
| |
| &usb1 { |
| vusb33-supply = <®_3p3v>; |
| vbus-supply = <®_5v>; |
| status = "okay"; |
| }; |
| |
| &u3phy1 { |
| status = "okay"; |
| }; |