openwrt/target/linux/ramips/dts/mt7621_netgear_sercomm_bzv.dtsi

461 lines
8.0 KiB
Plaintext
Raw Normal View History

// SPDX-License-Identifier: GPL-2.0-only
#include "mt7621.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
compatible = "mediatek,mt7621-soc";
aliases {
label-mac-device = &gmac0;
led-boot = &led_power_white;
led-failsafe = &led_power_orange;
led-running = &led_power_white;
led-upgrade = &led_power_orange;
};
keys {
compatible = "gpio-keys";
wps {
label = "wps";
gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WPS_BUTTON>;
};
rfkill {
label = "rfkill";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
reset {
label = "reset";
gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
};
leds: leds {
compatible = "gpio-leds";
led_power_orange: power_orange {
gpios = <&gpio_expander 0 GPIO_ACTIVE_LOW>;
function = LED_FUNCTION_POWER;
color = <LED_COLOR_ID_ORANGE>;
};
led_power_white: power_white {
gpios = <&gpio_expander 1 GPIO_ACTIVE_LOW>;
function = LED_FUNCTION_POWER;
color = <LED_COLOR_ID_WHITE>;
};
wan_orange {
gpios = <&gpio_expander 2 GPIO_ACTIVE_LOW>;
function = LED_FUNCTION_WAN;
color = <LED_COLOR_ID_ORANGE>;
};
wan_white {
gpios = <&gpio_expander 3 GPIO_ACTIVE_LOW>;
function = LED_FUNCTION_WAN;
color = <LED_COLOR_ID_WHITE>;
};
wlan2g {
gpios = <&gpio_expander 4 GPIO_ACTIVE_LOW>;
label = "white:wlan2g";
linux,default-trigger = "phy0radio";
};
wlan5g {
gpios = <&gpio_expander 5 GPIO_ACTIVE_LOW>;
label = "white:wlan5g";
linux,default-trigger = "phy1radio";
};
usb3 {
gpios = <&gpio_expander 7 GPIO_ACTIVE_LOW>;
label = "white:usb3";
linux,default-trigger = "usbport";
trigger-sources = <&xhci_ehci_port1>;
};
lan1_orange {
gpios = <&gpio_expander 8 GPIO_ACTIVE_LOW>;
label = "orange:lan1";
};
lan1_white {
gpios = <&gpio_expander 9 GPIO_ACTIVE_LOW>;
label = "white:lan1";
};
lan2_orange {
gpios = <&gpio_expander 10 GPIO_ACTIVE_LOW>;
label = "orange:lan2";
};
lan2_white {
gpios = <&gpio_expander 11 GPIO_ACTIVE_LOW>;
label = "white:lan2";
};
lan3_orange {
gpios = <&gpio_expander 12 GPIO_ACTIVE_LOW>;
label = "orange:lan3";
};
lan3_white {
gpios = <&gpio_expander 13 GPIO_ACTIVE_LOW>;
label = "white:lan3";
};
lan4_orange {
gpios = <&gpio_expander 14 GPIO_ACTIVE_LOW>;
label = "orange:lan4";
};
lan4_white {
gpios = <&gpio_expander 15 GPIO_ACTIVE_LOW>;
label = "white:lan4";
};
wps {
gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
function = LED_FUNCTION_WPS;
color = <LED_COLOR_ID_WHITE>;
};
wlan {
gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
function = LED_FUNCTION_WLAN;
color = <LED_COLOR_ID_WHITE>;
};
};
};
&state_default {
gpio {
groups = "uart3", "uart2", "jtag", "wdt";
function = "gpio";
};
};
&pcie {
status = "okay";
};
&pcie0 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0 0 0 0 0>;
nvmem-cells = <&eeprom_factory_0>;
nvmem-cell-names = "eeprom";
ieee80211-freq-limit = <2400000 2500000>;
};
};
&pcie1 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0 0 0 0 0>;
nvmem-cells = <&eeprom_factory_8000>;
nvmem-cell-names = "eeprom";
ieee80211-freq-limit = <5000000 6000000>;
};
};
&gmac0 {
nvmem-cells = <&macaddr_factory_4 0>;
nvmem-cell-names = "mac-address";
};
&gmac1 {
status = "okay";
label = "wan";
phy-handle = <&ethphy4>;
nvmem-cells = <&macaddr_factory_4 2>;
nvmem-cell-names = "mac-address";
};
&mdio {
ethphy4: ethernet-phy@4 {
reg = <4>;
};
};
&switch0 {
ports {
port@0 {
status = "okay";
label = "lan4";
};
port@1 {
status = "okay";
label = "lan3";
};
port@2 {
status = "okay";
label = "lan2";
};
port@3 {
status = "okay";
label = "lan1";
};
};
};
&i2c {
status = "okay";
gpio_expander: i2c0gpio-expander@20{
#gpio-cells = <2>;
#interrupt-cells = <2>;
compatible = "semtech,sx1503q";
reg = <0x20>;
gpio-controller;
interrupt-controller;
};
};
&nand {
status = "okay";
partitions {
compatible = "sercomm,sc-partitions", "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x0 0x100000>;
sercomm,scpart-id = <0>;
read-only;
};
partition@100000 {
label = "SC PART_MAP";
reg = <0x100000 0x100000>;
sercomm,scpart-id = <1>;
read-only;
};
partition@200000 {
label = "kernel";
reg = <0x200000 0x400000>;
sercomm,scpart-id = <2>;
};
partition@600000 {
label = "ubi";
reg = <0x600000 0x2800000>;
sercomm,scpart-id = <3>;
};
partition@2e00000 {
label = "English UI";
reg = <0x2e00000 0x200000>;
sercomm,scpart-id = <4>;
read-only;
};
partition@3000000 {
label = "ML1";
reg = <0x3000000 0x200000>;
sercomm,scpart-id = <5>;
read-only;
};
partition@3200000 {
label = "ML2";
reg = <0x3200000 0x200000>;
sercomm,scpart-id = <6>;
read-only;
};
partition@3400000 {
label = "ML3";
reg = <0x3400000 0x200000>;
sercomm,scpart-id = <7>;
read-only;
};
partition@3600000 {
label = "ML4";
reg = <0x3600000 0x200000>;
sercomm,scpart-id = <8>;
read-only;
};
partition@3800000 {
label = "ML5";
reg = <0x3800000 0x200000>;
sercomm,scpart-id = <9>;
read-only;
};
partition@3a00000 {
label = "ML6";
reg = <0x3a00000 0x200000>;
sercomm,scpart-id = <10>;
read-only;
};
partition@3c00000 {
label = "ML7";
reg = <0x3c00000 0x200000>;
sercomm,scpart-id = <11>;
read-only;
};
partition@3e00000 {
label = "ML8";
reg = <0x3e00000 0x200000>;
sercomm,scpart-id = <12>;
read-only;
};
partition@4000000 {
label = "ML9";
reg = <0x4000000 0x200000>;
sercomm,scpart-id = <13>;
read-only;
};
partition@4200000 {
label = "ML10";
reg = <0x4200000 0x200000>;
sercomm,scpart-id = <14>;
read-only;
};
partition@4400000 {
label = "ML11";
reg = <0x4400000 0x200000>;
sercomm,scpart-id = <15>;
read-only;
};
factory: partition@4600000 {
label = "factory";
reg = <0x4600000 0x200000>;
sercomm,scpart-id = <16>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
eeprom_factory_0: eeprom@0 {
reg = <0x0 0x4da8>;
};
eeprom_factory_8000: eeprom@8000 {
reg = <0x8000 0x4da8>;
};
macaddr_factory_4: macaddr@4 {
compatible = "mac-base";
reg = <0x4 0x6>;
#nvmem-cell-cells = <1>;
};
};
};
partition@4800000 {
label = "SC Private Data";
reg = <0x4800000 0x200000>;
sercomm,scpart-id = <17>;
read-only;
};
partition@4a00000 {
label = "POT";
reg = <0x4a00000 0x200000>;
sercomm,scpart-id = <18>;
read-only;
};
partition@4c00000 {
label = "Traffic Meter";
reg = <0x4c00000 0x200000>;
sercomm,scpart-id = <19>;
read-only;
};
partition@4e00000 {
label = "SC PID";
reg = <0x4e00000 0x200000>;
sercomm,scpart-id = <20>;
read-only;
};
partition@5000000 {
label = "SC Nvram";
reg = <0x5000000 0x200000>;
sercomm,scpart-id = <21>;
read-only;
};
partition@5200000 {
label = "Ralink Nvram";
reg = <0x5200000 0x200000>;
sercomm,scpart-id = <22>;
read-only;
};
partition@5400000 {
label = "reserved0";
reg = <0x5400000 0x200000>;
sercomm,scpart-id = <23>;
read-only;
};
partition@5600000 {
label = "reserved1";
reg = <0x5600000 0x200000>;
sercomm,scpart-id = <24>;
read-only;
};
partition@5800000 {
label = "reserved2";
reg = <0x5800000 0x200000>;
sercomm,scpart-id = <25>;
read-only;
};
partition@5a00000 {
label = "reserved3";
reg = <0x5a00000 0x200000>;
sercomm,scpart-id = <26>;
read-only;
};
partition@5c00000 {
label = "reserved4";
reg = <0x5c00000 0x200000>;
sercomm,scpart-id = <27>;
read-only;
};
partition@5e00000 {
label = "reserved5";
reg = <0x5e00000 0x2180000>;
sercomm,scpart-id = <28>;
read-only;
};
};
};