Hi Daniel,

On Mon, Jan 18, 2021 at 12:34:24AM +0000, Daniel Scally wrote:
> Some places in the kernel allow users to map resources to a device
> using device name (for example, gpiod_lookup_table). Currently
> this involves waiting for the i2c_client to have been registered so we
> can use dev_name(&client->dev). We want to add a function to allow users
> to refer to an i2c device by name before it has been instantiated, so
> create a macro for the format that's accessible outside the i2c layer
> and use it in i2c_dev_set_name()
> 
> Suggested-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
> Signed-off-by: Daniel Scally <djrsca...@gmail.com>
> ---
>       - Used format macro in i2c_dev_set_name() instead of sub func
> 
>  drivers/i2c/i2c-core-base.c | 4 ++--
>  include/linux/i2c.h         | 3 +++
>  2 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c
> index 63ebf722a424..547b8926cac8 100644
> --- a/drivers/i2c/i2c-core-base.c
> +++ b/drivers/i2c/i2c-core-base.c
> @@ -811,12 +811,12 @@ static void i2c_dev_set_name(struct i2c_adapter *adap,
>       struct acpi_device *adev = ACPI_COMPANION(&client->dev);
>  
>       if (info && info->dev_name) {
> -             dev_set_name(&client->dev, "i2c-%s", info->dev_name);
> +             dev_set_name(&client->dev, I2C_DEV_NAME_FORMAT, info->dev_name);
>               return;
>       }
>  
>       if (adev) {
> -             dev_set_name(&client->dev, "i2c-%s", acpi_dev_name(adev));
> +             dev_set_name(&client->dev, I2C_DEV_NAME_FORMAT, 
> acpi_dev_name(adev));

Over 80, please wrap.

With that,

Acked-by: Sakari Ailus <sakari.ai...@linux.intel.com>

>               return;
>       }
>  
> diff --git a/include/linux/i2c.h b/include/linux/i2c.h
> index 56622658b215..4d40a4b46810 100644
> --- a/include/linux/i2c.h
> +++ b/include/linux/i2c.h
> @@ -39,6 +39,9 @@ enum i2c_slave_event;
>  typedef int (*i2c_slave_cb_t)(struct i2c_client *client,
>                             enum i2c_slave_event event, u8 *val);
>  
> +/* I2C Device Name Format - to maintain consistency outside the i2c layer */
> +#define I2C_DEV_NAME_FORMAT          "i2c-%s"
> +
>  /* I2C Frequency Modes */
>  #define I2C_MAX_STANDARD_MODE_FREQ   100000
>  #define I2C_MAX_FAST_MODE_FREQ               400000
> -- 
> 2.25.1
> 

-- 
Sakari Ailus

Reply via email to