2020-03-16 07:50:23

by Chris Packham

[permalink] [raw]
Subject: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

I've gone ahead an sent a revert. This is the same as the original v1 except
I've added Andrew's review to the commit message.

Chris Packham (2):
Revert "net: mvmdio: avoid error message for optional IRQ"
net: mvmdio: avoid error message for optional IRQ

drivers/net/ethernet/marvell/mvmdio.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--
2.25.1


2020-03-17 14:25:10

by Andrew Lunn

[permalink] [raw]
Subject: Re: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

On Mon, Mar 16, 2020 at 08:49:05PM +1300, Chris Packham wrote:
> I've gone ahead an sent a revert. This is the same as the original v1 except
> I've added Andrew's review to the commit message.

Hi Chris

Thanks for keeping at this.

I took a look at the core code. It would of been better to call this
_nowarn, not _optional :-(

Andrew

2020-03-18 03:55:31

by David Miller

[permalink] [raw]
Subject: Re: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

From: Chris Packham <[email protected]>
Date: Mon, 16 Mar 2020 20:49:05 +1300

> I've gone ahead an sent a revert. This is the same as the original v1 except
> I've added Andrew's review to the commit message.

Applied, thanks Chris.

2020-04-08 01:20:49

by Matteo Croce

[permalink] [raw]
Subject: Re: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

On Mon, 16 Mar 2020 20:49:05 +1300
Chris Packham <[email protected]> wrote:

> I've gone ahead an sent a revert. This is the same as the original v1
> except I've added Andrew's review to the commit message.
>
> Chris Packham (2):
> Revert "net: mvmdio: avoid error message for optional IRQ"
> net: mvmdio: avoid error message for optional IRQ
>
> drivers/net/ethernet/marvell/mvmdio.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>

Hi all,

I have a Macchiatobin board and the 10G port stopped working in net-next.
I suspect that these two patches could be involved.
The phy is correctly detected now (I mean no errors and the device is
registered) but no traffic can be sent or received:

root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd081]
[ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
[ 0.062798] libphy: Fixed MDIO Bus: probed
[ 1.132552] armada8k-pcie f2600000.pcie: Phy link never came up
[ 2.553464] libphy: orion_mdio_bus: probed
[ 2.558045] libphy: orion_mdio_bus: probed
[ 2.564037] mvpp2 f2000000.ethernet: using 8 per-cpu buffers
[ 2.588754] mvpp2 f2000000.ethernet eth0: Using random mac address 1e:a6:ce:39:8d:22
[ 2.599980] mvpp2 f4000000.ethernet: using 8 per-cpu buffers
[ 2.623293] mvpp2 f4000000.ethernet eth1: Using random mac address aa:ad:b5:91:8c:1e
[ 2.626535] mvpp2 f4000000.ethernet eth2: Using random mac address 6e:39:fb:74:09:6e
[ 2.629600] mvpp2 f4000000.ethernet eth3: Using random mac address 16:ec:bf:9e:11:0f
[ 2.952063] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-mii:00] driver [Marvell 88E1510] (irq=POLL)
[ 2.953251] mvpp2 f4000000.ethernet eth2: configuring for phy/sgmii link mode
[ 7.122899] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full - flow control rx/tx
[ 25.727756] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-mii:00] driver [mv88x3310] (irq=POLL)
[ 25.746711] mvpp2 f2000000.ethernet eth0: configuring for phy/10gbase-r link mode
[ 27.842712] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full - flow control off


The only way to have it working is to unplug the power, boot an old
kernel, e.g. 5.3.0:

root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd081]
[ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
[ 0.083647] libphy: Fixed MDIO Bus: probed
[ 0.152788] armada8k-pcie f2600000.pcie: Failed to initialize PHY(s) (-22)
[ 1.429643] libphy: orion_mdio_bus: probed
[ 1.439109] libphy: orion_mdio_bus: probed
[ 1.450989] mvpp2 f2000000.ethernet eth0: Using random mac address 5a:09:5f:97:aa:cc
[ 1.476692] mvpp2 f4000000.ethernet eth1: Using random mac address f2:e2:c1:77:fa:23
[ 1.479688] mvpp2 f4000000.ethernet eth2: Using random mac address b2:33:c0:2f:da:ba
[ 1.482296] mvpp2 f4000000.ethernet eth3: Using random mac address 6a:38:79:2e:96:8c
[ 1.814163] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-mii:00] driver [Marvell 88E1510]
[ 1.814170] mvpp2 f4000000.ethernet eth2: phy: setting supported 00,00000000,000066ef advertising 00,00000000,000066ef
[ 1.826025] mvpp2 f4000000.ethernet eth2: configuring for phy/sgmii link mode
[ 1.826030] mvpp2 f4000000.ethernet eth2: phylink_mac_config: mode=phy/sgmii/Unknown/Unknown adv=00,00000000,000066ef pause=10 link=0 an=1
[ 1.827683] mvpp2 f4000000.ethernet eth2: phy link down sgmii/1Gbps/Half
[ 6.002304] mvpp2 f4000000.ethernet eth2: phy link up sgmii/1Gbps/Full
[ 6.002313] mvpp2 f4000000.ethernet eth2: phylink_mac_config: mode=phy/sgmii/1Gbps/Full adv=00,00000000,00000000 pause=0f link=1 an=0
[ 6.002332] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full - flow control rx/tx
[ 33.186689] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-mii:00] driver [mv88x3310]
[ 33.194739] mvpp2 f2000000.ethernet eth0: phy: setting supported 00,00008000,0000706f advertising 00,00008000,0000706f
[ 33.218029] mvpp2 f2000000.ethernet eth0: configuring for phy/10gbase-kr link mode
[ 33.225637] mvpp2 f2000000.ethernet eth0: phylink_mac_config: mode=phy/10gbase-kr/Unknown/Unknown adv=00,00008000,0000706f pause=10 link=0 an=1
[ 33.241341] mvpp2 f2000000.ethernet eth0: phy link down 10gbase-kr/Unknown/Unknown
[ 35.362160] mvpp2 f2000000.ethernet eth0: phy link up 10gbase-kr/10Gbps/Full
[ 35.369243] mvpp2 f2000000.ethernet eth0: phylink_mac_config: mode=phy/10gbase-kr/10Gbps/Full adv=00,00000000,00000000 pause=00 link=1 an=0
[ 35.381836] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full - flow control off


And then do a soft reboot to net-next which works.
By rebooting the board multiple times it works, until I unplug the power.

Any hint?
Bye,

--
Matteo Croce
per aspera ad upstream

2020-04-08 01:46:01

by Chris Packham

[permalink] [raw]
Subject: Re: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

Hi Matteo,

On Wed, 2020-04-08 at 03:19 +0200, Matteo Croce wrote:
> On Mon, 16 Mar 2020 20:49:05 +1300
> Chris Packham <[email protected]> wrote:
>
> > I've gone ahead an sent a revert. This is the same as the original
> > v1
> > except I've added Andrew's review to the commit message.
> >
> > Chris Packham (2):
> > Revert "net: mvmdio: avoid error message for optional IRQ"
> > net: mvmdio: avoid error message for optional IRQ
> >
> > drivers/net/ethernet/marvell/mvmdio.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
>
> Hi all,
>
> I have a Macchiatobin board and the 10G port stopped working in net-
> next.
> I suspect that these two patches could be involved.
> The phy is correctly detected now (I mean no errors and the device is
> registered) but no traffic can be sent or received:
>
> root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
> [ 0.000000] Booting Linux on physical CPU 0x0000000000
> [0x410fd081]
> [ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
> [ 0.062798] libphy: Fixed MDIO Bus: probed
> [ 1.132552] armada8k-pcie f2600000.pcie: Phy link never came up
> [ 2.553464] libphy: orion_mdio_bus: probed
> [ 2.558045] libphy: orion_mdio_bus: probed
> [ 2.564037] mvpp2 f2000000.ethernet: using 8 per-cpu buffers
> [ 2.588754] mvpp2 f2000000.ethernet eth0: Using random mac address
> 1e:a6:ce:39:8d:22
> [ 2.599980] mvpp2 f4000000.ethernet: using 8 per-cpu buffers
> [ 2.623293] mvpp2 f4000000.ethernet eth1: Using random mac address
> aa:ad:b5:91:8c:1e
> [ 2.626535] mvpp2 f4000000.ethernet eth2: Using random mac address
> 6e:39:fb:74:09:6e
> [ 2.629600] mvpp2 f4000000.ethernet eth3: Using random mac address
> 16:ec:bf:9e:11:0f
> [ 2.952063] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-
> mii:00] driver [Marvell 88E1510] (irq=POLL)
> [ 2.953251] mvpp2 f4000000.ethernet eth2: configuring for
> phy/sgmii link mode
> [ 7.122899] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full
> - flow control rx/tx
> [ 25.727756] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-
> mii:00] driver [mv88x3310] (irq=POLL)
> [ 25.746711] mvpp2 f2000000.ethernet eth0: configuring for
> phy/10gbase-r link mode
> [ 27.842712] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full
> - flow control off
>
>
> The only way to have it working is to unplug the power, boot an old
> kernel, e.g. 5.3.0:
>
> root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
> [ 0.000000] Booting Linux on physical CPU 0x0000000000
> [0x410fd081]
> [ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
> [ 0.083647] libphy: Fixed MDIO Bus: probed
> [ 0.152788] armada8k-pcie f2600000.pcie: Failed to initialize
> PHY(s) (-22)
> [ 1.429643] libphy: orion_mdio_bus: probed
> [ 1.439109] libphy: orion_mdio_bus: probed
> [ 1.450989] mvpp2 f2000000.ethernet eth0: Using random mac address
> 5a:09:5f:97:aa:cc
> [ 1.476692] mvpp2 f4000000.ethernet eth1: Using random mac address
> f2:e2:c1:77:fa:23
> [ 1.479688] mvpp2 f4000000.ethernet eth2: Using random mac address
> b2:33:c0:2f:da:ba
> [ 1.482296] mvpp2 f4000000.ethernet eth3: Using random mac address
> 6a:38:79:2e:96:8c
> [ 1.814163] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-
> mii:00] driver [Marvell 88E1510]
> [ 1.814170] mvpp2 f4000000.ethernet eth2: phy: setting supported
> 00,00000000,000066ef advertising 00,00000000,000066ef
> [ 1.826025] mvpp2 f4000000.ethernet eth2: configuring for
> phy/sgmii link mode
> [ 1.826030] mvpp2 f4000000.ethernet eth2: phylink_mac_config:
> mode=phy/sgmii/Unknown/Unknown adv=00,00000000,000066ef pause=10
> link=0 an=1
> [ 1.827683] mvpp2 f4000000.ethernet eth2: phy link down
> sgmii/1Gbps/Half
> [ 6.002304] mvpp2 f4000000.ethernet eth2: phy link up
> sgmii/1Gbps/Full
> [ 6.002313] mvpp2 f4000000.ethernet eth2: phylink_mac_config:
> mode=phy/sgmii/1Gbps/Full adv=00,00000000,00000000 pause=0f link=1
> an=0
> [ 6.002332] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full
> - flow control rx/tx
> [ 33.186689] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-
> mii:00] driver [mv88x3310]
> [ 33.194739] mvpp2 f2000000.ethernet eth0: phy: setting supported
> 00,00008000,0000706f advertising 00,00008000,0000706f
> [ 33.218029] mvpp2 f2000000.ethernet eth0: configuring for
> phy/10gbase-kr link mode
> [ 33.225637] mvpp2 f2000000.ethernet eth0: phylink_mac_config:
> mode=phy/10gbase-kr/Unknown/Unknown adv=00,00008000,0000706f pause=10
> link=0 an=1
> [ 33.241341] mvpp2 f2000000.ethernet eth0: phy link down 10gbase-
> kr/Unknown/Unknown
> [ 35.362160] mvpp2 f2000000.ethernet eth0: phy link up 10gbase-
> kr/10Gbps/Full
> [ 35.369243] mvpp2 f2000000.ethernet eth0: phylink_mac_config:
> mode=phy/10gbase-kr/10Gbps/Full adv=00,00000000,00000000 pause=00
> link=1 an=0
> [ 35.381836] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full
> - flow control off
>
>
> And then do a soft reboot to net-next which works.
> By rebooting the board multiple times it works, until I unplug the
> power.
>
> Any hint?
> Bye,
>

Well certainly the first change that got applied commit e1f550dc44a4
("net: mvmdio: avoid error message for optional IRQ") would cause a
problem. But the revert and the corrected change commit fa2632f74e57
("net: mvmdio: avoid error message for optional IRQ") should result in
no behaviour changing (other than the spurious log message.

There is a pre-existing problem that any error other than -EPROBE_DEFER
will be silently ignored (that was what the initial attempt was trying
to handle but got it wrong). So there could be an error that might be
trying to tell you that something went wrong.

2020-04-10 13:48:08

by Matteo Croce

[permalink] [raw]
Subject: Re: [PATCH v3 0/2] net: mvmdio: avoid error message for optional IRQ

On Wed, Apr 8, 2020 at 3:45 AM Chris Packham
<[email protected]> wrote:
>
> Hi Matteo,
>
> On Wed, 2020-04-08 at 03:19 +0200, Matteo Croce wrote:
> > On Mon, 16 Mar 2020 20:49:05 +1300
> > Chris Packham <[email protected]> wrote:
> >
> > > I've gone ahead an sent a revert. This is the same as the original
> > > v1
> > > except I've added Andrew's review to the commit message.
> > >
> > > Chris Packham (2):
> > > Revert "net: mvmdio: avoid error message for optional IRQ"
> > > net: mvmdio: avoid error message for optional IRQ
> > >
> > > drivers/net/ethernet/marvell/mvmdio.c | 4 ++--
> > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> >
> > Hi all,
> >
> > I have a Macchiatobin board and the 10G port stopped working in net-
> > next.
> > I suspect that these two patches could be involved.
> > The phy is correctly detected now (I mean no errors and the device is
> > registered) but no traffic can be sent or received:
> >
> > root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
> > [ 0.000000] Booting Linux on physical CPU 0x0000000000
> > [0x410fd081]
> > [ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
> > [ 0.062798] libphy: Fixed MDIO Bus: probed
> > [ 1.132552] armada8k-pcie f2600000.pcie: Phy link never came up
> > [ 2.553464] libphy: orion_mdio_bus: probed
> > [ 2.558045] libphy: orion_mdio_bus: probed
> > [ 2.564037] mvpp2 f2000000.ethernet: using 8 per-cpu buffers
> > [ 2.588754] mvpp2 f2000000.ethernet eth0: Using random mac address
> > 1e:a6:ce:39:8d:22
> > [ 2.599980] mvpp2 f4000000.ethernet: using 8 per-cpu buffers
> > [ 2.623293] mvpp2 f4000000.ethernet eth1: Using random mac address
> > aa:ad:b5:91:8c:1e
> > [ 2.626535] mvpp2 f4000000.ethernet eth2: Using random mac address
> > 6e:39:fb:74:09:6e
> > [ 2.629600] mvpp2 f4000000.ethernet eth3: Using random mac address
> > 16:ec:bf:9e:11:0f
> > [ 2.952063] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-
> > mii:00] driver [Marvell 88E1510] (irq=POLL)
> > [ 2.953251] mvpp2 f4000000.ethernet eth2: configuring for
> > phy/sgmii link mode
> > [ 7.122899] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full
> > - flow control rx/tx
> > [ 25.727756] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-
> > mii:00] driver [mv88x3310] (irq=POLL)
> > [ 25.746711] mvpp2 f2000000.ethernet eth0: configuring for
> > phy/10gbase-r link mode
> > [ 27.842712] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full
> > - flow control off
> >
> >
> > The only way to have it working is to unplug the power, boot an old
> > kernel, e.g. 5.3.0:
> >
> > root@macchiatobin:~# dmesg |grep -i -e phy -e mvpp2
> > [ 0.000000] Booting Linux on physical CPU 0x0000000000
> > [0x410fd081]
> > [ 0.000000] arch_timer: cp15 timer(s) running at 25.00MHz (phys).
> > [ 0.083647] libphy: Fixed MDIO Bus: probed
> > [ 0.152788] armada8k-pcie f2600000.pcie: Failed to initialize
> > PHY(s) (-22)
> > [ 1.429643] libphy: orion_mdio_bus: probed
> > [ 1.439109] libphy: orion_mdio_bus: probed
> > [ 1.450989] mvpp2 f2000000.ethernet eth0: Using random mac address
> > 5a:09:5f:97:aa:cc
> > [ 1.476692] mvpp2 f4000000.ethernet eth1: Using random mac address
> > f2:e2:c1:77:fa:23
> > [ 1.479688] mvpp2 f4000000.ethernet eth2: Using random mac address
> > b2:33:c0:2f:da:ba
> > [ 1.482296] mvpp2 f4000000.ethernet eth3: Using random mac address
> > 6a:38:79:2e:96:8c
> > [ 1.814163] mvpp2 f4000000.ethernet eth2: PHY [f212a200.mdio-
> > mii:00] driver [Marvell 88E1510]
> > [ 1.814170] mvpp2 f4000000.ethernet eth2: phy: setting supported
> > 00,00000000,000066ef advertising 00,00000000,000066ef
> > [ 1.826025] mvpp2 f4000000.ethernet eth2: configuring for
> > phy/sgmii link mode
> > [ 1.826030] mvpp2 f4000000.ethernet eth2: phylink_mac_config:
> > mode=phy/sgmii/Unknown/Unknown adv=00,00000000,000066ef pause=10
> > link=0 an=1
> > [ 1.827683] mvpp2 f4000000.ethernet eth2: phy link down
> > sgmii/1Gbps/Half
> > [ 6.002304] mvpp2 f4000000.ethernet eth2: phy link up
> > sgmii/1Gbps/Full
> > [ 6.002313] mvpp2 f4000000.ethernet eth2: phylink_mac_config:
> > mode=phy/sgmii/1Gbps/Full adv=00,00000000,00000000 pause=0f link=1
> > an=0
> > [ 6.002332] mvpp2 f4000000.ethernet eth2: Link is Up - 1Gbps/Full
> > - flow control rx/tx
> > [ 33.186689] mvpp2 f2000000.ethernet eth0: PHY [f212a600.mdio-
> > mii:00] driver [mv88x3310]
> > [ 33.194739] mvpp2 f2000000.ethernet eth0: phy: setting supported
> > 00,00008000,0000706f advertising 00,00008000,0000706f
> > [ 33.218029] mvpp2 f2000000.ethernet eth0: configuring for
> > phy/10gbase-kr link mode
> > [ 33.225637] mvpp2 f2000000.ethernet eth0: phylink_mac_config:
> > mode=phy/10gbase-kr/Unknown/Unknown adv=00,00008000,0000706f pause=10
> > link=0 an=1
> > [ 33.241341] mvpp2 f2000000.ethernet eth0: phy link down 10gbase-
> > kr/Unknown/Unknown
> > [ 35.362160] mvpp2 f2000000.ethernet eth0: phy link up 10gbase-
> > kr/10Gbps/Full
> > [ 35.369243] mvpp2 f2000000.ethernet eth0: phylink_mac_config:
> > mode=phy/10gbase-kr/10Gbps/Full adv=00,00000000,00000000 pause=00
> > link=1 an=0
> > [ 35.381836] mvpp2 f2000000.ethernet eth0: Link is Up - 10Gbps/Full
> > - flow control off
> >
> >
> > And then do a soft reboot to net-next which works.
> > By rebooting the board multiple times it works, until I unplug the
> > power.
> >
> > Any hint?
> > Bye,
> >
>
> Well certainly the first change that got applied commit e1f550dc44a4
> ("net: mvmdio: avoid error message for optional IRQ") would cause a
> problem. But the revert and the corrected change commit fa2632f74e57
> ("net: mvmdio: avoid error message for optional IRQ") should result in
> no behaviour changing (other than the spurious log message.
>
> There is a pre-existing problem that any error other than -EPROBE_DEFER
> will be silently ignored (that was what the initial attempt was trying
> to handle but got it wrong). So there could be an error that might be
> trying to tell you that something went wrong.

Indeed, it was caused by this one:

commit c9cc1c815d36f9d5723e369d662f238bc3b35d83
Author: Russell King <[email protected]>
Date: Tue Mar 3 18:08:45 2020 +0000

net: phy: marvell10g: place in powersave mode at probe

Thanks,
--
Matteo Croce
per aspera ad upstream