diff options
author | Veera Sundaram Sankaran <veeras@codeaurora.org> | 2015-09-16 10:41:00 -0700 |
---|---|---|
committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 20:45:51 -0700 |
commit | ebfddf9b2ae2d2635c6bccf8548de2083a000514 (patch) | |
tree | 66a72bbc76109a6d35d31461c093b77dba28415e /drivers/video | |
parent | 306dcde24e6e95000817ba3876a17d2ced3f19fa (diff) |
msm: mdss: fix dsi hw config string parsing
The dsi hw config is parsed from the string passed from bootloader.
It is parsed based on the delimiter ':', but when a panel is booted
in simulator mode, an additional override parameter prefixed with '#'
is passed from bootloader. Fix the parsing to account for the override
parameter when simulator panels are used.
Change-Id: Id9d7419179048d8b564efbbb8ea238d987d6a83c
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_dsi.c b/drivers/video/fbdev/msm/mdss_dsi.c index fc37782a4366..b577bf071074 100644 --- a/drivers/video/fbdev/msm/mdss_dsi.c +++ b/drivers/video/fbdev/msm/mdss_dsi.c @@ -2804,7 +2804,7 @@ static int mdss_dsi_parse_hw_cfg(struct platform_device *pdev, char *pan_cfg) struct mdss_dsi_data *dsi_res = platform_get_drvdata(pdev); struct dsi_shared_data *sdata; char dsi_cfg[20]; - char *cfg_prim = NULL, *cfg_sec = NULL; + char *cfg_prim = NULL, *cfg_sec = NULL, *ch = NULL; int i = 0; if (!dsi_res) { @@ -2837,6 +2837,13 @@ static int mdss_dsi_parse_hw_cfg(struct platform_device *pdev, char *pan_cfg) } if (data) { + /* + * To handle the override parameter (#override:sim) + * passed for simulator panels + */ + ch = strnstr(data, "#", strlen(data)); + ch ? *ch = '\0' : false; + if (!strcmp(data, "dual_dsi")) sdata->hw_config = DUAL_DSI; else if (!strcmp(data, "split_dsi")) |