diff options
| author | Buday Csaba <buday.csaba@prolan.hu> | 2025-11-18 14:58:54 +0100 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2025-11-20 17:41:39 -0800 |
| commit | e5a440bf020ef9ee11d442159bd394d66250db30 (patch) | |
| tree | 1f9fa3f35e8df416dcfb0d2273c81f525549bedd | |
| parent | acde7ad968f6c536397b39b23e4c70dc466fbc59 (diff) | |
net: mdio: improve reset handling in mdio_device.c
Change fwnode_property_read_u32() in mdio_device_register_reset()
to device_property_read_u32(), which is more appropriate here.
Make mdio_device_unregister_reset() truly reverse
mdio_device_register_reset() by setting the internal fields to
their default values.
Signed-off-by: Buday Csaba <buday.csaba@prolan.hu>
Link: https://patch.msgid.link/641df1488517ae71ba10158ec1e38424211d8651.1763473655.git.buday.csaba@prolan.hu
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
| -rw-r--r-- | drivers/net/phy/mdio_device.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/phy/mdio_device.c b/drivers/net/phy/mdio_device.c index a4d9c6ccf876..fd0e16dbc5cc 100644 --- a/drivers/net/phy/mdio_device.c +++ b/drivers/net/phy/mdio_device.c @@ -149,9 +149,9 @@ int mdio_device_register_reset(struct mdio_device *mdiodev) mdiodev->reset_ctrl = reset; /* Read optional firmware properties */ - fwnode_property_read_u32(dev_fwnode(&mdiodev->dev), "reset-assert-us", + device_property_read_u32(&mdiodev->dev, "reset-assert-us", &mdiodev->reset_assert_delay); - fwnode_property_read_u32(dev_fwnode(&mdiodev->dev), "reset-deassert-us", + device_property_read_u32(&mdiodev->dev, "reset-deassert-us", &mdiodev->reset_deassert_delay); return 0; @@ -165,7 +165,11 @@ int mdio_device_register_reset(struct mdio_device *mdiodev) void mdio_device_unregister_reset(struct mdio_device *mdiodev) { gpiod_put(mdiodev->reset_gpio); + mdiodev->reset_gpio = NULL; reset_control_put(mdiodev->reset_ctrl); + mdiodev->reset_ctrl = NULL; + mdiodev->reset_assert_delay = 0; + mdiodev->reset_deassert_delay = 0; } void mdio_device_reset(struct mdio_device *mdiodev, int value) |