[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <SJ0PR84MB2085A64D47E00077EFF8BFE18D3B9@SJ0PR84MB2085.NAMPRD84.PROD.OUTLOOK.COM>
Date: Fri, 4 Nov 2022 20:03:48 +0000
From: "Yu, Richard" <richard.yu@....com>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
"Verdun, Jean-Marie" <verdun@....com>,
"Hawkins, Nick" <nick.hawkins@....com>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"robh+dt@...nel.org" <robh+dt@...nel.org>,
"krzysztof.kozlowski+dt@...aro.org"
<krzysztof.kozlowski+dt@...aro.org>,
"linux@...linux.org.uk" <linux@...linux.org.uk>,
"balbi@...nel.org" <balbi@...nel.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"Chang, Clay" <clayc@....com>
Subject: RE: [PATCH v1 2/7] dt-bindings: usb: hpe,gxp-udc: Add binding for gxp
gadget
Hi Mr. Kozlowski,
Thank you very much for your quick review and feedbacks.
I will modify the patches based on your feedback accordingly.
On this specific patch, you have questions on how we defined the device/gadget configurations: vdevnum and fepnum.
Please see my answers following the questions:
> + vdevnum:
> + description:
> + virtual device number.
That's unusual property... Why numbering devices is part of DT (hardware description)?
>> Richard: In HPE GXP virtual EHCI controller chipset, it can support up to 8 virtual devices(gadgets). Each device/gadget will be represented by a bit in 8 bits register. For example, the interrupt register bit 0 indicates the interrupt from device 0, bit 1 for device 1 ... so on. When an user defines a device/gadget, he/she can define the device number as between 0 and 7. Thus, the driver can up to the bit position. That is why we have numbering devices as port of DT.
> +
> + fepnum:
> + description:
> + number of the flexible end-points this device is needed.
Similar question.
>>Richard: In HPE GXP virtual EHCI Controller chipset, there is a flexible EP pool. Each flexible EP has its own mapping register. The mapping register bit 0 to 3 is for device number (vdevnum) and bit 4 to 7 is for EP number inside the device. The device driver configures the mapping register to assign a flexible EP to a specific device. Here, "fepnum" is the input letting the driver know how many EP is needed for this device/gadget.
Hope I have answered your questions on "vdevnum" and "fepnum".
I will modify this patch to address your other review feedback.
Thank you very much again.
Richard.
-----Original Message-----
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Sent: Thursday, November 3, 2022 11:30 AM
To: Yu, Richard <richard.yu@....com>; Verdun, Jean-Marie <verdun@....com>; Hawkins, Nick <nick.hawkins@....com>; gregkh@...uxfoundation.org; robh+dt@...nel.org; krzysztof.kozlowski+dt@...aro.org; linux@...linux.org.uk; balbi@...nel.org; linux-usb@...r.kernel.org; devicetree@...r.kernel.org; linux-kernel@...r.kernel.org; linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v1 2/7] dt-bindings: usb: hpe,gxp-udc: Add binding for gxp gadget
On 03/11/2022 12:06, richard.yu@....com wrote:
> From: Richard Yu <richard.yu@....com>
>
Subject: Drop redundant second "binding" word.
> Create documentation for the hpe,gxp-udc binding to support access to
> the virtual USB device.
>
> Signed-off-by: Richard Yu <richard.yu@....com>
> ---
> .../devicetree/bindings/usb/hpe,gxp-udc.yaml | 57
> +++++++++++++++++++
> 1 file changed, 57 insertions(+)
> create mode 100644
> Documentation/devicetree/bindings/usb/hpe,gxp-udc.yaml
>
> diff --git a/Documentation/devicetree/bindings/usb/hpe,gxp-udc.yaml
> b/Documentation/devicetree/bindings/usb/hpe,gxp-udc.yaml
> new file mode 100644
> index 000000000000..f1ec4df8c3d3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/hpe,gxp-udc.yaml
> @@ -0,0 +1,57 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2
> +---
> +$id:
> +INVALID URI REMOVED
> +-udc.yaml*__;Iw!!NpxR!lKDMWE_W38KLY2gXH0dY1rG-bU4JwIyme_DMzeppYO9DQ1S
> +wvXeID3RDEEuKBSG81_hsD5gntF_elZhC9yiXT-MvFA$
> +$schema:
> +INVALID URI REMOVED
> +aml*__;Iw!!NpxR!lKDMWE_W38KLY2gXH0dY1rG-bU4JwIyme_DMzeppYO9DQ1SwvXeID
> +3RDEEuKBSG81_hsD5gntF_elZhC9yi3VX-gPg$
> +
> +title: HPE GXP Gadget Universal Device Controller (UDC)
> +
> +maintainers:
> + - Richard Yu <richard.yu@....com>
> + - Jean-Marie Verdun <verdun@....com>
> + - Nick Hawkins <nick.hawkins@....com>
> +
> +properties:
> + compatible:
> + const: hpe,gxp-udc
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + vdevnum:
> + description:
> + virtual device number.
That's unusual property... Why numbering devices is part of DT (hardware description)?
> +
> + fepnum:
> + description:
> + number of the flexible end-points this device is needed.
Similar question.
BTW, if you end sentence with '.', it means it is an sentence, so you need to start it with capital letter.
> +
> + hpe,syscon-phandle:
phandle is redudant. You need rather specific name, so "hpe,ehci-syscon"
or whatever it is.
> + $ref: '/schemas/types.yaml#/definitions/phandle'
No quotes.
> + description:
> + Phandle to the gxp vEHCI controller access vDevice registers.
Drop "Phandle to"
Isn't "gxp" a GXP?
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - vdevnum
> + - fepnum
> + - hpe,syscon-phandle
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + udc@...01000 {
Node name "usb", I think it is more popular for USB controllers.
> + compatible = "hpe,gxp-udc";
> + reg = <0x80401000 0x1000>;
> + interrupts = <13>;
> + interrupt-parent = <&vic1>;
> + vdevnum = <0>;
> + fepnum = <7>;
> + hpe,syscon-phandle = <&udc_system_controller>;
> + };
Best regards,
Krzysztof
Powered by blists - more mailing lists