[openwrt/openwrt] mvebu: enable Aquantia phy driver for Puzzle devices

LEDE Commits lede-commits at lists.infradead.org
Sat Jan 1 14:31:29 PST 2022


dangole pushed a commit to openwrt/openwrt.git, branch openwrt-21.02:
https://git.openwrt.org/47d82f07105c239e582c8bdf7ac32732f2d5f8f3

commit 47d82f07105c239e582c8bdf7ac32732f2d5f8f3
Author: Daniel Golle <daniel at makrotopia.org>
AuthorDate: Thu Dec 23 18:10:05 2021 +0000

    mvebu: enable Aquantia phy driver for Puzzle devices
    
    While on Linux 5.10 this fixes Ethernet link status on all ports and
    makes 2.5G ports usable in 2.5G and 1G full-duplex mode, when using
    Linux 5.4 and backported Aquantia phy patches, only 1G mode works on
    the 2.5G ports and link speed and duplex are not reported correctly
    from the phy in case of 2.5G.
    The reasons are probably trivial, but hard to find. As having all
    ports work at least in 1G speed instead of having them not work at
    all is still better, push this anyway for now.
    
    Signed-off-by: Daniel Golle <daniel at makrotopia.org>
    (cherry picked from commit f81a06408eec28d479f699bd762b703ac65e2150)
---
 target/linux/mvebu/cortexa72/config-5.4                |  1 +
 .../arch/arm64/boot/dts/marvell/cn9131-puzzle-m901.dts | 12 ++++++------
 .../arch/arm64/boot/dts/marvell/cn9132-puzzle-m902.dts | 18 +++++++++---------
 3 files changed, 16 insertions(+), 15 deletions(-)

diff --git a/target/linux/mvebu/cortexa72/config-5.4 b/target/linux/mvebu/cortexa72/config-5.4
index 106724dc3b..debef1ac2e 100644
--- a/target/linux/mvebu/cortexa72/config-5.4
+++ b/target/linux/mvebu/cortexa72/config-5.4
@@ -1,4 +1,5 @@
 CONFIG_64BIT=y
+CONFIG_AQUANTIA_PHY=y
 CONFIG_ARCH_DMA_ADDR_T_64BIT=y
 CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
 CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9131-puzzle-m901.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9131-puzzle-m901.dts
index acf2ed6422..80d876b4ad 100644
--- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9131-puzzle-m901.dts
+++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9131-puzzle-m901.dts
@@ -169,21 +169,21 @@
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp0_comphy2 0>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy0>;
 };
 
 &cp0_eth1 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp0_comphy4 1>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy1>;
 };
 
 &cp0_eth2 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp0_comphy5 2>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy2>;
 };
 
 &cp0_gpio1 {
@@ -334,21 +334,21 @@
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp1_comphy2 0>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy0>;
 };
 
 &cp1_eth1 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp1_comphy4 1>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy1>;
 };
 
 &cp1_eth2 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp1_comphy5 2>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy2>;
 };
 
 &cp1_sata0 {
diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9132-puzzle-m902.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9132-puzzle-m902.dts
index bfa7874a67..fd99eb2d13 100644
--- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9132-puzzle-m902.dts
+++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/cn9132-puzzle-m902.dts
@@ -214,21 +214,21 @@
 	status = "okay";
 	phy-mode = "10gbase-kr";
 	phys = <&cp0_comphy2 0>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy0>;
 };
 
 &cp0_eth1 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp0_comphy4 1>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy1>;
 };
 
 &cp0_eth2 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp0_comphy1 2>;
-	managed = "in-band-status";
+	phy = <&cp0_nbaset_phy2>;
 };
 
 &cp0_gpio1 {
@@ -397,21 +397,21 @@
 	status = "okay";
 	phy-mode = "10gbase-kr";
 	phys = <&cp1_comphy2 0>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy0>;
 };
 
 &cp1_eth1 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp1_comphy4 1>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy1>;
 };
 
 &cp1_eth2 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp1_comphy1 2>;
-	managed = "in-band-status";
+	phy = <&cp1_nbaset_phy2>;
 };
 
 &cp1_gpio1 {
@@ -498,21 +498,21 @@
 	status = "okay";
 	phy-mode = "10gbase-kr";
 	phys = <&cp2_comphy2 0>;
-	managed = "in-band-status";
+	phy = <&cp2_nbaset_phy0>;
 };
 
 &cp2_eth1 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp2_comphy4 1>;
-	managed = "in-band-status";
+	phy = <&cp2_nbaset_phy1>;
 };
 
 &cp2_eth2 {
 	status = "okay";
 	phy-mode = "2500base-x";
 	phys = <&cp2_comphy1 2>;
-	managed = "in-band-status";
+	phy = <&cp2_nbaset_phy2>;
 };
 
 &cp2_gpio1 {



More information about the lede-commits mailing list