]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
i3c: Move device name assignment after i3c_bus_init
authorBilly Tsai <billy_tsai@aspeedtech.com>
Mon, 12 Jan 2026 06:07:22 +0000 (14:07 +0800)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Wed, 14 Jan 2026 14:57:23 +0000 (15:57 +0100)
Move device name initialization to occur after i3c_bus_init()
so that i3cbus->id is guaranteed to be assigned before it is used.

Fixes: 9d4f219807d5 ("i3c: fix refcount inconsistency in i3c_master_register")
Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260112-upstream_i3c_fix-v1-1-cbbf2cb71809@aspeedtech.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/master.c

index e551b1de5d7b6830d7a0eb763a6e4b0e5da0abbf..3bc8b4abf8afe26455bfee3c0160cf2b464e68f7 100644 (file)
@@ -2911,7 +2911,6 @@ int i3c_master_register(struct i3c_master_controller *master,
        INIT_LIST_HEAD(&master->boardinfo.i3c);
 
        device_initialize(&master->dev);
-       dev_set_name(&master->dev, "i3c-%d", i3cbus->id);
 
        master->dev.dma_mask = parent->dma_mask;
        master->dev.coherent_dma_mask = parent->coherent_dma_mask;
@@ -2921,6 +2920,8 @@ int i3c_master_register(struct i3c_master_controller *master,
        if (ret)
                goto err_put_dev;
 
+       dev_set_name(&master->dev, "i3c-%d", i3cbus->id);
+
        ret = of_populate_i3c_bus(master);
        if (ret)
                goto err_put_dev;