summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/drm_bridge_connector.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2022-06-24 10:29:53 +1000
committerDave Airlie <airlied@redhat.com>2022-06-24 12:07:07 +1000
commit0936de1e96d6cbcd3d0ede8f31b1c3e6570dad2e (patch)
tree18a118445b0b63ea94556897f9b6c3696458e794 /drivers/gpu/drm/drm_bridge_connector.c
parent0a2af0bd6e48775646dea5f3524a52a74afae7e0 (diff)
parent009a3a52791f31c57d755a73f6bc66fbdd8bd76c (diff)
Merge tag 'drm-misc-next-2022-06-23' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
drm-misc-next for v5.20: UAPI Changes: * media: Add various RGB666 and RGB888 format constants Cross-subsystem Changes: * media: Documentation Core Changes: * aperture: Fix segfault during hot-unplug * dp: Support waiting for HDP signal, plus driver updates; Port-validation fixes * fbcon: Improve scrolling performance; Sanitize input * Clean up <drm/drm_crtc.h> Driver Changes: * amdgpu: Cleanups * bridge: Add support for i.MX8qxp and i.MX8qm; anx7625: DPI fixes; tc358775: Fix clock settings; ti-sn65dsi83: Allow GPIO to sleep * panel: Set orientation from panel, plus driver updates * Several small cleanups Signed-off-by: Dave Airlie <airlied@redhat.com> From: Thomas Zimmermann <tzimmermann@suse.de> Link: https://patchwork.freedesktop.org/patch/msgid/YrQeAAVvQ6jxu2dl@linux-uq9g
Diffstat (limited to 'drivers/gpu/drm/drm_bridge_connector.c')
-rw-r--r--drivers/gpu/drm/drm_bridge_connector.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_bridge_connector.c b/drivers/gpu/drm/drm_bridge_connector.c
index 6b3dad03d77d..1c7d936523df 100644
--- a/drivers/gpu/drm/drm_bridge_connector.c
+++ b/drivers/gpu/drm/drm_bridge_connector.c
@@ -331,7 +331,7 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm,
struct drm_bridge_connector *bridge_connector;
struct drm_connector *connector;
struct i2c_adapter *ddc = NULL;
- struct drm_bridge *bridge;
+ struct drm_bridge *bridge, *panel_bridge = NULL;
int connector_type;
bridge_connector = kzalloc(sizeof(*bridge_connector), GFP_KERNEL);
@@ -373,6 +373,9 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm,
if (bridge->ddc)
ddc = bridge->ddc;
+
+ if (drm_bridge_is_panel(bridge))
+ panel_bridge = bridge;
}
if (connector_type == DRM_MODE_CONNECTOR_Unknown) {
@@ -392,6 +395,9 @@ struct drm_connector *drm_bridge_connector_init(struct drm_device *drm,
connector->polled = DRM_CONNECTOR_POLL_CONNECT
| DRM_CONNECTOR_POLL_DISCONNECT;
+ if (panel_bridge)
+ drm_panel_bridge_set_orientation(connector, panel_bridge);
+
return connector;
}
EXPORT_SYMBOL_GPL(drm_bridge_connector_init);