summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
diff options
context:
space:
mode:
authorDaiane Angolini <daiane.angolini@foundries.io>2023-01-11 21:15:41 -0300
committerDaiane Angolini <daiane.angolini@foundries.io>2023-01-11 21:15:41 -0300
commite120342f45674fe68a42f95c4ba563dd83dd4f38 (patch)
treec7d2c2a90d24121af29aed99ad47d639b20402b8 /drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
parent77f469806a061dc9a144a204a08f0d278c486344 (diff)
parent90ffbb727c511c6de9c5905c8d5aba69e413bcba (diff)
Merge tag 'v5.15.86' into 5.15-2.2.x-imx
This is the 5.15.86 stable release Conflicts: arch/arm64/kernel/traps.c drivers/gpu/drm/bridge/adv7511/adv7511.h drivers/gpu/drm/bridge/adv7511/adv7533.c drivers/gpu/drm/rockchip/cdn-dp-core.c drivers/net/ethernet/freescale/enetc/enetc.c drivers/usb/dwc3/core.c Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
Diffstat (limited to 'drivers/gpu/drm/bridge/adv7511/adv7511_drv.c')
-rw-r--r--drivers/gpu/drm/bridge/adv7511/adv7511_drv.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
index d96b3cf76db8..dfff98fb2fdc 100644
--- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
+++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
@@ -958,22 +958,25 @@ static int adv7511_bridge_get_modes(struct drm_bridge *bridge,
return adv7511_get_modes(adv, connector);
}
-static enum drm_mode_status adv7511_bridge_mode_valid(struct drm_bridge *bridge,
- const struct drm_display_info *info,
- const struct drm_display_mode *mode)
+static void adv7511_bridge_mode_set(struct drm_bridge *bridge,
+ const struct drm_display_mode *mode,
+ const struct drm_display_mode *adj_mode)
{
struct adv7511 *adv = bridge_to_adv7511(bridge);
- return adv7511_mode_valid(adv, mode);
+ adv7511_mode_set(adv, mode, adj_mode);
}
-static void adv7511_bridge_mode_set(struct drm_bridge *bridge,
- const struct drm_display_mode *mode,
- const struct drm_display_mode *adj_mode)
+static enum drm_mode_status adv7511_bridge_mode_valid(struct drm_bridge *bridge,
+ const struct drm_display_info *info,
+ const struct drm_display_mode *mode)
{
struct adv7511 *adv = bridge_to_adv7511(bridge);
- adv7511_mode_set(adv, mode, adj_mode);
+ if (adv->type == ADV7533 || adv->type == ADV7535)
+ return adv7533_mode_valid(adv, mode);
+ else
+ return adv7511_mode_valid(adv, mode);
}
static int adv7511_bridge_attach(struct drm_bridge *bridge,
@@ -1041,6 +1044,7 @@ static const struct drm_bridge_funcs adv7511_bridge_funcs = {
.get_modes = adv7511_bridge_get_modes,
.mode_valid = adv7511_bridge_mode_valid,
.mode_set = adv7511_bridge_mode_set,
+ .mode_valid = adv7511_bridge_mode_valid,
.attach = adv7511_bridge_attach,
.detect = adv7511_bridge_detect,
.get_edid = adv7511_bridge_get_edid,