On 06/12/2018 22:26, Laurent Pinchart wrote:
> The TFP410 has a powerdown pin that can be connected to a GPIO to
> control power saving. The DT bindings define a corresponding property,
> but the driver doesn't implement support for it. Fix that.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
> ---

I find the naming of the the gpio bit backwards, but I guess it si fine
since it is also the name of the pin.

Reviewed-by: Jyri Sarha <jsa...@ti.com>

>  drivers/gpu/drm/bridge/ti-tfp410.c | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
> 
> diff --git a/drivers/gpu/drm/bridge/ti-tfp410.c 
> b/drivers/gpu/drm/bridge/ti-tfp410.c
> index e4280f5af9f5..d25d23cfe3f5 100644
> --- a/drivers/gpu/drm/bridge/ti-tfp410.c
> +++ b/drivers/gpu/drm/bridge/ti-tfp410.c
> @@ -32,6 +32,7 @@ struct tfp410 {
>       struct i2c_adapter      *ddc;
>       struct gpio_desc        *hpd;
>       struct delayed_work     hpd_work;
> +     struct gpio_desc        *powerdown;
>  
>       struct device *dev;
>  };
> @@ -139,8 +140,24 @@ static int tfp410_attach(struct drm_bridge *bridge)
>       return 0;
>  }
>  
> +static void tfp410_enable(struct drm_bridge *bridge)
> +{
> +     struct tfp410 *dvi = drm_bridge_to_tfp410(bridge);
> +
> +     gpiod_set_value_cansleep(dvi->powerdown, 0);
> +}
> +
> +static void tfp410_disable(struct drm_bridge *bridge)
> +{
> +     struct tfp410 *dvi = drm_bridge_to_tfp410(bridge);
> +
> +     gpiod_set_value_cansleep(dvi->powerdown, 1);
> +}
> +
>  static const struct drm_bridge_funcs tfp410_bridge_funcs = {
>       .attach         = tfp410_attach,
> +     .enable         = tfp410_enable,
> +     .disable        = tfp410_disable,
>  };
>  
>  static void tfp410_hpd_work_func(struct work_struct *work)
> @@ -229,6 +246,13 @@ static int tfp410_init(struct device *dev)
>       if (ret)
>               goto fail;
>  
> +     dvi->powerdown = devm_gpiod_get_optional(dev, "powerdown",
> +                                              GPIOD_OUT_HIGH);
> +     if (IS_ERR(dvi->powerdown)) {
> +             dev_err(dev, "failed to parse powerdown gpio\n");
> +             return PTR_ERR(dvi->powerdown);
> +     }
> +
>       if (dvi->hpd) {
>               INIT_DELAYED_WORK(&dvi->hpd_work, tfp410_hpd_work_func);
>  
> 


-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to