aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/dsa
diff options
context:
space:
mode:
authorGravatar Bartosz Golaszewski <bgolaszewski@baylibre.com> 2020-06-29 14:03:43 +0200
committerGravatar David S. Miller <davem@davemloft.net> 2020-06-30 15:57:34 -0700
commitac3a68d56651c3dad2c12c7afce065fe15267f44 (patch)
tree71ed3ea13a53ccae6483acae6caa4b53c29d32d6 /drivers/net/dsa
parentphy: mdio: add kerneldoc for __devm_mdiobus_register() (diff)
downloadlinux-ac3a68d56651.tar.gz
linux-ac3a68d56651.tar.bz2
linux-ac3a68d56651.zip
net: phy: don't abuse devres in devm_mdiobus_register()
We currently have two managed helpers for mdiobus - devm_mdiobus_alloc() and devm_mdiobus_register(). The idea behind devres is that the release callback releases whatever resource the devm function allocates. In the mdiobus case however there's no devres associated with the device by devm_mdiobus_register(). Instead the release callback for devm_mdiobus_alloc(): _devm_mdiobus_free() unregisters the device if it is marked as managed. This all seems wrong. The managed structure shouldn't need to know or care about whether it's managed or not - and this is the case now for struct mii_bus. The devres wrapper should be opaque to the managed resource. This changeset makes devm_mdiobus_alloc() and devm_mdiobus_register() conform to common devres standards: devm_mdiobus_alloc() allocates a devres structure and registers a callback that will call mdiobus_free(). __devm_mdiobus_register() allocated another devres and registers a callback that will unregister the bus. Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa')
0 files changed, 0 insertions, 0 deletions