示例#1
0
static int rk32_edp_enable_rx_to_enhanced_mode(struct rk32_edp *edp,
						bool enable)
{
	u8 data;
	int retval;

	retval = rk32_edp_read_byte_from_dpcd(edp,
			DPCD_LANE_CNT_SET, &data);
	if (retval < 0)
		return retval;

	if (enable) {
		retval = rk32_edp_write_byte_to_dpcd(edp,
				DPCD_LANE_CNT_SET,
				DPCD_ENHANCED_FRAME_EN |
				DPCD_LANE_COUNT_SET(data));
	} else {
		/*retval = rk32_edp_write_byte_to_dpcd(edp,
				DPCD_ADDR_CONFIGURATION_SET, 0);*/

		retval = rk32_edp_write_byte_to_dpcd(edp,
				DPCD_LANE_CNT_SET,
				DPCD_LANE_COUNT_SET(data));
	}

	return retval;
}
示例#2
0
static void exynos_dp_enable_rx_to_enhanced_mode(struct exynos_dp_device *dp,
						bool enable)
{
	u8 data;

	exynos_dp_read_byte_from_dpcd(dp, DP_LANE_COUNT_SET, &data);

	if (enable)
		exynos_dp_write_byte_to_dpcd(dp, DP_LANE_COUNT_SET,
			DP_LANE_COUNT_ENHANCED_FRAME_EN |
			DPCD_LANE_COUNT_SET(data));
	else
		exynos_dp_write_byte_to_dpcd(dp, DP_LANE_COUNT_SET,
			DPCD_LANE_COUNT_SET(data));
}
示例#3
0
static void
analogix_dp_enable_rx_to_enhanced_mode(struct analogix_dp_device *dp,
				       bool enable)
{
	u8 data;

	drm_dp_dpcd_readb(&dp->aux, DP_LANE_COUNT_SET, &data);

	if (enable)
		drm_dp_dpcd_writeb(&dp->aux, DP_LANE_COUNT_SET,
				   DP_LANE_COUNT_ENHANCED_FRAME_EN |
					DPCD_LANE_COUNT_SET(data));
	else
		drm_dp_dpcd_writeb(&dp->aux, DP_LANE_COUNT_SET,
				   DPCD_LANE_COUNT_SET(data));
}