[Intel-gfx] [PATCH 1/6] drm/dp: let drivers specify the name of the I2C-over-AUX adapter

Rodrigo Vivi rodrigo.vivi at gmail.com
Mon Mar 17 15:09:21 CET 2014


Reviewed-by: Rodrigo Vivi <rodrigo.vivi at gmail.com>

//Although I know it has been already reviewed ;)

On Fri, Mar 14, 2014 at 11:51 AM, Jani Nikula <jani.nikula at intel.com> wrote:
> Let the drivers specify the name of the I2C-over-AUX adapter to maintain
> backwards compatibility in the sysfs when converting to the new
> I2C-over-AUX helper infrastructure.
>
> The i915 driver currently uses DPDDC-A to DPDDC-D as names for the DP
> i2c adapters. These names show up in the i2c sysfs name attribute. We'd
> like to be able to maintain that when switching over to the new helpers.
>
> Due to i2c device and connector cleanup ordering issues we also recently
> made the drm device (instead of connector) the parent of the i2c
> adapters:
>
> commit 80f65de3c9b8101c1613fa82df500ba6a099a11c
> Author: Imre Deak <imre.deak at intel.com>
> Date:   Tue Feb 11 17:12:49 2014 +0200
>
>     drm/i915: dp: fix order of dp aux i2c device cleanup
>
> With the name picked up from the adapter parent using dev_name(), it
> would be the same for all i2c adapters with the current I2C-over-AUX
> helpers.
>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> Reviewed-by: Thierry Reding <treding at nvidia.com>
> ---
>  drivers/gpu/drm/drm_dp_helper.c |    3 ++-
>  include/drm/drm_dp_helper.h     |    4 ++++
>  2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/drm_dp_helper.c b/drivers/gpu/drm/drm_dp_helper.c
> index 35251af3b14e..17832d048147 100644
> --- a/drivers/gpu/drm/drm_dp_helper.c
> +++ b/drivers/gpu/drm/drm_dp_helper.c
> @@ -726,7 +726,8 @@ int drm_dp_aux_register_i2c_bus(struct drm_dp_aux *aux)
>         aux->ddc.dev.parent = aux->dev;
>         aux->ddc.dev.of_node = aux->dev->of_node;
>
> -       strncpy(aux->ddc.name, dev_name(aux->dev), sizeof(aux->ddc.name));
> +       strlcpy(aux->ddc.name, aux->name ? aux->name : dev_name(aux->dev),
> +               sizeof(aux->ddc.name));
>
>         return i2c_add_adapter(&aux->ddc);
>  }
> diff --git a/include/drm/drm_dp_helper.h b/include/drm/drm_dp_helper.h
> index 42947566e755..b4f58914bf7d 100644
> --- a/include/drm/drm_dp_helper.h
> +++ b/include/drm/drm_dp_helper.h
> @@ -438,6 +438,9 @@ struct drm_dp_aux_msg {
>   * The .dev field should be set to a pointer to the device that implements
>   * the AUX channel.
>   *
> + * The .name field may be used to specify the name of the I2C adapter. If set to
> + * NULL, dev_name() of .dev will be used.
> + *
>   * Drivers provide a hardware-specific implementation of how transactions
>   * are executed via the .transfer() function. A pointer to a drm_dp_aux_msg
>   * structure describing the transaction is passed into this function. Upon
> @@ -455,6 +458,7 @@ struct drm_dp_aux_msg {
>   * should call drm_dp_aux_unregister_i2c_bus() to remove the I2C adapter.
>   */
>  struct drm_dp_aux {
> +       const char *name;
>         struct i2c_adapter ddc;
>         struct device *dev;
>
> --
> 1.7.9.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx



-- 
Rodrigo Vivi
Blog: http://blog.vivi.eng.br



More information about the Intel-gfx mailing list