Commit 6a0c00e5 authored by David S. Miller's avatar David S. Miller

Merge branch 'Add-Seville-Ethernet-switch-to-T1040RDB'

Vladimir Oltean says:

===================
Add Seville Ethernet switch to T1040RDB

Seville is a DSA switch that is embedded inside the T1040 SoC, and
supported by the mscc_seville DSA driver inside drivers/net/dsa/ocelot.

This series adds this switch to the SoC's dtsi files and to the T1040RDB
board file.

I would like to send this series through net-next. There is no conflict
with other patches submitted to T1040 device tree. Maybe this could at
least get an ACK from devicetree maintainers.
===================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 9cd8b6c9 e69eb082
......@@ -64,6 +64,40 @@ mdio@fc000 {
phy_sgmii_2: ethernet-phy@3 {
reg = <0x03>;
};
/* VSC8514 QSGMII PHY */
phy_qsgmii_0: ethernet-phy@4 {
reg = <0x4>;
};
phy_qsgmii_1: ethernet-phy@5 {
reg = <0x5>;
};
phy_qsgmii_2: ethernet-phy@6 {
reg = <0x6>;
};
phy_qsgmii_3: ethernet-phy@7 {
reg = <0x7>;
};
/* VSC8514 QSGMII PHY */
phy_qsgmii_4: ethernet-phy@8 {
reg = <0x8>;
};
phy_qsgmii_5: ethernet-phy@9 {
reg = <0x9>;
};
phy_qsgmii_6: ethernet-phy@a {
reg = <0xa>;
};
phy_qsgmii_7: ethernet-phy@b {
reg = <0xb>;
};
};
};
};
......@@ -76,3 +110,76 @@ cpld@3,0 {
};
#include "t1040si-post.dtsi"
&seville_switch {
status = "okay";
};
&seville_port0 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_0>;
phy-mode = "qsgmii";
label = "ETH5";
status = "okay";
};
&seville_port1 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_1>;
phy-mode = "qsgmii";
label = "ETH4";
status = "okay";
};
&seville_port2 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_2>;
phy-mode = "qsgmii";
label = "ETH7";
status = "okay";
};
&seville_port3 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_3>;
phy-mode = "qsgmii";
label = "ETH6";
status = "okay";
};
&seville_port4 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_4>;
phy-mode = "qsgmii";
label = "ETH9";
status = "okay";
};
&seville_port5 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_5>;
phy-mode = "qsgmii";
label = "ETH8";
status = "okay";
};
&seville_port6 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_6>;
phy-mode = "qsgmii";
label = "ETH11";
status = "okay";
};
&seville_port7 {
managed = "in-band-status";
phy-handle = <&phy_qsgmii_7>;
phy-mode = "qsgmii";
label = "ETH10";
status = "okay";
};
&seville_port8 {
ethernet = <&enet0>;
status = "okay";
};
......@@ -628,6 +628,84 @@ mdio@fd000 {
status = "disabled";
};
};
seville_switch: ethernet-switch@800000 {
compatible = "mscc,vsc9953-switch";
reg = <0x800000 0x290000>;
interrupts = <26 2 0 0>;
interrupt-names = "xtr";
little-endian;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
seville_port0: port@0 {
reg = <0>;
status = "disabled";
};
seville_port1: port@1 {
reg = <1>;
status = "disabled";
};
seville_port2: port@2 {
reg = <2>;
status = "disabled";
};
seville_port3: port@3 {
reg = <3>;
status = "disabled";
};
seville_port4: port@4 {
reg = <4>;
status = "disabled";
};
seville_port5: port@5 {
reg = <5>;
status = "disabled";
};
seville_port6: port@6 {
reg = <6>;
status = "disabled";
};
seville_port7: port@7 {
reg = <7>;
status = "disabled";
};
seville_port8: port@8 {
reg = <8>;
phy-mode = "internal";
status = "disabled";
fixed-link {
speed = <2500>;
full-duplex;
};
};
seville_port9: port@9 {
reg = <9>;
phy-mode = "internal";
status = "disabled";
fixed-link {
speed = <2500>;
full-duplex;
};
};
};
};
};
&qe {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment