disp: msm: dsi: add support for dual display with shared dsi

In dual display configuration, where only one display is active at a time,
dsi0 and dsi1 can be used to drive primary large display and, one of the
dsi (dsi0 or dsi1) can be used to drive secondary display. This helps to
time division multiplex shared DSI for primary and secondary panel which
solves the bandwidth limitation problem. This change adds support to allow
sharing of dsi ctrl and phy between dual displays.

Change-Id: Ib4ed1bf51f587b544ec24b1b558ff83225b36e4b
Signed-off-by: Ritesh Kumar <quic_riteshk@quicinc.com>
This commit is contained in:
Ritesh Kumar
2023-04-05 09:52:55 +05:30
parent 54a43400a4
commit 5fa719d990
4 changed files with 16 additions and 3 deletions

View File

@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#ifndef _DSI_PHY_H_
@@ -76,6 +77,7 @@ enum phy_ulps_return_type {
* @regulator_min_datarate_bps: Minimum per lane data rate to turn on regulator
* @regulator_required: True if phy regulator is required
* @dfps_trigger_mdpintf_flush: mdp intf flush controls dfps trigger.
* @dsi_phy_shared: True if phy is shared between dual displays.
*/
struct msm_dsi_phy {
struct platform_device *pdev;
@@ -104,6 +106,7 @@ struct msm_dsi_phy {
u32 regulator_min_datarate_bps;
bool regulator_required;
bool dfps_trigger_mdpintf_flush;
bool dsi_phy_shared;
};
/**