mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-06-07 14:52:04 +08:00
229 lines
6.1 KiB
Diff
229 lines
6.1 KiB
Diff
From patchwork Sun May 11 14:19:25 2025
|
|
Content-Type: text/plain; charset="utf-8"
|
|
MIME-Version: 1.0
|
|
Content-Transfer-Encoding: 7bit
|
|
X-Patchwork-Submitter: Frank Wunderlich <linux@fw-web.de>
|
|
X-Patchwork-Id: 14084123
|
|
From: Frank Wunderlich <linux@fw-web.de>
|
|
To: Andrew Lunn <andrew@lunn.ch>,
|
|
Vladimir Oltean <olteanv@gmail.com>,
|
|
"David S. Miller" <davem@davemloft.net>,
|
|
Eric Dumazet <edumazet@google.com>,
|
|
Jakub Kicinski <kuba@kernel.org>,
|
|
Paolo Abeni <pabeni@redhat.com>,
|
|
Rob Herring <robh@kernel.org>,
|
|
Krzysztof Kozlowski <krzk+dt@kernel.org>,
|
|
Conor Dooley <conor+dt@kernel.org>,
|
|
Matthias Brugger <matthias.bgg@gmail.com>,
|
|
AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
|
|
Subject: [PATCH v1 09/14] arm64: dts: mediatek: mt7988: add switch node
|
|
Date: Sun, 11 May 2025 16:19:25 +0200
|
|
Message-ID: <20250511141942.10284-10-linux@fw-web.de>
|
|
X-Mailer: git-send-email 2.43.0
|
|
In-Reply-To: <20250511141942.10284-1-linux@fw-web.de>
|
|
References: <20250511141942.10284-1-linux@fw-web.de>
|
|
MIME-Version: 1.0
|
|
X-Mail-ID: a24ecea1-b7fd-4cb4-a93d-b29036e2e6ac
|
|
X-BeenThere: linux-mediatek@lists.infradead.org
|
|
X-Mailman-Version: 2.1.34
|
|
Precedence: list
|
|
List-Id: <linux-mediatek.lists.infradead.org>
|
|
List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-mediatek>,
|
|
<mailto:linux-mediatek-request@lists.infradead.org?subject=unsubscribe>
|
|
List-Archive: <http://lists.infradead.org/pipermail/linux-mediatek/>
|
|
List-Post: <mailto:linux-mediatek@lists.infradead.org>
|
|
List-Help: <mailto:linux-mediatek-request@lists.infradead.org?subject=help>
|
|
List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-mediatek>,
|
|
<mailto:linux-mediatek-request@lists.infradead.org?subject=subscribe>
|
|
Cc: devicetree@vger.kernel.org, Landen Chao <Landen.Chao@mediatek.com>,
|
|
=?utf-8?b?QXLEsW7DpyDDnE5BTA==?= <arinc.unal@arinc9.com>,
|
|
netdev@vger.kernel.org, Sean Wang <sean.wang@mediatek.com>,
|
|
Daniel Golle <daniel@makrotopia.org>, linux-kernel@vger.kernel.org,
|
|
DENG Qingfang <dqfext@gmail.com>, linux-mediatek@lists.infradead.org,
|
|
Lorenzo Bianconi <lorenzo@kernel.org>, linux-arm-kernel@lists.infradead.org,
|
|
Felix Fietkau <nbd@nbd.name>
|
|
Sender: "Linux-mediatek" <linux-mediatek-bounces@lists.infradead.org>
|
|
Errors-To:
|
|
linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org
|
|
|
|
From: Frank Wunderlich <frank-w@public-files.de>
|
|
|
|
Add mt7988 builtin mt753x switch nodes.
|
|
|
|
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
|
|
---
|
|
arch/arm64/boot/dts/mediatek/mt7988a.dtsi | 166 ++++++++++++++++++++++
|
|
1 file changed, 166 insertions(+)
|
|
|
|
--- a/arch/arm64/boot/dts/mediatek/mt7988a.dtsi
|
|
+++ b/arch/arm64/boot/dts/mediatek/mt7988a.dtsi
|
|
@@ -5,6 +5,7 @@
|
|
#include <dt-bindings/phy/phy.h>
|
|
#include <dt-bindings/pinctrl/mt65xx.h>
|
|
#include <dt-bindings/reset/mediatek,mt7988-resets.h>
|
|
+#include <dt-bindings/leds/common.h>
|
|
|
|
/ {
|
|
compatible = "mediatek,mt7988a";
|
|
@@ -748,6 +749,159 @@
|
|
#reset-cells = <1>;
|
|
};
|
|
|
|
+ switch: switch@15020000 {
|
|
+ compatible = "mediatek,mt7988-switch";
|
|
+ reg = <0 0x15020000 0 0x8000>;
|
|
+ interrupt-controller;
|
|
+ #interrupt-cells = <1>;
|
|
+ interrupt-parent = <&gic>;
|
|
+ interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
|
|
+ resets = <ðwarp MT7988_ETHWARP_RST_SWITCH>;
|
|
+
|
|
+ ports {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ gsw_port0: port@0 {
|
|
+ reg = <0>;
|
|
+ phy-mode = "internal";
|
|
+ phy-handle = <&gsw_phy0>;
|
|
+ };
|
|
+
|
|
+ gsw_port1: port@1 {
|
|
+ reg = <1>;
|
|
+ phy-mode = "internal";
|
|
+ phy-handle = <&gsw_phy1>;
|
|
+ };
|
|
+
|
|
+ gsw_port2: port@2 {
|
|
+ reg = <2>;
|
|
+ phy-mode = "internal";
|
|
+ phy-handle = <&gsw_phy2>;
|
|
+ };
|
|
+
|
|
+ gsw_port3: port@3 {
|
|
+ reg = <3>;
|
|
+ phy-mode = "internal";
|
|
+ phy-handle = <&gsw_phy3>;
|
|
+ };
|
|
+
|
|
+ port@6 {
|
|
+ reg = <6>;
|
|
+ ethernet = <&gmac0>;
|
|
+ phy-mode = "internal";
|
|
+
|
|
+ fixed-link {
|
|
+ speed = <10000>;
|
|
+ full-duplex;
|
|
+ pause;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ mdio {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ mediatek,pio = <&pio>;
|
|
+
|
|
+ gsw_phy0: ethernet-phy@0 {
|
|
+ compatible = "ethernet-phy-ieee802.3-c22";
|
|
+ reg = <0>;
|
|
+ interrupts = <0>;
|
|
+ phy-mode = "internal";
|
|
+ nvmem-cells = <&phy_calibration_p0>;
|
|
+ nvmem-cell-names = "phy-cal-data";
|
|
+
|
|
+ leds {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ gsw_phy0_led0: led@0 {
|
|
+ reg = <0>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
+ gsw_phy0_led1: led@1 {
|
|
+ reg = <1>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ gsw_phy1: ethernet-phy@1 {
|
|
+ compatible = "ethernet-phy-ieee802.3-c22";
|
|
+ reg = <1>;
|
|
+ interrupts = <1>;
|
|
+ phy-mode = "internal";
|
|
+ nvmem-cells = <&phy_calibration_p1>;
|
|
+ nvmem-cell-names = "phy-cal-data";
|
|
+
|
|
+ leds {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ gsw_phy1_led0: led@0 {
|
|
+ reg = <0>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
+ gsw_phy1_led1: led@1 {
|
|
+ reg = <1>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ gsw_phy2: ethernet-phy@2 {
|
|
+ compatible = "ethernet-phy-ieee802.3-c22";
|
|
+ reg = <2>;
|
|
+ interrupts = <2>;
|
|
+ phy-mode = "internal";
|
|
+ nvmem-cells = <&phy_calibration_p2>;
|
|
+ nvmem-cell-names = "phy-cal-data";
|
|
+
|
|
+ leds {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ gsw_phy2_led0: led@0 {
|
|
+ reg = <0>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
+ gsw_phy2_led1: led@1 {
|
|
+ reg = <1>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ gsw_phy3: ethernet-phy@3 {
|
|
+ compatible = "ethernet-phy-ieee802.3-c22";
|
|
+ reg = <3>;
|
|
+ interrupts = <3>;
|
|
+ phy-mode = "internal";
|
|
+ nvmem-cells = <&phy_calibration_p3>;
|
|
+ nvmem-cell-names = "phy-cal-data";
|
|
+
|
|
+ leds {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ gsw_phy3_led0: led@0 {
|
|
+ reg = <0>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+
|
|
+ gsw_phy3_led1: led@1 {
|
|
+ reg = <1>;
|
|
+ status = "disabled";
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
ethwarp: clock-controller@15031000 {
|
|
compatible = "mediatek,mt7988-ethwarp";
|
|
reg = <0 0x15031000 0 0x1000>;
|