On Fri 27 Aug 13:52 PDT 2021, Doug Anderson wrote:
Hi,
On Mon, Jul 26, 2021 at 4:15 PM Bjorn Andersson bjorn.andersson@linaro.org wrote:
+static int dp_parser_find_panel(struct dp_parser *parser) +{
struct device_node *np = parser->pdev->dev.of_node;
int rc;
rc = drm_of_find_panel_or_bridge(np, 2, 0, &parser->drm_panel, NULL);
Why port 2? Shouldn't this just be port 1 always? The yaml says that port 1 is "Output endpoint of the controller". We should just use port 1 here, right?
Finally got back to this, changed it to 1 and figured out why I left it at 2.
drm_of_find_panel_or_bridge() on a DP controller will find the of_graph reference to the USB-C controller, scan through the registered panels and conclude that the of_node of the USB-C controller isn't a registered panel and return -EPROBE_DEFER.
So I picked 2, because I'm not able to figure out a way to distinguish between a not yet probed panel and the USB-C controller...
Any suggestions?
Regards, Bjorn