[PATCH v2 0/8] scsi: Make use of bus callbacks
Uwe Kleine-König
u.kleine-koenig at baylibre.com
Fri Dec 19 01:25:29 PST 2025
Hello,
this is v2 of the series to make the scsi subsystem stop using the
callbacks .probe(), .remove() and .shutdown() of struct device_driver.
Instead use their designated alternatives in struct bus_type.
The eventual goal is to drop the callbacks from struct device_driver.
The 2nd patch introduces some legacy handling for drivers still using
the device_driver callbacks. This results in a runtime warning (in
driver_register()). The following patches convert all in-tree drivers
(and thus fix the warnings one after another).
Conceptually this legacy handling could be dropped at the end of the
series, but I think this is a bad idea because this silently breaks
out-of-tree drivers (which also covers drivers that are currently
prepared for mainline submission) and in-tree drivers I might have
missed (though I'm convinced I catched them all). That convinces me that
keeping the legacy handling for at least one development cycle is the
right choice. I'll care for that at the latest when I remove the
callbacks from struct device_driver.
Changes since (implicit) v1, available at
https://lore.kernel.org/linux-scsi/cover.1765312062.git.u.kleine-koenig@baylibre.com:
- trivially rebase to v6.19-rc1
- fix a kdoc warning uncovered by the intel kernel test robot
- rename a few variables to align with the already existing naming in
the individual drivers
- slightly reword the commit logs
- add the tags received in v1
Best regards
Uwe
Uwe Kleine-König (8):
scsi: Pass a struct scsi_driver to scsi_{,un}register_driver()
scsi: Make use of bus callbacks
scsi: ch: Convert to scsi bus methods
scsi: sd: Convert to scsi bus methods
scsi: ses: Convert to scsi bus methods
scsi: sr: Convert to scsi bus methods
scsi: st: Convert to scsi bus methods
scsi: ufs: Convert to scsi bus methods
drivers/scsi/ch.c | 18 ++++-----
drivers/scsi/scsi_sysfs.c | 77 ++++++++++++++++++++++++++++++++++++--
drivers/scsi/sd.c | 29 +++++++-------
drivers/scsi/ses.c | 15 ++------
drivers/scsi/sr.c | 21 +++++------
drivers/scsi/st.c | 22 +++++------
drivers/ufs/core/ufshcd.c | 22 +++++------
include/scsi/scsi_driver.h | 7 +++-
8 files changed, 139 insertions(+), 72 deletions(-)
base-commit: 8f0b4cce4481fb22653697cced8d0d04027cb1e8
--
2.47.3
More information about the Linux-mediatek
mailing list