i3c: Correct the macro module_i3c_i2c_driver
authorNaveen Krishna Chatradhi <nchatrad@amd.com>
Mon, 5 Dec 2022 10:54:13 +0000 (10:54 +0000)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sun, 11 Dec 2022 20:20:27 +0000 (21:20 +0100)
Present definition for module_i3c_i2c_driver uses only the
1st argument i.e., struct i3c_driver.
Irrespective of CONFIG_I3C being enabled/disabled,
struct i2c_driver is never passed to module_driver()

Passing struct i2c_driver as the 4th argument works.

Signed-off-by: Akshay Gupta <Akshay.Gupta@amd.com>
Signed-off-by: Naveen Krishna Chatradhi <nchatrad@amd.com>
Link: https://lore.kernel.org/r/20221205105413.937704-1-naveenkrishna.chatradhi@amd.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
include/linux/i3c/device.h

index 8242e13..419192b 100644 (file)
@@ -287,7 +287,8 @@ static inline void i3c_i2c_driver_unregister(struct i3c_driver *i3cdrv,
 #define module_i3c_i2c_driver(__i3cdrv, __i2cdrv)      \
        module_driver(__i3cdrv,                         \
                      i3c_i2c_driver_register,          \
-                     i3c_i2c_driver_unregister)
+                     i3c_i2c_driver_unregister,        \
+                     __i2cdrv)
 
 int i3c_device_do_priv_xfers(struct i3c_device *dev,
                             struct i3c_priv_xfer *xfers,