Loading Documentation/devicetree/bindings/drm/msm/mdss-dsi-panel.txt +3 −0 Original line number Diff line number Diff line Loading @@ -521,6 +521,9 @@ Optional properties: value 0. - qcom,mdss-dsi-dma-schedule-line: An integer value indicates the line number after vertical active region, at which command DMA needs to be triggered. - qcom,mdss-dsi-panel-cmds-only-by-right: Boolean used to mention whether the panel support DSI1 or DSI0 to send commands. If this was set, that mean the panel only support DSI1 to send commands, otherwise DSI0 will send comands. Required properties for sub-nodes: None Optional properties: Loading arch/arm64/boot/dts/qcom/sdm670-sde-display.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -858,6 +858,7 @@ qcom,mdss-dsi-panel-status-value = <0x9c>; qcom,mdss-dsi-panel-on-check-value = <0x9c>; qcom,mdss-dsi-panel-status-read-length = <1>; qcom,mdss-dsi-panel-cmds-only-by-right; qcom,mdss-dsi-display-timings { timing@0{ qcom,mdss-dsi-panel-phy-timings = [00 1f 08 08 24 23 08 Loading drivers/gpu/drm/msm/dsi-staging/dsi_ctrl.h +12 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,18 @@ /* max size supported for dsi cmd transfer using TPG */ #define DSI_CTRL_MAX_CMD_FIFO_STORE_SIZE 64 /** * enum dsi_channel_id - defines dsi channel id. * @DSI_CTRL_LEFT: DSI 0 channel * @DSI_CTRL_RIGHT: DSI 1 channel * @DSI_CTRL_MAX: Maximum value. */ enum dsi_channel_id { DSI_CTRL_LEFT = 0, DSI_CTRL_RIGHT, DSI_CTRL_MAX, }; /** * enum dsi_power_state - defines power states for dsi controller. * @DSI_CTRL_POWER_VREG_OFF: Digital and analog supplies for DSI controller Loading drivers/gpu/drm/msm/dsi-staging/dsi_display.c +10 −2 Original line number Diff line number Diff line Loading @@ -614,12 +614,20 @@ static int dsi_display_validate_status(struct dsi_display_ctrl *ctrl, static int dsi_display_status_reg_read(struct dsi_display *display) { int rc = 0, i; int rc = 0, i, cmd_channel_idx = DSI_CTRL_LEFT; struct dsi_display_ctrl *m_ctrl, *ctrl; pr_debug(" ++\n"); m_ctrl = &display->ctrl[display->cmd_master_idx]; /* * Check the Panel DSI command channel. * If the cmd_channel is set, then we should * choose the right DSI(DSI1) controller to send command, * else we choose the left(DSI0) controller. */ if (display->panel->esd_config.cmd_channel) cmd_channel_idx = DSI_CTRL_RIGHT; m_ctrl = &display->ctrl[cmd_channel_idx]; if (display->tx_cmd_buf == NULL) { rc = dsi_host_alloc_cmd_tx_buffer(display); Loading drivers/gpu/drm/msm/dsi-staging/dsi_panel.c +3 −0 Original line number Diff line number Diff line Loading @@ -2776,6 +2776,9 @@ int dsi_panel_parse_esd_reg_read_configs(struct dsi_panel *panel, esd_config->groups * status_len); } esd_config->cmd_channel = of_property_read_bool(of_node, "qcom,mdss-dsi-panel-cmds-only-by-right"); return 0; error4: Loading Loading
Documentation/devicetree/bindings/drm/msm/mdss-dsi-panel.txt +3 −0 Original line number Diff line number Diff line Loading @@ -521,6 +521,9 @@ Optional properties: value 0. - qcom,mdss-dsi-dma-schedule-line: An integer value indicates the line number after vertical active region, at which command DMA needs to be triggered. - qcom,mdss-dsi-panel-cmds-only-by-right: Boolean used to mention whether the panel support DSI1 or DSI0 to send commands. If this was set, that mean the panel only support DSI1 to send commands, otherwise DSI0 will send comands. Required properties for sub-nodes: None Optional properties: Loading
arch/arm64/boot/dts/qcom/sdm670-sde-display.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -858,6 +858,7 @@ qcom,mdss-dsi-panel-status-value = <0x9c>; qcom,mdss-dsi-panel-on-check-value = <0x9c>; qcom,mdss-dsi-panel-status-read-length = <1>; qcom,mdss-dsi-panel-cmds-only-by-right; qcom,mdss-dsi-display-timings { timing@0{ qcom,mdss-dsi-panel-phy-timings = [00 1f 08 08 24 23 08 Loading
drivers/gpu/drm/msm/dsi-staging/dsi_ctrl.h +12 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,18 @@ /* max size supported for dsi cmd transfer using TPG */ #define DSI_CTRL_MAX_CMD_FIFO_STORE_SIZE 64 /** * enum dsi_channel_id - defines dsi channel id. * @DSI_CTRL_LEFT: DSI 0 channel * @DSI_CTRL_RIGHT: DSI 1 channel * @DSI_CTRL_MAX: Maximum value. */ enum dsi_channel_id { DSI_CTRL_LEFT = 0, DSI_CTRL_RIGHT, DSI_CTRL_MAX, }; /** * enum dsi_power_state - defines power states for dsi controller. * @DSI_CTRL_POWER_VREG_OFF: Digital and analog supplies for DSI controller Loading
drivers/gpu/drm/msm/dsi-staging/dsi_display.c +10 −2 Original line number Diff line number Diff line Loading @@ -614,12 +614,20 @@ static int dsi_display_validate_status(struct dsi_display_ctrl *ctrl, static int dsi_display_status_reg_read(struct dsi_display *display) { int rc = 0, i; int rc = 0, i, cmd_channel_idx = DSI_CTRL_LEFT; struct dsi_display_ctrl *m_ctrl, *ctrl; pr_debug(" ++\n"); m_ctrl = &display->ctrl[display->cmd_master_idx]; /* * Check the Panel DSI command channel. * If the cmd_channel is set, then we should * choose the right DSI(DSI1) controller to send command, * else we choose the left(DSI0) controller. */ if (display->panel->esd_config.cmd_channel) cmd_channel_idx = DSI_CTRL_RIGHT; m_ctrl = &display->ctrl[cmd_channel_idx]; if (display->tx_cmd_buf == NULL) { rc = dsi_host_alloc_cmd_tx_buffer(display); Loading
drivers/gpu/drm/msm/dsi-staging/dsi_panel.c +3 −0 Original line number Diff line number Diff line Loading @@ -2776,6 +2776,9 @@ int dsi_panel_parse_esd_reg_read_configs(struct dsi_panel *panel, esd_config->groups * status_len); } esd_config->cmd_channel = of_property_read_bool(of_node, "qcom,mdss-dsi-panel-cmds-only-by-right"); return 0; error4: Loading