From: Baruch Siach <[email protected]>
Date: Wed, 29 Aug 2018 09:44:39 +0300
> Without a valid of_node in struct device we can't find the mvpp2 port
> device by its DT node. Specifically, this breaks
> of_find_net_device_by_node().
>
> For example, the Armada 8040 based Clearfog GT-8K uses Marvell 88E6141
> switch connected to the &cp1_eth2 port:
>
> &cp1_mdio {
> ...
>
> switch0: switch0@4 {
> compatible = "marvell,mv88e6085";
> ...
>
> ports {
> ...
>
> port@5 {
> reg = <5>;
> label = "cpu";
> ethernet = <&cp1_eth2>;
> };
> };
> };
> };
>
> Without this patch, dsa_register_switch() returns -EPROBE_DEFER because
> of_find_net_device_by_node() can't find the device_node of the &cp1_eth2
> device.
>
> Reviewed-by: Andrew Lunn <[email protected]>
> Signed-off-by: Baruch Siach <[email protected]>
Applied.