msm: mdss: primary intf and panel config

Devicetree contains properties that specify the preferred
primary panel interface for MDP. Parse this information from
MDP and provide it to the individual controller.
Each controller driver reads devicetree property
to initialize the preferred panel.

Add bindings for property, under MDSS-MDP, to indicate
the panel interface such as dsi, hdmi, edp etc.
Panel interfaces are configured independently based on
msm board type. Add property that informs MDSS about
the panel interface to be used.

This facilitates the ability to use different panel
interfaces irrespective of the board or SoC.
Add bindings for property under DSI controller node to
indicate the preferred primary panel.
This allows to implement the ability to use different panel
irrespective of the board or SoC

Change-Id: Iaa95f0676ac427bd57bd29c9e12701b6f548b30a
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>

Conflicts:
	drivers/video/msm/mdss/mdss_dsi.c
	drivers/video/msm/mdss/mdss_panel.h
msm: mdss: primary panel config from boot param

Add ability to read kernel's boot parameters to
check for primary panel interface and panel
configuration. The parameter passes three
fields of information which are parsed by the MDP
driver as a part of the device probe.

Format for cmdline param expected is:
"mdss_mdp.panel=<lk_cfg>:<pan_intf>:<dt_node_name_panel>"
where <lk_cfg> is "1" - lk/gcdb config or "0" non-lk/non-gcdb
config;
<pan_intf> is one of "dsi:<ctrl_id>", "hdmi", "edp";
and <dt_node_name_panel> is the string identical to panel's
device node name from the DT.

Change-Id: Ib9e7e4b69c62537f551aaf9ccaf0dd69eddd6889
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
Signed-off-by: Jayant Shekhar <jshekhar@codeaurora.org>

Conflicts:
	arch/arm/boot/dts/msm8226-mdss.dtsi
	arch/arm/boot/dts/msm8974-mdss.dtsi