[v2] drm/imx: Match imx-ipuv3-crtc components using device node in platform data

Heiko Schocher hs at denx.de
Fri May 20 12:13:32 UTC 2016


Hello Philipp,

Am 18.05.2016 um 14:56 schrieb Philipp Zabel:
> The component master driver imx-drm-core matches component devices using
> their of_node. Since commit 950b410dd1ab ("gpu: ipu-v3: Fix imx-ipuv3-crtc
> module autoloading"), the imx-ipuv3-crtc dev->of_node is not set during
> probing. Before that, of_node was set and caused an of: modalias to be
> used instead of the platform: modalias, which broke module autoloading.
>
> On the other hand, if dev->of_node is not set yet when the imx-ipuv3-crtc
> probe function calls component_add, component matching in imx-drm-core
> fails. While dev->of_node will be set once the next component tries to
> bring up the component master, imx-drm-core component binding will never
> succeed if one of the crtc devices is probed last.
>
> Add of_node to the component platform data and match against the
> pdata->of_node instead of dev->of_node in imx-drm-core to work around
> this problem.
>
> Cc: <stable at vger.kernel.org> # 4.4.x
> Fixes: 950b410dd1ab ("gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading")
> Signed-off-by: Philipp Zabel <p.zabel at pengutronix.de>
> Tested-by: Fabio Estevam <fabio.estevam at nxp.com>
> ---
> Changes since v1:
>   - Also set the crtc->port to the of_node from platform data
> ---
>   drivers/gpu/drm/imx/imx-drm-core.c | 8 ++++++++
>   drivers/gpu/drm/imx/ipuv3-crtc.c   | 2 +-
>   drivers/gpu/ipu-v3/ipu-common.c    | 5 +++--
>   include/video/imx-ipu-v3.h         | 2 ++
>   4 files changed, 14 insertions(+), 3 deletions(-)

Thanks! This fixes the aristainetos2 board, see log:
http://xeidos.ddns.net/buildbot/builders/ari_lx/builds/0/steps/shell/logs/tbotlog

so:

Tested-by: Heiko Schocher <hs at denx.de>

bye,
Heiko

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany


More information about the dri-devel mailing list