diff options
| author | Dave Airlie <airlied@redhat.com> | 2022-04-22 06:43:52 +1000 | 
|---|---|---|
| committer | Dave Airlie <airlied@redhat.com> | 2022-04-22 11:15:30 +1000 | 
| commit | 19df0cfa258cd42f7f106f6085f1e625f26283db (patch) | |
| tree | be212959c494f95279fd160ba04e9b498d60be8d /drivers/gpu/drm/bridge/display-connector.c | |
| parent | c54b39a565227538c52ead2349eb17d54aadd6f7 (diff) | |
| parent | 40d8d4bd06720aed6c1125bab7296c57de4f1157 (diff) | |
Merge tag 'drm-misc-next-2022-04-21' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
drm-misc-next for 5.19-rc1
UAPI Changes:
Cross-subsystem Changes:
  - of: Create a platform_device for offb
Core Changes:
  - edid: block read refactoring
  - ttm: Add common debugfs code for resource managers
Driver Changes:
  - bridges:
    - adv7611: Enable DRM_BRIDGE_OP_HPD if there's an interrupt
    - anx7625: Fill ELD if no monitor is connected
    - dw_hdmi: Add General Parallel Audio support
    - icn6211: Add data-lanes DT property
    - new driver: Lontium LT9211
  - nouveau: make some structures static
  - tidss: Reset DISPC on startup
  - solomon: SPI Support and DT bindings improvements
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20220421065948.2pyp3j7acxtl6pz5@houat
Diffstat (limited to 'drivers/gpu/drm/bridge/display-connector.c')
| -rw-r--r-- | drivers/gpu/drm/bridge/display-connector.c | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/drivers/gpu/drm/bridge/display-connector.c b/drivers/gpu/drm/bridge/display-connector.c index d24f5b90feab..e4d52a7e31b7 100644 --- a/drivers/gpu/drm/bridge/display-connector.c +++ b/drivers/gpu/drm/bridge/display-connector.c @@ -24,6 +24,7 @@ struct display_connector {  	int			hpd_irq;  	struct regulator	*dp_pwr; +	struct gpio_desc	*ddc_en;  };  static inline struct display_connector * @@ -345,6 +346,17 @@ static int display_connector_probe(struct platform_device *pdev)  		}  	} +	/* enable DDC */ +	if (type == DRM_MODE_CONNECTOR_HDMIA) { +		conn->ddc_en = devm_gpiod_get_optional(&pdev->dev, "ddc-en", +						       GPIOD_OUT_HIGH); + +		if (IS_ERR(conn->ddc_en)) { +			dev_err(&pdev->dev, "Couldn't get ddc-en gpio\n"); +			return PTR_ERR(conn->ddc_en); +		} +	} +  	conn->bridge.funcs = &display_connector_bridge_funcs;  	conn->bridge.of_node = pdev->dev.of_node; @@ -373,6 +385,9 @@ static int display_connector_remove(struct platform_device *pdev)  {  	struct display_connector *conn = platform_get_drvdata(pdev); +	if (conn->ddc_en) +		gpiod_set_value(conn->ddc_en, 0); +  	if (conn->dp_pwr)  		regulator_disable(conn->dp_pwr); | 
