Re: [PATCH 0/2] Improve drm_of_component_probe() and move rockchip to use it

From: Liviu Dudau
Date: Mon Nov 16 2015 - 11:50:39 EST


On Mon, Nov 16, 2015 at 05:07:17PM +0100, Heiko StÃbner wrote:
> Hi Liviu,
>
> Am Montag, 16. November 2015, 14:44:51 schrieb Liviu Dudau:
> > When I have introduced the drm_of_component_probe() function I have managed
> > to break rockchip's DRM driver as the compare_of() function had to match
> > both local crtc ports and remote encoder ones. As suggested by Russell
> > King, I have now enhanced the drm_of_component_probe() function to take two
> > comparison functions, and converted (again) rockchip driver to use it.
> >
> > I would really like to get some Tested-By this time if possible from IMX,
> > Armada and Rockchip developers as I lack hardware to do that myself.
> >
> > The only thing not implemented from Russell's suggestion list is the
> > renaming of the function into drm_kms_component_probe().
>
> with these patches applied I loose the display on my rk3288. A bit of dumb
> debug-output shows that the compare function does seem to do strange things:
>
> [ 1.020476] [drm] Initialized drm 1.1.0 20060810
> [ 1.025943] drm_of_component_probe: adding port /vop@ff940000/port
> [ 1.032225] drm_of_component_probe: adding port /vop@ff930000/port
> [ 1.038421] drm_of_component_probe: adding encoder /hdmi@ff980000
> [ 1.044535] drm_of_component_probe: adding encoder /edp@ff970000
> [ 1.050562] drm_of_component_probe: adding encoder /hdmi@ff980000
> [ 1.056663] drm_of_component_probe: adding encoder /edp@ff970000
>
> ---- Columns: dev->parent / dev comparing dev->parent->of_node with np
>
> [ 1.062683] compare_port: platform/ff980000.hdmi comparing NULL with /vop@ff940000/port
> [ 1.071017] compare_port: platform/ff980000.hdmi comparing NULL with /vop@ff940000/port
> [ 1.079024] compare_port: platform/ff930000.vop comparing NULL with /vop@ff940000/port
> [ 1.087117] compare_port: platform/ff980000.hdmi comparing NULL with /vop@ff940000/port
> [ 1.095130] compare_port: platform/ff930000.vop comparing NULL with /vop@ff940000/port
> [ 1.103054] compare_port: platform/ff940000.vop comparing NULL with /vop@ff940000/port
> [ 1.111553] panel_regulator: supplied by vcc33_sys
>
>
> I need to dig deeper to find out what's happening there, but maybe you
> already have some idea in the meantime :-)

Did I got the content of the compare_{port,encoder}() functions the wrong way around?

Best regards,
Liviu

>
>
> Thanks
> Heiko
>

--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
Â\_(ã)_/Â
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/