mbox series

[net-next,v5,0/4] net: dsa: mv88e6xxx: serdes link without phy

Message ID 20201124043440.28400-1-chris.packham@alliedtelesis.co.nz
Headers show
Series net: dsa: mv88e6xxx: serdes link without phy | expand

Message

Chris Packham Nov. 24, 2020, 4:34 a.m. UTC
This small series gets my hardware into a working state. The key points are to
make sure we don't force the link and that we ask the MAC for the link status.
I also have updated my dts to say `phy-mode = "1000base-x";` and `managed =
"in-band-status";`

I've dropped the patch for the 88E6123 as it's a distraction and I lack
hardware to do any proper testing with it. Earlier versions are on the mailing
list if anyone wants to pick it up in the future.

I notice there's a series for mv88e6393x circulating on the netdev mailing
list. As patch #1 is adding a new device specific op either this series will
need updating to cover the mv88e6393x or the mv88e6393x series will need
updating for the new op depenting on which lands first.

Chris Packham (4):
  net: dsa: mv88e6xxx: Don't force link when using in-band-status
  net: dsa: mv88e6xxx: Support serdes ports on MV88E6097/6095/6185
  net: dsa: mv88e6xxx: Add serdes interrupt support for MV88E6097
  net: dsa: mv88e6xxx: Handle error in serdes_get_regs

 drivers/net/dsa/mv88e6xxx/chip.c   |  47 ++++++++++-
 drivers/net/dsa/mv88e6xxx/chip.h   |   4 +
 drivers/net/dsa/mv88e6xxx/port.c   |  36 +++++++++
 drivers/net/dsa/mv88e6xxx/port.h   |   3 +
 drivers/net/dsa/mv88e6xxx/serdes.c | 123 +++++++++++++++++++++++++++--
 drivers/net/dsa/mv88e6xxx/serdes.h |   9 +++
 6 files changed, 213 insertions(+), 9 deletions(-)

Comments

Andrew Lunn Nov. 25, 2020, 12:33 a.m. UTC | #1
On Tue, Nov 24, 2020 at 05:34:37PM +1300, Chris Packham wrote:
> When a port is configured with 'managed = "in-band-status"' switch chips

> like the 88E6390 need to propagate the SERDES link state to the MAC

> because the link state is not correctly detected. This causes problems

> on the 88E6185/88E6097 where the link partner won't see link state

> changes because we're forcing the link.

> 

> To address this introduce a new device specific op port_sync_link() and

> push the logic from mv88e6xxx_mac_link_up() into that. Provide an

> implementation for the 88E6185 like devices which doesn't force the

> link.

> 

> Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>


Reviewed-by: Andrew Lunn <andrew@lunn.ch>


    Andrew
patchwork-bot+netdevbpf@kernel.org Nov. 26, 2020, 2:10 a.m. UTC | #2
Hello:

This series was applied to netdev/net-next.git (refs/heads/master):

On Tue, 24 Nov 2020 17:34:36 +1300 you wrote:
> This small series gets my hardware into a working state. The key points are to

> make sure we don't force the link and that we ask the MAC for the link status.

> I also have updated my dts to say `phy-mode = "1000base-x";` and `managed =

> "in-band-status";`

> 

> I've dropped the patch for the 88E6123 as it's a distraction and I lack

> hardware to do any proper testing with it. Earlier versions are on the mailing

> list if anyone wants to pick it up in the future.

> 

> [...]


Here is the summary with links:
  - [net-next,v5,1/4] net: dsa: mv88e6xxx: Don't force link when using in-band-status
    https://git.kernel.org/netdev/net-next/c/4efe76629036
  - [net-next,v5,2/4] net: dsa: mv88e6xxx: Support serdes ports on MV88E6097/6095/6185
    https://git.kernel.org/netdev/net-next/c/f5be107c3338
  - [net-next,v5,3/4] net: dsa: mv88e6xxx: Add serdes interrupt support for MV88E6097
    https://git.kernel.org/netdev/net-next/c/5c19bc8b5734
  - [net-next,v5,4/4] net: dsa: mv88e6xxx: Handle error in serdes_get_regs
    https://git.kernel.org/netdev/net-next/c/0fd5d79efa4a

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html