net: phy: tja11xx: add delayed registration of TJA1102 PHY1
authorOleksij Rempel <o.rempel@pengutronix.de>
Wed, 22 Apr 2020 09:24:56 +0000 (11:24 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 23 Apr 2020 02:41:26 +0000 (19:41 -0700)
commit6a64d3cdc5ef89b2ac629701de5ffb3df1fb7937
tree8e08f0988a40f304d76a762488d7bead42d39b4b
parent5972157c2dde11698d7bcfc55621107d97121c87
net: phy: tja11xx: add delayed registration of TJA1102 PHY1

TJA1102 is a dual PHY package with PHY0 having proper PHYID and PHY1
having no ID. On one hand it is possible to for PHY detection by
compatible, on other hand we should be able to reset complete chip
before PHY1 configured it, and we need to define dependencies for proper
power management.

We can solve it by defining PHY1 as child of PHY0:
tja1102_phy0: ethernet-phy@4 {
reg = <0x4>;

interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>;

reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
reset-assert-us = <20>;
reset-deassert-us = <2000>;

tja1102_phy1: ethernet-phy@5 {
reg = <0x5>;

interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>;
};
};

The PHY1 should be a subnode of PHY0 and registered only after PHY0 was
completely reset and initialized.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/nxp-tja11xx.c