diff options
| author | Vinu Deokaran <vinud@codeaurora.org> | 2015-11-23 13:19:20 -0500 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 21:13:58 -0700 |
| commit | e74f5d6e676dd05f1af134f90c8b88929de9204b (patch) | |
| tree | 1dd2cc0a02f0ec9f5c73f4d848dd919f899e6d41 | |
| parent | 4971f30ce71c80a0290b03e685157af4fcf5d3a0 (diff) | |
msm: mdss: read display id from device tree
Add support to read display ID string from device tree. The string
could be empty if it's not defined in the device tree.
Change-Id: I70584a1e20b7394145e40d83a2af7775f0117506
Signed-off-by: Vinu Deokaran <vinud@codeaurora.org>
| -rw-r--r-- | Documentation/devicetree/bindings/fb/mdss-dsi.txt | 6 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/fb/msm-hdmi-tx.txt | 6 | ||||
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi.c | 9 | ||||
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_hdmi_tx.c | 11 |
4 files changed, 31 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/fb/mdss-dsi.txt b/Documentation/devicetree/bindings/fb/mdss-dsi.txt index 160ece16bbfc..67c18174dc21 100644 --- a/Documentation/devicetree/bindings/fb/mdss-dsi.txt +++ b/Documentation/devicetree/bindings/fb/mdss-dsi.txt @@ -127,6 +127,11 @@ Optional properties: "lane_map_3210" = <3 2 1 0> - qcom,pluggable Boolean to enable hotplug feature. - qcom,timing-db-mode: Boolean specifies dsi timing mode registers are supported or not. +- qcom,display-id A string indicates the display ID for the controller. + The possible values are: + - "primary" + - "secondary" + - "tertiary" Example: mdss_dsi: qcom,mdss_dsi@0 { @@ -241,5 +246,6 @@ Example: qcom,platform-mode-gpio = <&msmgpio 7 0>; qcom,dsi-irq-line; qcom,lane-map = "lane_map_3012"; + qcom,display-id = "primary"; }; }; diff --git a/Documentation/devicetree/bindings/fb/msm-hdmi-tx.txt b/Documentation/devicetree/bindings/fb/msm-hdmi-tx.txt index 560defedd38a..7f95ed4285ef 100644 --- a/Documentation/devicetree/bindings/fb/msm-hdmi-tx.txt +++ b/Documentation/devicetree/bindings/fb/msm-hdmi-tx.txt @@ -47,6 +47,11 @@ Optional properties: HDMI interface will remain powered on from LK to kernel with continuous display of bootup logo. - qcom,pluggable: boolean to enable hotplug feature. +- qcom,display-id: A string indicates the display ID for the controller. + The possible values are: + - "primary" + - "secondary" + - "tertiary" [Optional child nodes]: These nodes are for devices which are dependent on HDMI Tx controller. If HDMI Tx controller is disabled then @@ -90,6 +95,7 @@ Example: qcom,conditional-power-on; qcom,pluggable; + qcom,display-id = "secondary"; qcom,msm-hdmi-audio-rx { compatible = "qcom,msm-hdmi-audio-codec-rx"; diff --git a/drivers/video/fbdev/msm/mdss_dsi.c b/drivers/video/fbdev/msm/mdss_dsi.c index f9650f9141c4..248de476bcf9 100644 --- a/drivers/video/fbdev/msm/mdss_dsi.c +++ b/drivers/video/fbdev/msm/mdss_dsi.c @@ -3630,6 +3630,15 @@ static int mdss_dsi_parse_ctrl_params(struct platform_device *ctrl_pdev, pinfo->is_pluggable = of_property_read_bool(ctrl_pdev->dev.of_node, "qcom,pluggable"); + data = of_get_property(ctrl_pdev->dev.of_node, + "qcom,display-id", &len); + if (!data || len <= 0) + pr_err("%s:%d Unable to read qcom,display-id, data=%p,len=%d\n", + __func__, __LINE__, data, len); + else + snprintf(ctrl_pdata->panel_data.panel_info.display_id, + MDSS_DISPLAY_ID_MAX_LEN, "%s", data); + return 0; diff --git a/drivers/video/fbdev/msm/mdss_hdmi_tx.c b/drivers/video/fbdev/msm/mdss_hdmi_tx.c index 83cd1b10db50..f2219dad95e5 100644 --- a/drivers/video/fbdev/msm/mdss_hdmi_tx.c +++ b/drivers/video/fbdev/msm/mdss_hdmi_tx.c @@ -4844,9 +4844,10 @@ static void hdmi_tx_put_dt_data(struct device *dev, static int hdmi_tx_get_dt_data(struct platform_device *pdev, struct hdmi_tx_platform_data *pdata) { - int i, rc = 0; + int i, rc = 0, len = 0; struct device_node *of_node = NULL; struct hdmi_tx_ctrl *hdmi_ctrl = platform_get_drvdata(pdev); + const char *data; if (!pdev || !pdata) { DEV_ERR("%s: invalid input\n", __func__); @@ -4911,6 +4912,14 @@ static int hdmi_tx_get_dt_data(struct platform_device *pdev, pdata->pluggable = of_property_read_bool(pdev->dev.of_node, "qcom,pluggable"); + data = of_get_property(pdev->dev.of_node, "qcom,display-id", &len); + if (!data || len <= 0) + pr_err("%s:%d Unable to read qcom,display-id, data=%p,len=%d\n", + __func__, __LINE__, data, len); + else + snprintf(hdmi_ctrl->panel_data.panel_info.display_id, + MDSS_DISPLAY_ID_MAX_LEN, "%s", data); + return rc; error: |
