drm/rockchip: analogix_dp: add support for rockchip,data-swap config
The rockchip,data-swap can help to swap left and right channel display data in dual channel mode. Change-Id: I9da870852421e12477027cb74ee01ee9a951c14f Signed-off-by: Damon Ding <damon.ding@rock-chips.com>
This commit is contained in:
parent
f131a6b432
commit
3b3c3db2c0
2 changed files with 5 additions and 1 deletions
|
|
@ -501,7 +501,8 @@ rockchip_dp_drm_encoder_atomic_check(struct drm_encoder *encoder,
|
|||
s->output_type = DRM_MODE_CONNECTOR_eDP;
|
||||
if (dp->plat_data.split_mode) {
|
||||
s->output_flags |= ROCKCHIP_OUTPUT_DUAL_CHANNEL_LEFT_RIGHT_MODE;
|
||||
s->output_flags |= dp->id ? ROCKCHIP_OUTPUT_DATA_SWAP : 0;
|
||||
if (dp->id || dp->plat_data.dual_channel_swap)
|
||||
s->output_flags |= ROCKCHIP_OUTPUT_DATA_SWAP;
|
||||
s->output_if |= VOP_OUTPUT_IF_eDP0 | VOP_OUTPUT_IF_eDP1;
|
||||
s->output_if_left_panel |= dp->id ? VOP_OUTPUT_IF_eDP1 : VOP_OUTPUT_IF_eDP0;
|
||||
} else if (dp->plat_data.dual_connector_split) {
|
||||
|
|
@ -770,6 +771,8 @@ static int rockchip_dp_probe(struct platform_device *pdev)
|
|||
dp->plat_data.dual_channel_mode =
|
||||
device_property_read_bool(dev, "dual-channel") ||
|
||||
device_property_read_bool(dev, "rockchip,dual-channel");
|
||||
dp->plat_data.dual_channel_swap =
|
||||
device_property_read_bool(dev, "rockchip,data-swap");
|
||||
secondary->plat_data.panel = dp->plat_data.panel;
|
||||
secondary->plat_data.left = dp->adp;
|
||||
secondary->plat_data.split_mode = true;
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@ struct analogix_dp_plat_data {
|
|||
|
||||
bool split_mode;
|
||||
bool dual_channel_mode;
|
||||
bool dual_channel_swap;
|
||||
|
||||
/* split with other display interface */
|
||||
bool dual_connector_split;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue