RE: [PATCH linux-next] dt-bindings: usb: snps,dwc3: correct i.MX8MQ support
flat view
From: Peng Fan <peng.fan@nxp.com>
Date: 2023-03-20 14:06:18
Also in:
linux-arm-kernel, linux-usb, lkml
-----Original Message----- From: Krzysztof Kozlowski <redacted> Sent: 2023年3月20日 20:06 To: Peng Fan <peng.fan@nxp.com>; Peng Fan (OSS) [off-list ref]; gregkh@linuxfoundation.org; robh+dt@kernel.org; krzysztof.kozlowski+dt@linaro.org; shawnguo@kernel.org; s.hauer@pengutronix.de; Xu Yang [off-list ref] Cc: kernel@pengutronix.de; festevam@gmail.com; dl-linux-imx <linux- imx@nxp.com>; linux-usb@vger.kernel.org; devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-arm-kernel@lists.infradead.org; Jun Li [off-list ref] Subject: Re: [PATCH linux-next] dt-bindings: usb: snps,dwc3: correct i.MX8MQ support On 20/03/2023 12:44, Peng Fan wrote:quoted
quoted
Subject: Re: [PATCH linux-next] dt-bindings: usb: snps,dwc3: correct i.MX8MQ support On 20/03/2023 12:02, Peng Fan wrote:quoted
quoted
Subject: Re: [PATCH linux-next] dt-bindings: usb: snps,dwc3: correct i.MX8MQ support On 20/03/2023 03:07, Peng Fan (OSS) wrote:quoted
From: Peng Fan <peng.fan@nxp.com> The previous i.MX8MQ support breaks rockchip,dwc3 support, so use select to restrict i.MX8MQ support and avoid break others. Fixes: 3754c41c7686 ("dt-bindings: usb: snps,dwc3: support i.MX8MQ") Signed-off-by: Peng Fan <peng.fan@nxp.com> --- .../devicetree/bindings/usb/snps,dwc3.yaml | 21 ++++++++++++-------quoted
quoted
quoted
quoted
quoted
1 file changed, 14 insertions(+), 7 deletions(-)diff --git a/Documentation/devicetree/bindings/usb/snps,dwc3.yamlb/Documentation/devicetree/bindings/usb/snps,dwc3.yaml index 16c7d06c9172..6347a6769ee3 100644--- a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml +++ b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml@@ -28,15 +28,22 @@ allOf: else: $ref: usb-xhci.yaml# +select: + properties: + compatible: + contains: + enum: + - fsl,imx8mq-dwc3And what about all snps,dwc3 devices there (without specificcompatible)?quoted
quoted
quoted
quoted
Previously they were selected and now they are not... so you just disabled schema for all of them.[Peng Fan] I am not sure how to address:https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Florquoted
quoted
e%2F&data=05%7C01%7Cpeng.fan%40nxp.com%7Cb85a372a1a3d467fbf55 08db293bquoted
quoted
699d%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63814910733 4034389%quoted
quoted
7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLC JBTiI6Iquoted
quoted
k1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=etbl63jX3d0LVM3 %2B8P8%2BBquoted
quoted
2z8dcBddkns%2Fx0O63UHc2E%3D&reserved=0quoted
.kernel.org%2Fall%2FCAL_Jsq%2BnrqTX5ND3%3D%2BkFUmStx-%2Bb%3DqpE_WsL_Lequoted
-YX8c285-5A%40mail.gmail.com%2F&data=05%7C01%7Cpeng.fan%40nxp.com%7C1equoted
quoted
quoted
67df79692243f058fa08db2937befd%7C686ea1d3bc2b4c6fa92cd99c5c30163quoted
quoted
5%7C0%quoted
7C0%7C638149091586933618%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMCquoted
quoted
4wLjAwMDAiLquoted
CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&squoted
quoted
data=r1quoted
fesB1c%2B3YxohCGM36xySFucVU25WVYIMlpgGkdoWk%3D&reserved=0quoted
quoted
quoted
Rob suggested use select, but I am not sure how to use it here. Use an extra yaml file with select or else.quoted
quoted
+ required: + - compatible + properties: compatible: - oneOf: - - items: - - const: fsl,imx8mq-dwc3I don't understand why you remove your compatible.[Peng Fan] My last change drops 'contains' by mistake, and breaksThis I understand.quoted
rockchip,dwc3, so just bring back the original contentThis is not a reason to make your compatible undocumented. You basically revert your patch. It does not make any sense to me.[Peng Fan] ok, let me think more. Honestly not have good idea (: If you have any guidance, that would be helpful.You should only need a select, however most likely selecting also snps,dwc3 (without specific compatible). Anyway this binding - including how it is referenced by others - is getting unmanagable. I think I commented about this on some other occasion. The point is that no one refactors it thus it grows and grows leading to more of such tricky scenarios. How it should be refactored? Probably just like all other with re-usable components: common part and device specific bindings including it. While snps,dwc3 alone should not be allowed anymore.
Thanks, I may take rockchip,dwc3.yaml or other vendor,dwc3.yaml as reference to introduce fsl-imx8mq,dwc3.yaml to just add a select, and drop the fsl,imx8mq-dwc3 compatible from snps,dwc3.yaml. Thanks, Peng.
Best regards, Krzysztof