[PATCH v6 3/3] scsi: ufs: rpmb: Drop the unregistered ufs_rpmb bus

From: Stanley Jhu

Date: Wed Nov 11 2026 - 19:44:30 EST


ufs_rpmb_probe() assigns ufs_rpmb_bus_type to dev.bus without ever
calling bus_register(). Since commit 36f35b8df697 ("driver core: reject
devices with unregistered buses"), device_register() rejects
unregistered buses with -EINVAL and UFS RPMB region registration fails.

ufs_rpmb_bus_type defines no callbacks and has no drivers, and
consumers look up regions through /sys/class/rpmb. Drop
ufs_rpmb_bus_type and leave dev.bus unset.

Fixes: b06b8c421485 ("scsi: ufs: core: Add OP-TEE based RPMB driver for UFS devices")
Cc: stable@xxxxxxxxxxxxxxx
Reviewed-by: Bean Huo <beanhuo@xxxxxxxxxx>
Signed-off-by: Stanley Jhu <stanleyjhu@xxxxxxxxxx>
---
drivers/ufs/core/ufs-rpmb.c | 5 -----
1 file changed, 5 deletions(-)

diff --git a/drivers/ufs/core/ufs-rpmb.c b/drivers/ufs/core/ufs-rpmb.c
index 11d2d8e789d0..6803f3e62d78 100644
--- a/drivers/ufs/core/ufs-rpmb.c
+++ b/drivers/ufs/core/ufs-rpmb.c
@@ -28,10 +28,6 @@
#define UFS_RPMB_SEC_PROTOCOL 0xEC /* JEDEC UFS application */
#define UFS_RPMB_SEC_PROTOCOL_ID 0x01 /* JEDEC UFS RPMB protocol ID, CDB byte3 */

-static const struct bus_type ufs_rpmb_bus_type = {
- .name = "ufs_rpmb",
-};
-
/* UFS RPMB device structure */
struct ufs_rpmb_dev {
u8 region_id;
@@ -206,7 +202,6 @@ int ufs_rpmb_probe(struct ufs_hba *hba)
ufs_rpmb->sdev = sdev;
ufs_rpmb->region_id = region;
ufs_rpmb->dev.parent = &sdev->sdev_gendev;
- ufs_rpmb->dev.bus = &ufs_rpmb_bus_type;
ufs_rpmb->dev.release = ufs_rpmb_device_release;
dev_set_name(&ufs_rpmb->dev, "ufs_rpmb%d", region);

--
2.56.0.567.gdb80ae8cd5-goog