Don't rely on the device tree to count the number of physical port. Instead introduce a new compatible string which the driver can use to select the correct port count. This also hardcodes the generic compatible string to 8. The rationale is that this compatible string was just used for the LAN9668 for now and I'm not even sure the current driver would support the LAN9662. Michael Walle (4): net: lan966x: hardcode the number of external ports dt-bindings: net: lan966x: add specific compatible string net: lan966x: add new compatible microchip,lan9668-switch ARM: dts: lan966x: use new microchip,lan9668-switch compatible .../net/microchip,lan966x-switch.yaml | 5 +++- arch/arm/boot/dts/lan966x.dtsi | 2 +- .../ethernet/microchip/lan966x/lan966x_main.c | 24 +++++++++++++------ 3 files changed, 22 insertions(+), 9 deletions(-) -- 2.30.2