On Wed, Jan 20, 2021 at 01:10:45AM +0100, Marek Vasut wrote: > The KSZ8795 switch has 4 external ports {0,1,2,3} and 1 CPU port {4}, so > does the KSZ8765. The KSZ8794 seems to be repackaged KSZ8795 with different > ID and port 3 not routed out, however the port 3 registers are present in > the silicon, so the KSZ8794 switch has 3 external ports {0,1,2} and 1 CPU > port {4}. Currently the driver always uses the last port as CPU port, on > KSZ8795/KSZ8765 that is port 4 and that is OK, but on KSZ8794 that is port > 3 and that is not OK, as it must also be port 4. > > This patch adjusts the driver such that it always registers a switch with > 5 ports total (4 external ports, 1 CPU port), always sets the CPU port to > switch port 4, and then configures the external port mask according to > the switch model -- 3 ports for KSZ8794 and 4 for KSZ8795/KSZ8765. > > Fixes: 68a1b676db52 ("net: dsa: microchip: ksz8795: remove superfluous > port_cnt assignment") > Fixes: 4ce2a984abd8 ("net: dsa: microchip: ksz8795: use phy_port_cnt where > possible") > Fixes: 241ed719bc98 ("net: dsa: microchip: ksz8795: use port_cnt instead of > TOTOAL_PORT_NUM") > Signed-off-by: Marek Vasut <ma...@denx.de>
Reviewed-by: Andrew Lunn <and...@lunn.ch> Andrew