[PATCH] gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading
Am Mittwoch, den 27.04.2016, 08:54 -0500 schrieb Dennis Gilmore: > Thanks Philipp, > > I tested and module loading worked correctly > > Dennis > > On 2016-04-27 03:29, Philipp Zabel wrote: > > If of_node is set before calling platform_device_add, the driver core > > will try to use of: modalias matching, which fails because the device > > tree nodes don't have a compatible property set. This patch fixes > > imx-ipuv3-crtc module autoloading by setting the of_node property only > > after the platform modalias is set. > > > > Fixes: 304e6be652e2 ("gpu: ipu-v3: Assign of_node of child platform > > devices to corresponding ports") > > Reported-by: Dennis Gilmore > > Signed-off-by: Philipp Zabel > Tested-By: Dennis Gilmore Thank you. regards Philipp
[PATCH] gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading
If of_node is set before calling platform_device_add, the driver core will try to use of: modalias matching, which fails because the device tree nodes don't have a compatible property set. This patch fixes imx-ipuv3-crtc module autoloading by setting the of_node property only after the platform modalias is set. Fixes: 304e6be652e2 ("gpu: ipu-v3: Assign of_node of child platform devices to corresponding ports") Reported-by: Dennis Gilmore Signed-off-by: Philipp Zabel --- drivers/gpu/ipu-v3/ipu-common.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/ipu-v3/ipu-common.c b/drivers/gpu/ipu-v3/ipu-common.c index e00db3f..abb98c7 100644 --- a/drivers/gpu/ipu-v3/ipu-common.c +++ b/drivers/gpu/ipu-v3/ipu-common.c @@ -1068,7 +1068,6 @@ static int ipu_add_client_devices(struct ipu_soc *ipu, unsigned long ipu_base) goto err_register; } - pdev->dev.of_node = of_node; pdev->dev.parent = dev; ret = platform_device_add_data(pdev, ®->pdata, @@ -1079,6 +1078,12 @@ static int ipu_add_client_devices(struct ipu_soc *ipu, unsigned long ipu_base) platform_device_put(pdev); goto err_register; } + + /* +* Set of_node only after calling platform_device_add. Otherwise +* the platform:imx-ipuv3-crtc modalias won't be used. +*/ + pdev->dev.of_node = of_node; } return 0; -- 2.8.0.rc3
[PATCH] gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading
Thanks Philipp, I tested and module loading worked correctly Dennis On 2016-04-27 03:29, Philipp Zabel wrote: > If of_node is set before calling platform_device_add, the driver core > will try to use of: modalias matching, which fails because the device > tree nodes don't have a compatible property set. This patch fixes > imx-ipuv3-crtc module autoloading by setting the of_node property only > after the platform modalias is set. > > Fixes: 304e6be652e2 ("gpu: ipu-v3: Assign of_node of child platform > devices to corresponding ports") > Reported-by: Dennis Gilmore > Signed-off-by: Philipp Zabel Tested-By: Dennis Gilmore > --- > drivers/gpu/ipu-v3/ipu-common.c | 7 ++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/ipu-v3/ipu-common.c > b/drivers/gpu/ipu-v3/ipu-common.c > index e00db3f..abb98c7 100644 > --- a/drivers/gpu/ipu-v3/ipu-common.c > +++ b/drivers/gpu/ipu-v3/ipu-common.c > @@ -1068,7 +1068,6 @@ static int ipu_add_client_devices(struct ipu_soc > *ipu, unsigned long ipu_base) > goto err_register; > } > > - pdev->dev.of_node = of_node; > pdev->dev.parent = dev; > > ret = platform_device_add_data(pdev, ®->pdata, > @@ -1079,6 +1078,12 @@ static int ipu_add_client_devices(struct > ipu_soc *ipu, unsigned long ipu_base) > platform_device_put(pdev); > goto err_register; > } > + > + /* > + * Set of_node only after calling platform_device_add. Otherwise > + * the platform:imx-ipuv3-crtc modalias won't be used. > + */ > + pdev->dev.of_node = of_node; > } > > return 0;