On Tue, Oct 28, 2025 at 08:56:50PM +0530, Prahlad Valluru wrote:
> In some cases, need gpio to be set for the connector
> enable. Add optional enable gpio to display-connector.
>
> Signed-off-by: Prahlad Valluru <[email protected]>
> ---
> drivers/gpu/drm/bridge/display-connector.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/gpu/drm/bridge/display-connector.c
> b/drivers/gpu/drm/bridge/display-connector.c
> index e9f16dbc9535..52f5e4175e64 100644
> --- a/drivers/gpu/drm/bridge/display-connector.c
> +++ b/drivers/gpu/drm/bridge/display-connector.c
> @@ -21,6 +21,7 @@ struct display_connector {
> struct drm_bridge bridge;
>
> struct gpio_desc *hpd_gpio;
> + struct gpio_desc *enable_gpio;
> int hpd_irq;
>
> struct regulator *supply;
> @@ -298,6 +299,12 @@ static int display_connector_probe(struct
> platform_device *pdev)
> "Unable to retrieve HPD GPIO\n");
>
> conn->hpd_irq = gpiod_to_irq(conn->hpd_gpio);
> +
> + conn->enable_gpio = devm_gpiod_get_optional(&pdev->dev,
> "enable",
> + GPIOD_OUT_HIGH);
What does it mean to "enable the connector" ? Given that you don't set
the GPIO value at runtime, this seems to be a hack that is probably
better handled with GPIO hogs in the device tree.
> + if (IS_ERR(conn->enable_gpio))
> + return dev_err_probe(&pdev->dev,
> PTR_ERR(conn->enable_gpio),
> + "Unable to retrieve enable
> GPIO\n");
> } else {
> conn->hpd_irq = -EINVAL;
> }
--
Regards,
Laurent Pinchart