From: Sven Van Asbroeck <thesve...@gmail.com>

On the ksz8795, if the devicetree contains a cpu node,
devicetree parsing fails and the whole driver errors out.

Fix the devicetree parsing code by making it use the
correct number of ports.

Fixes: 912aae27c6af ("net: dsa: microchip: really look for phy-mode in port 
nodes")
Tested-by: Sven Van Asbroeck <thesve...@gmail.com> # ksz8795
Signed-off-by: Sven Van Asbroeck <thesve...@gmail.com>
---

Tree: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git # 905b2032fa42

To: Woojung Huh <woojung....@microchip.com>
To: Microchip Linux Driver Support <unglinuxdri...@microchip.com>
To: Andrew Lunn <and...@lunn.ch>
To: Vivien Didelot <vivien.dide...@gmail.com>
To: Florian Fainelli <f.faine...@gmail.com>
To: Vladimir Oltean <olte...@gmail.com>
To: "David S. Miller" <da...@davemloft.net>
To: Jakub Kicinski <k...@kernel.org>
Cc: Helmut Grohne <helmut.gro...@intenta.de>
Cc: netdev@vger.kernel.org
Cc: linux-ker...@vger.kernel.org

 drivers/net/dsa/microchip/ksz_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/dsa/microchip/ksz_common.c 
b/drivers/net/dsa/microchip/ksz_common.c
index e5f047129b15..17b804c44c53 100644
--- a/drivers/net/dsa/microchip/ksz_common.c
+++ b/drivers/net/dsa/microchip/ksz_common.c
@@ -431,7 +431,7 @@ int ksz_switch_register(struct ksz_device *dev,
                                if (of_property_read_u32(port, "reg",
                                                         &port_num))
                                        continue;
-                               if (port_num >= dev->port_cnt)
+                               if (port_num >= dev->ds->num_ports)
                                        return -EINVAL;
                                of_get_phy_mode(port,
                                                
&dev->ports[port_num].interface);
-- 
2.17.1

Reply via email to