diff options
author | Archit Taneja <architt@codeaurora.org> | 2016-02-12 14:48:34 +0530 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2016-03-02 17:02:54 +0100 |
commit | 97b6ae50e05c533b6455e304d36bdf2bb5604ee6 (patch) | |
tree | 9918354dad0852f0c3d0108e7c0e59b447cefab4 /include/drm | |
parent | 509e42ce0441df39d5241150c1bec32cf6347b6c (diff) | |
download | linux-97b6ae50e05c533b6455e304d36bdf2bb5604ee6.tar.gz linux-97b6ae50e05c533b6455e304d36bdf2bb5604ee6.tar.bz2 linux-97b6ae50e05c533b6455e304d36bdf2bb5604ee6.zip |
drm/dsi: Get DSI host by DT device node
MIPI DSI devices are inherently aware of their host because they share a
parent-child hierarchy in the device tree.
Non-DSI drivers that create DSI device don't have this data. In order to
get this information, they require to a phandle to the DSI host in the
device tree.
Maintain a list of all the DSI hosts that are currently registered. This
list will be used to find the struct mipi_dsi_host corresponding to the
device tree node passed to of_find_mipi_dsi_host_by_node().
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drm_mipi_dsi.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/drm/drm_mipi_dsi.h b/include/drm/drm_mipi_dsi.h index 06e0a9382b35..7a9840f8b38e 100644 --- a/include/drm/drm_mipi_dsi.h +++ b/include/drm/drm_mipi_dsi.h @@ -96,14 +96,17 @@ struct mipi_dsi_host_ops { * struct mipi_dsi_host - DSI host device * @dev: driver model device node for this DSI host * @ops: DSI host operations + * @list: list management */ struct mipi_dsi_host { struct device *dev; const struct mipi_dsi_host_ops *ops; + struct list_head list; }; int mipi_dsi_host_register(struct mipi_dsi_host *host); void mipi_dsi_host_unregister(struct mipi_dsi_host *host); +struct mipi_dsi_host *of_find_mipi_dsi_host_by_node(struct device_node *node); /* DSI mode flags */ |