| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- From: Jan Hoffmann <[email protected]>
- Date: Sat, 27 Apr 2024 20:41:43 +0200
- Subject: ARM: dts: Use cpsw ethernet driver for some am335x devices
- The new cpsw-switch driver requires a vid for every port which is
- reserved for internal usage (defaulting to 1 and 2). As a result, some
- network configurations are impossible, such as a bridge with
- default_pvid of 1 (even if it is not vlan aware).
- As a simple workaround, the ti,dual-emac-pvid property could be changed
- to another value, but that would just shift the problem. Instead, switch
- some devices back to the older cpsw ethernet driver.
- (This patch is not suitable for upstreaming, it just makes the affected
- devices in OpenWrt usable again with the default network config.)
- Signed-off-by: Jan Hoffmann <[email protected]>
- ---
- --- a/arch/arm/boot/dts/ti/omap/am335x-bone-common.dtsi
- +++ b/arch/arm/boot/dts/ti/omap/am335x-bone-common.dtsi
- @@ -358,27 +358,24 @@
- };
- };
-
- -&cpsw_port1 {
- +&cpsw_emac0 {
- phy-handle = <ðphy0>;
- phy-mode = "mii";
- - ti,dual-emac-pvid = <1>;
- };
-
- -&cpsw_port2 {
- - status = "disabled";
- -};
- -
- -&mac_sw {
- +&mac {
- + slaves = <1>;
- pinctrl-names = "default", "sleep";
- pinctrl-0 = <&cpsw_default>;
- pinctrl-1 = <&cpsw_sleep>;
- status = "okay";
- };
-
- -&davinci_mdio_sw {
- +&davinci_mdio {
- pinctrl-names = "default", "sleep";
- pinctrl-0 = <&davinci_mdio_default>;
- pinctrl-1 = <&davinci_mdio_sleep>;
- + status = "okay";
-
- ethphy0: ethernet-phy@0 {
- reg = <0>;
- --- a/arch/arm/boot/dts/ti/omap/am335x-evm.dts
- +++ b/arch/arm/boot/dts/ti/omap/am335x-evm.dts
- @@ -682,31 +682,28 @@
- };
- };
-
- -&mac_sw {
- +&mac {
- + slaves = <1>;
- pinctrl-names = "default", "sleep";
- pinctrl-0 = <&cpsw_default>;
- pinctrl-1 = <&cpsw_sleep>;
- status = "okay";
- };
-
- -&davinci_mdio_sw {
- +&davinci_mdio {
- pinctrl-names = "default", "sleep";
- pinctrl-0 = <&davinci_mdio_default>;
- pinctrl-1 = <&davinci_mdio_sleep>;
- + status = "okay";
-
- ethphy0: ethernet-phy@0 {
- reg = <0>;
- };
- };
-
- -&cpsw_port1 {
- +&cpsw_emac0 {
- phy-handle = <ðphy0>;
- phy-mode = "rgmii-id";
- - ti,dual-emac-pvid = <1>;
- -};
- -
- -&cpsw_port2 {
- - status = "disabled";
- };
-
- &tscadc {
|