diff options
author | Daniel Golle <daniel@makrotopia.org> | 2021-12-23 18:10:05 +0000 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2022-01-01 22:30:09 +0000 |
commit | 47d82f07105c239e582c8bdf7ac32732f2d5f8f3 (patch) | |
tree | a61f3541c030afce2347b96b8dcb7ab2a083dbf4 /target | |
parent | 164ed6069cee3c9f9ca4323918a136dc5ea5a15d (diff) | |
download | upstream-47d82f07105c239e582c8bdf7ac32732f2d5f8f3.tar.gz upstream-47d82f07105c239e582c8bdf7ac32732f2d5f8f3.tar.bz2 upstream-47d82f07105c239e582c8bdf7ac32732f2d5f8f3.zip |
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@makrotopia.org>
(cherry picked from commit f81a06408eec28d479f699bd762b703ac65e2150)
Diffstat (limited to 'target')
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 { |