MLK-16918-5: drm: Implement NWL MIPI-DSI as a real drm_bridge
authorRobert Chiras <robert.chiras@nxp.com>
Thu, 9 Nov 2017 12:01:35 +0000 (14:01 +0200)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:47:07 +0000 (15:47 -0500)
commit697df0e73abe1e4ade2fa1b56b5d41ab004014da
treea219858be2e6094cb6d20c227b80dcbc534d78ff
parent53167628aaec5e2eed81dab0525522ec1d96e765
MLK-16918-5: drm: Implement NWL MIPI-DSI as a real drm_bridge

Currently, the Northwest Logic MIPI-DSI controller host specific code
resides under drm/bridge, but is not a real drm_bridge. It creates a
drm_bridge and adds itself to the drm_encoder that handles this file,
but this is wrong, since it does not implement the drm_bridge_funcs.

The correct way to implement a drm_bridge is to add the drm_bridge and
let other components (another bridge or a drm_encoder) to attach to this
bridge.
Since we are doing this, a new compatible strings can be used for this
driver: "nwl,mipi-dsi".

Since this was used by nwl_dsi-imx.c, update that driver to use this
bridge correctly.

This is needed in order to add support for MIPI-DSI on 8MQ. The IMX_NWL
driver will either add a DSI encoder to DRM, or a DSI bridge.
The encoder will be used by imx-drm-core driver, while the bridge
will be used by MXSFB driver (which creates a simple display pipe).

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Documentation/devicetree/bindings/display/bridge/nwl_dsi.txt
Documentation/devicetree/bindings/display/imx/dsi_nwl.txt
drivers/gpu/drm/bridge/nwl-dsi.c
drivers/gpu/drm/imx/nwl_dsi-imx.c
drivers/phy/phy-mixel-mipi-dsi.c
include/drm/bridge/nwl_dsi.h
include/linux/phy/phy-mixel-mipi-dsi.h