[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1861638.PYKUYFuaPT@diego>
Date: Wed, 24 Mar 2021 17:41:22 +0100
From: Heiko Stübner <heiko@...ech.de>
To: Johan Jonker <jbx6244@...il.com>, gregkh@...uxfoundation.org,
balbi@...nel.org
Cc: robh+dt@...nel.org, linux-usb@...r.kernel.org,
devicetree@...r.kernel.org, linux-rockchip@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5 2/8] usb: dwc3: of-simple: bail probe if no dwc3 child node
Hi Greg, Felipe,
Am Dienstag, 9. Februar 2021, 20:23:44 CET schrieb Johan Jonker:
> For some of the dwc3-of-simple compatible SoCs we
> don't want to bind this driver to a dwc3 node,
> but bind that node to the 'snps,dwc3' driver instead.
> The kernel has no logic to decide which driver to bind
> to if there are 2 matching drivers, so bail probe if no
> dwc3 child node.
>
> Signed-off-by: Johan Jonker <jbx6244@...il.com>
It looks like this patch fell through the cracks?
I.e. I can see patches 1+6 adding the devicetree bindings
in 5.12-rc but haven't found this patch there.
And looking at
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/log/drivers/usb/dwc3/dwc3-of-simple.c?h=usb-next
I also didn't find it.
>From what I gathered that was somehow mandated from the Devicetree side
as the dwc3-subnode system merely is some Linux-specific thingy
and should not be enforced if not explicitly needed.
I guess Johan can provide pointers to the previous discussion.
So could you look at applying this patch to some usb-tree?
Thanks
Heiko
> ---
> drivers/usb/dwc3/dwc3-of-simple.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple.c
> index e62ecd22b..347b4d384 100644
> --- a/drivers/usb/dwc3/dwc3-of-simple.c
> +++ b/drivers/usb/dwc3/dwc3-of-simple.c
> @@ -38,6 +38,10 @@ static int dwc3_of_simple_probe(struct platform_device *pdev)
>
> int ret;
>
> + /* Bail probe if no dwc3 child node. */
> + if (!of_get_compatible_child(dev->of_node, "snps,dwc3"))
> + return -ENODEV;
> +
> simple = devm_kzalloc(dev, sizeof(*simple), GFP_KERNEL);
> if (!simple)
> return -ENOMEM;
>
Powered by blists - more mailing lists