mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-25 08:21:14 +00:00
f1c9afd801
Mux the MT7530 switch's phy0/4 to the SoC's gmac1 on devices where RGMII2 pins are available. This achieves 2 Gbps total bandwidth to the CPU using the second RGMII. The ports called "wan" are muxed where possible. On a minority of devices, this is not possible. Those cases: mt7621_ampedwireless_ally-r1900k.dts: lan3 mt7621_ubnt_edgerouter-x.dts: eth0 mt7621_gnubee_gb-pc1.dts: ethblue mt7621_linksys_re6500.dts: lan1 mt7621_netgear_wac104.dts: lan4 mt7621_tplink_eap235-wall-v1.dts: lan0 mt7621_tplink_eap615-wall-v1.dts: lan0 mt7621_ubnt_usw-flex.dts: lan1 The "wan" port is just what the vendor designated on the board/plastic chasis of the device. On a technical level, there is no difference between a lan and wan port on MT7621AT, MT7621DAT and MT7621ST SoCs. Prefer connecting to WAN via the port described above for these devices to benefit the feature brought with this patch. mt7621_d-team_newifi-d2.dts cannot benefit this feature, although it looks like it should, because the rgmii2 pins are wired to unused components. Tested on a range of devices documented on the GitHub PR. Link: https://github.com/openwrt/openwrt/pull/10238 Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
237 lines
3.9 KiB
Plaintext
237 lines
3.9 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
|
|
|
#include "mt7621.dtsi"
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
/ {
|
|
compatible = "xiaomi,mi-router-3-pro", "mediatek,mt7621-soc";
|
|
model = "Xiaomi Mi Router 3 Pro";
|
|
|
|
aliases {
|
|
led-boot = &led_status_yellow;
|
|
led-failsafe = &led_status_red;
|
|
led-running = &led_status_blue;
|
|
led-upgrade = &led_status_yellow;
|
|
label-mac-device = &gmac0;
|
|
};
|
|
|
|
chosen {
|
|
bootargs = "console=ttyS0,115200n8";
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
|
|
led_status_red: status_red {
|
|
label = "red:status";
|
|
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
led_status_blue: status_blue {
|
|
label = "blue:status";
|
|
gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
led_status_yellow: status_yellow {
|
|
label = "yellow:status";
|
|
gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
wan_amber {
|
|
label = "amber:wan";
|
|
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
|
|
linux,default-trigger = "dsa-0.0:04:1Gbps";
|
|
};
|
|
|
|
lan3_amber {
|
|
label = "amber:lan3";
|
|
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
|
|
linux,default-trigger = "dsa-0.0:03:1Gbps";
|
|
};
|
|
|
|
lan2_amber {
|
|
label = "amber:lan2";
|
|
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
|
linux,default-trigger = "dsa-0.0:02:1Gbps";
|
|
};
|
|
|
|
lan1_amber {
|
|
label = "amber:lan1";
|
|
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
|
|
linux,default-trigger = "dsa-0.0:01:1Gbps";
|
|
};
|
|
};
|
|
|
|
keys {
|
|
compatible = "gpio-keys";
|
|
|
|
reset {
|
|
label = "reset";
|
|
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_RESTART>;
|
|
};
|
|
};
|
|
|
|
reg_usb_vbus: regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "usb_vbus";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
gpio = <&gpio 12 GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
};
|
|
|
|
&xhci {
|
|
vbus-supply = <®_usb_vbus>;
|
|
};
|
|
|
|
&nand {
|
|
status = "okay";
|
|
|
|
partitions {
|
|
compatible = "fixed-partitions";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
partition@0 {
|
|
label = "Bootloader";
|
|
reg = <0x0 0x40000>;
|
|
read-only;
|
|
};
|
|
|
|
partition@40000 {
|
|
label = "Config";
|
|
reg = <0x40000 0x40000>;
|
|
};
|
|
|
|
partition@80000 {
|
|
label = "Bdata";
|
|
reg = <0x80000 0x40000>;
|
|
read-only;
|
|
};
|
|
|
|
factory: partition@c0000 {
|
|
label = "factory";
|
|
reg = <0x0c0000 0x40000>;
|
|
read-only;
|
|
};
|
|
|
|
partition@100000 {
|
|
label = "crash";
|
|
reg = <0x100000 0x40000>;
|
|
};
|
|
|
|
partition@140000 {
|
|
label = "crash_syslog";
|
|
reg = <0x140000 0x80000>;
|
|
};
|
|
|
|
partition@1c0000 {
|
|
label = "reserved0";
|
|
reg = <0x1c0000 0x40000>;
|
|
read-only;
|
|
};
|
|
|
|
/* We keep stock xiaomi firmware (kernel0) here */
|
|
partition@200000 {
|
|
label = "kernel_stock";
|
|
reg = <0x200000 0x400000>;
|
|
};
|
|
|
|
partition@600000 {
|
|
label = "kernel";
|
|
reg = <0x600000 0x400000>;
|
|
};
|
|
|
|
partition@a00000 {
|
|
label = "ubi";
|
|
reg = <0xa00000 0xf580000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&pcie {
|
|
status = "okay";
|
|
};
|
|
|
|
&pcie0 {
|
|
wifi@0,0 {
|
|
compatible = "mediatek,mt76";
|
|
reg = <0x0000 0 0 0 0>;
|
|
mediatek,mtd-eeprom = <&factory 0x0000>;
|
|
ieee80211-freq-limit = <2400000 2500000>;
|
|
};
|
|
};
|
|
|
|
&pcie1 {
|
|
wifi@0,0 {
|
|
compatible = "mediatek,mt76";
|
|
reg = <0x0000 0 0 0 0>;
|
|
mediatek,mtd-eeprom = <&factory 0x8000>;
|
|
ieee80211-freq-limit = <5000000 6000000>;
|
|
};
|
|
};
|
|
|
|
&gmac0 {
|
|
nvmem-cells = <&macaddr_factory_e006>;
|
|
nvmem-cell-names = "mac-address";
|
|
};
|
|
|
|
&gmac1 {
|
|
status = "okay";
|
|
label = "wan";
|
|
phy-handle = <ðphy4>;
|
|
|
|
nvmem-cells = <&macaddr_factory_e000>;
|
|
nvmem-cell-names = "mac-address";
|
|
};
|
|
|
|
&mdio {
|
|
ethphy4: ethernet-phy@4 {
|
|
reg = <4>;
|
|
};
|
|
};
|
|
|
|
&switch0 {
|
|
ports {
|
|
port@1 {
|
|
status = "okay";
|
|
label = "lan3";
|
|
};
|
|
|
|
port@2 {
|
|
status = "okay";
|
|
label = "lan2";
|
|
};
|
|
|
|
port@3 {
|
|
status = "okay";
|
|
label = "lan1";
|
|
};
|
|
};
|
|
};
|
|
|
|
&state_default {
|
|
gpio {
|
|
groups = "jtag", "uart2", "uart3", "wdt";
|
|
function = "gpio";
|
|
};
|
|
};
|
|
|
|
&factory {
|
|
compatible = "nvmem-cells";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
macaddr_factory_e000: macaddr@e000 {
|
|
reg = <0xe000 0x6>;
|
|
};
|
|
|
|
macaddr_factory_e006: macaddr@e006 {
|
|
reg = <0xe006 0x6>;
|
|
};
|
|
};
|