162306a36Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0 OR MIT) 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2021 MediaTek Inc. 462306a36Sopenharmony_ci * Author: Sam.Shih <sam.shih@mediatek.com> 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci/dts-v1/; 862306a36Sopenharmony_ci#include "mt7986b.dtsi" 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci/ { 1162306a36Sopenharmony_ci model = "MediaTek MT7986b RFB"; 1262306a36Sopenharmony_ci chassis-type = "embedded"; 1362306a36Sopenharmony_ci compatible = "mediatek,mt7986b-rfb", "mediatek,mt7986b"; 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci aliases { 1662306a36Sopenharmony_ci serial0 = &uart0; 1762306a36Sopenharmony_ci }; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci chosen { 2062306a36Sopenharmony_ci stdout-path = "serial0:115200n8"; 2162306a36Sopenharmony_ci }; 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci memory@40000000 { 2462306a36Sopenharmony_ci device_type = "memory"; 2562306a36Sopenharmony_ci reg = <0 0x40000000 0 0x40000000>; 2662306a36Sopenharmony_ci }; 2762306a36Sopenharmony_ci}; 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci&crypto { 3062306a36Sopenharmony_ci status = "okay"; 3162306a36Sopenharmony_ci}; 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_cið { 3462306a36Sopenharmony_ci status = "okay"; 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci gmac0: mac@0 { 3762306a36Sopenharmony_ci compatible = "mediatek,eth-mac"; 3862306a36Sopenharmony_ci reg = <0>; 3962306a36Sopenharmony_ci phy-mode = "2500base-x"; 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci fixed-link { 4262306a36Sopenharmony_ci speed = <2500>; 4362306a36Sopenharmony_ci full-duplex; 4462306a36Sopenharmony_ci pause; 4562306a36Sopenharmony_ci }; 4662306a36Sopenharmony_ci }; 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci mdio: mdio-bus { 4962306a36Sopenharmony_ci #address-cells = <1>; 5062306a36Sopenharmony_ci #size-cells = <0>; 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci switch@0 { 5362306a36Sopenharmony_ci compatible = "mediatek,mt7531"; 5462306a36Sopenharmony_ci reg = <31>; 5562306a36Sopenharmony_ci reset-gpios = <&pio 5 0>; 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci ports { 5862306a36Sopenharmony_ci #address-cells = <1>; 5962306a36Sopenharmony_ci #size-cells = <0>; 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci port@0 { 6262306a36Sopenharmony_ci reg = <0>; 6362306a36Sopenharmony_ci label = "lan0"; 6462306a36Sopenharmony_ci }; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci port@1 { 6762306a36Sopenharmony_ci reg = <1>; 6862306a36Sopenharmony_ci label = "lan1"; 6962306a36Sopenharmony_ci }; 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci port@2 { 7262306a36Sopenharmony_ci reg = <2>; 7362306a36Sopenharmony_ci label = "lan2"; 7462306a36Sopenharmony_ci }; 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci port@3 { 7762306a36Sopenharmony_ci reg = <3>; 7862306a36Sopenharmony_ci label = "lan3"; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci port@4 { 8262306a36Sopenharmony_ci reg = <4>; 8362306a36Sopenharmony_ci label = "lan4"; 8462306a36Sopenharmony_ci }; 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci port@6 { 8762306a36Sopenharmony_ci reg = <6>; 8862306a36Sopenharmony_ci label = "cpu"; 8962306a36Sopenharmony_ci ethernet = <&gmac0>; 9062306a36Sopenharmony_ci phy-mode = "2500base-x"; 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci fixed-link { 9362306a36Sopenharmony_ci speed = <2500>; 9462306a36Sopenharmony_ci full-duplex; 9562306a36Sopenharmony_ci pause; 9662306a36Sopenharmony_ci }; 9762306a36Sopenharmony_ci }; 9862306a36Sopenharmony_ci }; 9962306a36Sopenharmony_ci }; 10062306a36Sopenharmony_ci }; 10162306a36Sopenharmony_ci}; 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci&pio { 10462306a36Sopenharmony_ci spi_flash_pins: spi-flash-pins { 10562306a36Sopenharmony_ci mux { 10662306a36Sopenharmony_ci function = "spi"; 10762306a36Sopenharmony_ci groups = "spi0", "spi0_wp_hold"; 10862306a36Sopenharmony_ci }; 10962306a36Sopenharmony_ci }; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci spic_pins: spic-pins { 11262306a36Sopenharmony_ci mux { 11362306a36Sopenharmony_ci function = "spi"; 11462306a36Sopenharmony_ci groups = "spi1_2"; 11562306a36Sopenharmony_ci }; 11662306a36Sopenharmony_ci }; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_ci wf_2g_5g_pins: wf-2g-5g-pins { 11962306a36Sopenharmony_ci mux { 12062306a36Sopenharmony_ci function = "wifi"; 12162306a36Sopenharmony_ci groups = "wf_2g", "wf_5g"; 12262306a36Sopenharmony_ci }; 12362306a36Sopenharmony_ci conf { 12462306a36Sopenharmony_ci pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4", 12562306a36Sopenharmony_ci "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6", 12662306a36Sopenharmony_ci "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10", 12762306a36Sopenharmony_ci "WF0_TOP_CLK", "WF0_TOP_DATA", "WF1_HB1", 12862306a36Sopenharmony_ci "WF1_HB2", "WF1_HB3", "WF1_HB4", "WF1_HB0", 12962306a36Sopenharmony_ci "WF1_HB5", "WF1_HB6", "WF1_HB7", "WF1_HB8", 13062306a36Sopenharmony_ci "WF1_TOP_CLK", "WF1_TOP_DATA"; 13162306a36Sopenharmony_ci drive-strength = <4>; 13262306a36Sopenharmony_ci }; 13362306a36Sopenharmony_ci }; 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci wf_dbdc_pins: wf-dbdc-pins { 13662306a36Sopenharmony_ci mux { 13762306a36Sopenharmony_ci function = "wifi"; 13862306a36Sopenharmony_ci groups = "wf_dbdc"; 13962306a36Sopenharmony_ci }; 14062306a36Sopenharmony_ci conf { 14162306a36Sopenharmony_ci pins = "WF0_HB1", "WF0_HB2", "WF0_HB3", "WF0_HB4", 14262306a36Sopenharmony_ci "WF0_HB0", "WF0_HB0_B", "WF0_HB5", "WF0_HB6", 14362306a36Sopenharmony_ci "WF0_HB7", "WF0_HB8", "WF0_HB9", "WF0_HB10", 14462306a36Sopenharmony_ci "WF0_TOP_CLK", "WF0_TOP_DATA"; 14562306a36Sopenharmony_ci drive-strength = <4>; 14662306a36Sopenharmony_ci }; 14762306a36Sopenharmony_ci }; 14862306a36Sopenharmony_ci}; 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci&spi0 { 15162306a36Sopenharmony_ci pinctrl-names = "default"; 15262306a36Sopenharmony_ci pinctrl-0 = <&spi_flash_pins>; 15362306a36Sopenharmony_ci cs-gpios = <0>, <0>; 15462306a36Sopenharmony_ci status = "okay"; 15562306a36Sopenharmony_ci 15662306a36Sopenharmony_ci spi_nand: flash@0 { 15762306a36Sopenharmony_ci compatible = "spi-nand"; 15862306a36Sopenharmony_ci reg = <0>; 15962306a36Sopenharmony_ci spi-max-frequency = <10000000>; 16062306a36Sopenharmony_ci spi-tx-bus-width = <4>; 16162306a36Sopenharmony_ci spi-rx-bus-width = <4>; 16262306a36Sopenharmony_ci }; 16362306a36Sopenharmony_ci}; 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci&spi1 { 16662306a36Sopenharmony_ci pinctrl-names = "default"; 16762306a36Sopenharmony_ci pinctrl-0 = <&spic_pins>; 16862306a36Sopenharmony_ci cs-gpios = <0>, <0>; 16962306a36Sopenharmony_ci status = "okay"; 17062306a36Sopenharmony_ci}; 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci&ssusb { 17362306a36Sopenharmony_ci status = "okay"; 17462306a36Sopenharmony_ci}; 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci&uart0 { 17762306a36Sopenharmony_ci status = "okay"; 17862306a36Sopenharmony_ci}; 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci&usb_phy { 18162306a36Sopenharmony_ci status = "okay"; 18262306a36Sopenharmony_ci}; 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci&wifi { 18562306a36Sopenharmony_ci status = "okay"; 18662306a36Sopenharmony_ci pinctrl-names = "default", "dbdc"; 18762306a36Sopenharmony_ci pinctrl-0 = <&wf_2g_5g_pins>; 18862306a36Sopenharmony_ci pinctrl-1 = <&wf_dbdc_pins>; 18962306a36Sopenharmony_ci}; 190