Re: [PATCH v2 1/4] i2c: designware: Create shared header hosting driver name

From: Andy Shevchenko
Date: Thu Apr 25 2024 - 05:39:38 EST


On Wed, Apr 24, 2024 at 05:26:39PM -0700, Florian Fainelli wrote:
> We have a number of drivers that reference the string "i2c_designware"
> towards two goals:
>
> - ensure their device gets bound to the i2c_designware platform_driver
> - create a clock lookup reference that matches the i2c_designware
> instance number for the i2c-designware-platdrv.c driver to be able to
> lookup the input reference clock
>
> Since this string is copied in a bunch of different places and since it
> is possible to get this named wrong (see [1] and [2]) with unintended
> consequences, create a header file that hosts that define for other
> drivers to use and all agree on the correct name to use.

> [1]:
> https://lore.kernel.org/all/20240422084109.3201-1-duanqiangwen@xxxxxxxxxxxxx/
> [2]:
> https://lore.kernel.org/all/20240422084109.3201-2-duanqiangwen@xxxxxxxxxxxxx/

Make them tags.

Link: URL#1 [1]
Link: URL#2 [2]

> Signed-off-by: Florian Fainelli <florian.fainelli@xxxxxxxxxxxx>

> +++ b/drivers/i2c/busses/i2c-designware-pcidrv.c
> @@ -19,6 +19,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/pci.h>

> +#include <linux/platform_data/i2c-designware.h>

Please, make it a separate group after linux/* and before "xxx" below.

> #include <linux/pm_runtime.h>
> #include <linux/power_supply.h>
> #include <linux/sched.h>

..

> module_pci_driver(dw_i2c_driver);
>
> /* Work with hotplug and coldplug */
> -MODULE_ALIAS("i2c_designware-pci");
> +MODULE_ALIAS(I2C_DESIGNWARE_NAME "-pci");

As Jarkko said, please get rid of this.
You may take my patch from here:
https://lore.kernel.org/linux-i2c/20231207141653.2785124-9-andriy.shevchenko@xxxxxxxxxxxxxxx/
and incorporate in this series.

..

> #include <linux/mfd/syscon.h>
> #include <linux/module.h>
> #include <linux/of.h>
> +#include <linux/platform_data/i2c-designware.h>

As per above.

> #include <linux/platform_device.h>
> #include <linux/pm.h>
> #include <linux/pm_runtime.h>

..

> /* Work with hotplug and coldplug */
> -MODULE_ALIAS("platform:i2c_designware");
> +MODULE_ALIAS("platform:" I2C_DESIGNWARE_NAME);

See above.

..

> +/* This is the i2c-designware-platdrv.c platform driver name. This name is used
> + * to bind the device to the driver, as well as by the driver itself to request
> + * the input reference clock
> + */

/*
* Use correct multi-line comment style. This
* is not the net subsystem, we use traditional style.
*/

--
With Best Regards,
Andy Shevchenko