summaryrefslogtreecommitdiff
path: root/drivers/bus
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@baylibre.com>2025-12-18 21:42:15 +0100
committerManivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>2025-12-31 16:27:13 +0530
commit8535df5dd64ec02d85e65dbcf79a59db9c16d921 (patch)
treeeddbeb2f9682a0a77fb52ccfe564335758722bb7 /drivers/bus
parent4a9ba211d0264131dcfca0cbc10bff5ff277ff0a (diff)
downloadlinux-8535df5dd64ec02d85e65dbcf79a59db9c16d921.tar.gz
linux-8535df5dd64ec02d85e65dbcf79a59db9c16d921.tar.bz2
linux-8535df5dd64ec02d85e65dbcf79a59db9c16d921.zip
bus: mhi: host: Use bus callbacks for .probe() and .remove()
These are nearly identical to the driver callbacks, the only relevant difference is that the bus remove method returns void (instead of an int where the value is ignored). The objective is to get rid of users of struct device_driver callbacks .probe(), and .remove() to eventually remove these. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com> Link: https://patch.msgid.link/e8032b3c2a8953a4a2b84dfa79a260c35f1d71b7.1766090211.git.ukleinek@kernel.org
Diffstat (limited to 'drivers/bus')
-rw-r--r--drivers/bus/mhi/host/init.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/bus/mhi/host/init.c b/drivers/bus/mhi/host/init.c
index b020a6489c07..c47f66833cda 100644
--- a/drivers/bus/mhi/host/init.c
+++ b/drivers/bus/mhi/host/init.c
@@ -1255,7 +1255,7 @@ struct mhi_device *mhi_alloc_device(struct mhi_controller *mhi_cntrl)
return mhi_dev;
}
-static int mhi_driver_probe(struct device *dev)
+static int mhi_probe(struct device *dev)
{
struct mhi_device *mhi_dev = to_mhi_device(dev);
struct mhi_controller *mhi_cntrl = mhi_dev->mhi_cntrl;
@@ -1331,7 +1331,7 @@ exit_probe:
return ret;
}
-static int mhi_driver_remove(struct device *dev)
+static void mhi_remove(struct device *dev)
{
struct mhi_device *mhi_dev = to_mhi_device(dev);
struct mhi_driver *mhi_drv = to_mhi_driver(dev->driver);
@@ -1345,7 +1345,7 @@ static int mhi_driver_remove(struct device *dev)
/* Skip if it is a controller device */
if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
- return 0;
+ return;
/* Reset both channels */
for (dir = 0; dir < 2; dir++) {
@@ -1397,8 +1397,6 @@ static int mhi_driver_remove(struct device *dev)
while (mhi_dev->dev_wake)
mhi_device_put(mhi_dev);
-
- return 0;
}
int __mhi_driver_register(struct mhi_driver *mhi_drv, struct module *owner)
@@ -1410,8 +1408,6 @@ int __mhi_driver_register(struct mhi_driver *mhi_drv, struct module *owner)
driver->bus = &mhi_bus_type;
driver->owner = owner;
- driver->probe = mhi_driver_probe;
- driver->remove = mhi_driver_remove;
return driver_register(driver);
}
@@ -1458,6 +1454,8 @@ const struct bus_type mhi_bus_type = {
.dev_name = "mhi",
.match = mhi_match,
.uevent = mhi_uevent,
+ .probe = mhi_probe,
+ .remove = mhi_remove,
.dev_groups = mhi_dev_groups,
};