On Fri, Sep 06, 2024 at 03:39:51PM +0200, Niklas Söderlund wrote: > The initial marvell-88q2xxx driver only supported the Marvell 88Q2110 > PHY without auto negotiation support. The reason documented states that > the provided initialization sequence did not to work. Now a method to > enable auto negotiation have been found by comparing the initialization > of other supported devices and an out-of-tree PHY driver. > > Perform the minimal needed initialization of the PHY to get auto > negotiation working and remove the limitation that disables the auto > negotiation feature for the mv88q2110 device. > > With this change a 1000Mbps full duplex link is able to be negotiated > between two mv88q2110 and the link works perfectly. The other side also > reflects the manually configure settings of the master device. > > # ethtool eth0 > Settings for eth0: > Supported ports: [ ] > Supported link modes: 100baseT1/Full > 1000baseT1/Full > Supported pause frame use: Symmetric Receive-only > Supports auto-negotiation: Yes > Supported FEC modes: Not reported > Advertised link modes: 100baseT1/Full > 1000baseT1/Full > Advertised pause frame use: No > Advertised auto-negotiation: Yes > Advertised FEC modes: Not reported > Link partner advertised link modes: 100baseT1/Full > 1000baseT1/Full > Link partner advertised pause frame use: No > Link partner advertised auto-negotiation: Yes > Link partner advertised FEC modes: Not reported > Speed: 1000Mb/s > Duplex: Full > Auto-negotiation: on > master-slave cfg: preferred master > master-slave status: slave > Port: Twisted Pair > PHYAD: 0 > Transceiver: external > MDI-X: Unknown > Link detected: yes > SQI: 15/15 > > Before this change I was not able to manually configure 1000Mbps link, > only a 100Mpps link so this change providers an improvement in > performance for this device. > > [ 5] local 10.1.0.2 port 5201 connected to 10.1.0.1 port 38346 > [ ID] Interval Transfer Bitrate Retr Cwnd > [ 5] 0.00-1.00 sec 96.8 MBytes 812 Mbits/sec 0 469 KBytes > [ 5] 1.00-2.00 sec 94.3 MBytes 791 Mbits/sec 0 469 KBytes > [ 5] 2.00-3.00 sec 96.1 MBytes 806 Mbits/sec 0 469 KBytes > [ 5] 3.00-4.00 sec 98.3 MBytes 825 Mbits/sec 0 469 KBytes > [ 5] 4.00-5.00 sec 98.4 MBytes 825 Mbits/sec 0 469 KBytes > [ 5] 5.00-6.00 sec 98.4 MBytes 826 Mbits/sec 0 469 KBytes > [ 5] 6.00-7.00 sec 98.9 MBytes 830 Mbits/sec 0 469 KBytes > [ 5] 7.00-8.00 sec 91.7 MBytes 769 Mbits/sec 0 469 KBytes > [ 5] 8.00-9.00 sec 99.4 MBytes 834 Mbits/sec 0 747 KBytes > [ 5] 9.00-10.00 sec 101 MBytes 851 Mbits/sec 0 747 KBytes > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> I will mark this one as 'change-requested', when in fact it is more a test-requested. Once we get a Tested-by: we can merge this next cycle. Andrew --- pw-bot: cr