All the components of YUV420 over DP are added. Therefore, let's mark the connector property as true for DP connector when the DP type is not eDP and when there is a CDM block available. Changes in v3: - Move setting the connector's ycbcr_420_allowed parameter so that it is not dependent on if the dp_display is not eDP Changes in v2: - Check for if dp_catalog has a CDM block available instead of checking if VSC SDP is allowed when setting the dp connector's ycbcr_420_allowed parameter Signed-off-by: Paloma Arellano <quic_parellan@quicinc.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Patchwork: https://patchwork.freedesktop.org/patch/579628/ Link: https://lore.kernel.org/r/20240222194025.25329-20-quic_parellan@quicinc.com Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
44 lines
1.5 KiB
C
44 lines
1.5 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
|
|
*/
|
|
|
|
#ifndef _DP_DRM_H_
|
|
#define _DP_DRM_H_
|
|
|
|
#include <linux/types.h>
|
|
#include <drm/drm_bridge.h>
|
|
|
|
#include "msm_drv.h"
|
|
#include "dp_display.h"
|
|
|
|
struct msm_dp_bridge {
|
|
struct drm_bridge bridge;
|
|
struct msm_dp *dp_display;
|
|
};
|
|
|
|
#define to_dp_bridge(x) container_of((x), struct msm_dp_bridge, bridge)
|
|
|
|
struct drm_connector *dp_drm_connector_init(struct msm_dp *dp_display, struct drm_encoder *encoder,
|
|
bool yuv_supported);
|
|
int dp_bridge_init(struct msm_dp *dp_display, struct drm_device *dev,
|
|
struct drm_encoder *encoder);
|
|
|
|
void dp_bridge_atomic_enable(struct drm_bridge *drm_bridge,
|
|
struct drm_bridge_state *old_bridge_state);
|
|
void dp_bridge_atomic_disable(struct drm_bridge *drm_bridge,
|
|
struct drm_bridge_state *old_bridge_state);
|
|
void dp_bridge_atomic_post_disable(struct drm_bridge *drm_bridge,
|
|
struct drm_bridge_state *old_bridge_state);
|
|
enum drm_mode_status dp_bridge_mode_valid(struct drm_bridge *bridge,
|
|
const struct drm_display_info *info,
|
|
const struct drm_display_mode *mode);
|
|
void dp_bridge_mode_set(struct drm_bridge *drm_bridge,
|
|
const struct drm_display_mode *mode,
|
|
const struct drm_display_mode *adjusted_mode);
|
|
void dp_bridge_hpd_enable(struct drm_bridge *bridge);
|
|
void dp_bridge_hpd_disable(struct drm_bridge *bridge);
|
|
void dp_bridge_hpd_notify(struct drm_bridge *bridge,
|
|
enum drm_connector_status status);
|
|
|
|
#endif /* _DP_DRM_H_ */
|