Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b66516a7 authored by Govinda Rajulu Chenna's avatar Govinda Rajulu Chenna Committed by Gerrit - the friendly Code Review server
Browse files

drm/msm/dp: mst implementation in dp_drm module



Add MST components in dp_drm module. This change implements
ops for drm bridge, connector, mst topology, hpd and registers
mst ops with drm mst topology manager and dp core driver.

CRs-Fixed: 2192818
Change-Id: I85d8b5bd5a94b8222bc07076143a2fa5e09d3513
Signed-off-by: default avatarGovinda Rajulu Chenna <gchenna@codeaurora.org>
parent cf91971b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ msm_drm-y := \
	dp/dp_display.o \
	dp/dp_drm.o \
	dp/dp_hdcp2p2.o \
	dp/dp_mst_drm.o \
	sde/sde_crtc.o \
	sde/sde_encoder.o \
	sde/sde_encoder_phys_vid.o \
+4 −1
Original line number Diff line number Diff line
@@ -363,6 +363,7 @@ int dp_connector_config_hdr(struct drm_connector *connector, void *display,

int dp_connector_post_init(struct drm_connector *connector, void *display)
{
	int rc;
	struct dp_display *dp_display = display;
	struct sde_connector *sde_conn;

@@ -378,7 +379,9 @@ int dp_connector_post_init(struct drm_connector *connector, void *display)
	sde_conn = to_sde_connector(connector);
	dp_display->bridge->dp_panel = sde_conn->drv_panel;

	return 0;
	rc = dp_mst_init(dp_display);

	return rc;
}

int dp_connector_get_mode_info(struct drm_connector *connector,
+26 −0
Original line number Diff line number Diff line
@@ -136,5 +136,31 @@ void convert_to_dp_mode(const struct drm_display_mode *drm_mode,
void convert_to_drm_mode(const struct dp_display_mode *dp_mode,
				struct drm_display_mode *drm_mode);

/**
 * dp_mst_drm_bridge_init - initialize mst bridge
 * @display: Pointer to private display structure
 * @encoder: Pointer to encoder for mst bridge mapping
 */
int dp_mst_drm_bridge_init(void *display,
	struct drm_encoder *encoder);

/**
 * dp_mst_drm_bridge_deinit - de-initialize mst bridges
 * @display: Pointer to private display structure
 */
void dp_mst_drm_bridge_deinit(void *display);

/**
 * dp_mst_init - initialize mst objects for the given display
 * @display: Pointer to private display structure
 */
int dp_mst_init(struct dp_display *dp_display);

/**
 * dp_mst_deinit - de-initialize mst objects for the given display
 * @display: Pointer to private display structure
 */
void dp_mst_deinit(struct dp_display *dp_display);

#endif /* _DP_DRM_H_ */
+894 −0

File added.

Preview size limit exceeded, changes collapsed.