difos/target/linux/ramips/dts/mt7621_sercomm_na502s.dts
Rosen Penev f955716341 ramips: fix wifi nodes to upstream standards
Replaced all mt76@ with wifi@ per upstream requirement for all wifi
nodes.

Added missing compatible string where appropriate as stated by mt76.yaml
upstream.

Also updated reg value to be consistent everywhere.

Replace all pci14c3 entries to use mediatek,mt76.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19067
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-07-04 22:01:40 +02:00

374 lines
6.8 KiB
Text

// SPDX-License-Identifier: GPL-2.0-or-later
#include "mt7621.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>
/ {
compatible = "sercomm,na502s", "mediatek,mt7621-soc";
model = "SERCOMM NA502S";
aliases {
led-boot = &led_power;
led-failsafe = &led_power;
led-running = &led_power;
led-upgrade = &led_power;
};
leds {
compatible = "gpio-leds";
led_power: power {
function = LED_FUNCTION_POWER;
color = <LED_COLOR_ID_GREEN>;
gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
};
wifi {
label = "green:wifi";
gpios = <&gpio_expander1 0 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
zwave {
label = "green:zwave";
gpios = <&gpio_expander1 1 GPIO_ACTIVE_LOW>;
};
zigbee {
label = "green:zigbee";
gpios = <&gpio_expander1 2 GPIO_ACTIVE_LOW>;
};
bluetooth {
function = LED_FUNCTION_BLUETOOTH;
color = <LED_COLOR_ID_GREEN>;
gpios = <&gpio_expander1 3 GPIO_ACTIVE_LOW>;
};
rf433 {
label = "green:rf433";
gpios = <&gpio_expander1 4 GPIO_ACTIVE_LOW>;
};
service {
label = "green:service";
gpios = <&gpio_expander1 5 GPIO_ACTIVE_LOW>;
};
3g {
label = "green:3g";
gpios = <&gpio_expander1 6 GPIO_ACTIVE_LOW>;
};
voice {
label = "green:voice";
gpios = <&gpio_expander1 7 GPIO_ACTIVE_LOW>;
};
};
keys {
compatible = "gpio-keys";
battery_tamper {
label = "battery_tamper";
gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
linux,code = <BTN_1>;
};
reset {
label = "reset";
gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
voice {
label = "voice";
gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
linux,code = <BTN_0>;
};
select {
label = "select";
gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
linux,code = <BTN_1>;
};
sync {
label = "sync";
gpios = <&gpio 32 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RFKILL>;
};
};
gpio-export {
compatible = "gpio-export";
zwave_reset {
gpio-export,name = "zwave_reset";
gpio-export,output = <1>;
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
};
lprf_reset {
gpio-export,name = "lprf_reset";
gpio-export,output = <1>;
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
};
charger_detect {
gpio-export,name = "charger_detect";
gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
};
buzzer {
gpio-export,name = "buzzer";
gpio-export,output = <0>;
gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
};
3g_hw_shunt_en {
gpio-export,name = "3g_hw_shunt_en";
gpio-export,output = <0>;
gpios = <&gpio 22 GPIO_ACTIVE_LOW>;
};
3g_sw_on_off {
gpio-export,name = "3g_sw_on_off";
gpio-export,output = <1>;
gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
};
3g_wake_up {
gpio-export,name = "3g_wake_up";
gpio-export,output = <0>;
gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
};
3g_hw_reset {
gpio-export,name = "3g_hw_reset";
gpio-export,output = <1>;
gpios = <&gpio 33 GPIO_ACTIVE_LOW>;
};
zigbee_reset {
gpio-export,name = "zigbee_reset";
gpio-export,output = <1>;
gpios = <&gpio_expander0 0 GPIO_ACTIVE_LOW>;
};
zigbee_boot {
gpio-export,name = "zigbee_boot";
gpio-export,output = <1>;
gpios = <&gpio_expander0 1 GPIO_ACTIVE_LOW>;
};
2g_sw0 {
gpio-export,name = "2g_sw0";
gpio-export,output = <1>;
gpios = <&gpio_expander0 2 GPIO_ACTIVE_LOW>;
};
2g_sw1 {
gpio-export,name = "2g_sw1";
gpio-export,output = <1>;
gpios = <&gpio_expander0 3 GPIO_ACTIVE_LOW>;
};
fm2018_pwd {
gpio-export,name = "fm2018_pwd";
gpio-export,output = <1>;
gpios = <&gpio_expander0 4 GPIO_ACTIVE_LOW>;
};
fm2018_reset {
gpio-export,name = "fm2018_reset";
gpio-export,output = <1>;
gpios = <&gpio_expander0 5 GPIO_ACTIVE_LOW>;
};
batt_teset {
gpio-export,name = "batt_test";
gpio-export,output = <1>;
gpios = <&gpio_expander0 6 GPIO_ACTIVE_LOW>;
};
mfi_reset {
gpio-export,name = "mfi_reset";
gpio-export,output = <1>;
gpios = <&gpio_expander0 7 GPIO_ACTIVE_LOW>;
};
};
};
&ethernet {
pinctrl-0 = <&mdio_pins>, <&rgmii1_pins>;
};
&gmac0 {
nvmem-cells = <&macaddr_factory_e000 0>;
nvmem-cell-names = "mac-address";
};
&nand {
status = "okay";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x0 0x80000>;
read-only;
};
partition@80000 {
label = "config";
reg = <0x80000 0x80000>;
read-only;
};
partition@100000 {
label = "factory";
reg = <0x100000 0x40000>;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
eeprom_factory_0: eeprom@0 {
reg = <0x0 0x400>;
};
eeprom_factory_8000: eeprom@8000 {
reg = <0x8000 0x200>;
};
macaddr_factory_e000: macaddr@e000 {
compatible = "mac-base";
reg = <0xe000 0x6>;
#nvmem-cell-cells = <1>;
};
};
};
partition@140000 {
label = "kernel1";
reg = <0x140000 0x1400000>;
};
partition@1540000 {
label = "kernel";
reg = <0x1540000 0x400000>;
};
partition@1940000 {
label = "ubi";
reg = <0x1940000 0x1000000>;
};
partition@2940000 {
label = "user_storage";
reg = <0x2940000 0x100000>;
};
partition@2a40000 {
label = "data";
reg = <0x2a40000 0x1000000>;
};
partition@3a40000 {
label = "storage";
reg = <0x3a40000 0x3200000>;
};
partition@6c40000 {
label = "backup";
reg = <0x6c40000 0x1340000>;
};
};
};
&pcie {
status = "okay";
};
&pcie1 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
nvmem-cells = <&eeprom_factory_8000>, <&macaddr_factory_e000 1>;
nvmem-cell-names = "eeprom", "mac-address";
ieee80211-freq-limit = <5000000 6000000>;
};
};
&pcie2 {
wifi@0,0 {
compatible = "mediatek,mt76";
reg = <0x0000 0 0 0 0>;
nvmem-cells = <&eeprom_factory_0>, <&macaddr_factory_e000 2>;
nvmem-cell-names = "eeprom", "mac-address";
ieee80211-freq-limit = <2400000 2500000>;
};
};
&state_default {
gpio {
groups = "jtag", "rgmii2";
function = "gpio";
};
};
&i2c {
status = "okay";
/* This GPIO expander is fake. The kernel fails to initialize the
first expander, but succeeds on the second (real) one */
gpio_expander2: gpio-expander2@22 {
#gpio-cells = <2>;
#interrupt-cells = <2>;
compatible = "semtech,sx1502q";
reg = <0x22>;
gpio-controller;
interrupt-controller;
};
gpio_expander0: gpio-expander0@20 {
#gpio-cells = <2>;
#interrupt-cells = <2>;
compatible = "semtech,sx1502q";
reg = <0x20>;
gpio-controller;
interrupt-controller;
};
gpio_expander1: gpio-expander1@21 {
#gpio-cells = <2>;
#interrupt-cells = <2>;
compatible = "semtech,sx1502q";
reg = <0x21>;
gpio-controller;
interrupt-controller;
};
};
&switch0 {
ports {
port@4 {
status = "okay";
label = "lan";
};
};
};
&uartlite2 {
status = "okay";
};