* [PATCH 0/2] Add phy tuning support for imx8mq-usb @ 2023-04-05 11:21 Johannes Zink 2023-04-05 11:21 ` [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties Johannes Zink 2023-04-05 11:21 ` [PATCH 2/2] phy: fsl-imx8mp-usb: add support for phy tuning Johannes Zink 0 siblings, 2 replies; 15+ messages in thread From: Johannes Zink @ 2023-04-05 11:21 UTC (permalink / raw) To: vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Cc: j.zink This series adds support for USB phy tuning parameters, which are required for meeting USB certification and EMI qualification. Patch 1/2 adds the required properties to the fsl,imx8mq-usb-phy devicetree binding. Patch 2/2 adds the phy tuning parameters to the phy-fsl-imx8mp driver. This patch is ported and cleaned up from the downstream Freescale vendor tree. Best regards, Johannes Johannes Zink (1): dt-bindings: phy: imx8mq-usb: add phy tuning properties Li Jun (1): phy: fsl-imx8mp-usb: add support for phy tuning .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 40 ++++++ drivers/phy/freescale/phy-fsl-imx8mq-usb.c | 124 ++++++++++++++++++ 2 files changed, 164 insertions(+) -- 2.39.2 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-05 11:21 [PATCH 0/2] Add phy tuning support for imx8mq-usb Johannes Zink @ 2023-04-05 11:21 ` Johannes Zink 2023-04-05 11:51 ` Krzysztof Kozlowski 2023-04-05 11:21 ` [PATCH 2/2] phy: fsl-imx8mp-usb: add support for phy tuning Johannes Zink 1 sibling, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-04-05 11:21 UTC (permalink / raw) To: vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Cc: j.zink Add optional properties for tuning of usb phy. Signed-off-by: Johannes Zink <j.zink@pengutronix.de> --- .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml index e6f9f5540cc3..f452a41b4f32 100644 --- a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml +++ b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml @@ -35,6 +35,46 @@ properties: description: A phandle to the regulator for USB VBUS. + fsl,phy-tx-vref-tune: + description: + HS DC Voltage level adjustment + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] + + fsl,phy-tx-rise-tune: + description: + HS Transmitter Rise/Fall Time Adjustment + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2, 3] + + fsl,phy-tx-preemp-amp-tune: + description: + HS Transmitter Pre-Emphasis Current Control + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2, 3] + + fsl,phy-tx-vboost-level: + description: + TX Voltage Boost Level + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 2, 3] + + fsl,phy-comp-dis-tune: + description: + Disconnect Threshold Adjustment + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1, 2, 3, 4, 5, 6, 7] + + fsl,phy-pcs-tx-deemph-3p5db: + description: + TX De-Emphasis at 3.5 dB + $ref: /schemas/types.yaml#/definitions/uint32 + + fsl,phy-pcs-tx-swing-full: + description: + TX Amplitude + $ref: /schemas/types.yaml#/definitions/uint32 + required: - compatible - reg -- 2.39.2 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-05 11:21 ` [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties Johannes Zink @ 2023-04-05 11:51 ` Krzysztof Kozlowski 2023-04-05 12:14 ` Johannes Zink 0 siblings, 1 reply; 15+ messages in thread From: Krzysztof Kozlowski @ 2023-04-05 11:51 UTC (permalink / raw) To: Johannes Zink, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree On 05/04/2023 13:21, Johannes Zink wrote: > Add optional properties for tuning of usb phy. > > Signed-off-by: Johannes Zink <j.zink@pengutronix.de> > --- > .../bindings/phy/fsl,imx8mq-usb-phy.yaml | 40 +++++++++++++++++++ > 1 file changed, 40 insertions(+) > > diff --git a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > index e6f9f5540cc3..f452a41b4f32 100644 > --- a/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > +++ b/Documentation/devicetree/bindings/phy/fsl,imx8mq-usb-phy.yaml > @@ -35,6 +35,46 @@ properties: > description: > A phandle to the regulator for USB VBUS. > > + fsl,phy-tx-vref-tune: > + description: > + HS DC Voltage level adjustment "Level" in what units? > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] > + > + fsl,phy-tx-rise-tune: > + description: > + HS Transmitter Rise/Fall Time Adjustment > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + > + fsl,phy-tx-preemp-amp-tune: > + description: > + HS Transmitter Pre-Emphasis Current Control If this is current then use standard unit suffixes. > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3] > + > + fsl,phy-tx-vboost-level: > + description: > + TX Voltage Boost Level > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 2, 3] > + > + fsl,phy-comp-dis-tune: > + description: > + Disconnect Threshold Adjustment > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [0, 1, 2, 3, 4, 5, 6, 7] > + > + fsl,phy-pcs-tx-deemph-3p5db: > + description: > + TX De-Emphasis at 3.5 dB > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + fsl,phy-pcs-tx-swing-full: > + description: > + TX Amplitude I have feeling you just pasted here short titles from datasheet. They are not that helpful. Best regards, Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-05 11:51 ` Krzysztof Kozlowski @ 2023-04-05 12:14 ` Johannes Zink 2023-04-07 9:03 ` Krzysztof Kozlowski 0 siblings, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-04-05 12:14 UTC (permalink / raw) To: Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Hi Krysztof, thanks for your review, please find my questions below. On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > [snip] > > A phandle to the regulator for USB VBUS. > > > > + fsl,phy-tx-vref-tune: > > + description: > > + HS DC Voltage level adjustment > > "Level" in what units? > The datasheet just shows percent, ranging from -6 to +24%, in 2% increments. What unit would you suggest? > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, > > 16] > > + > > + fsl,phy-tx-rise-tune: > > + description: > > + HS Transmitter Rise/Fall Time Adjustment > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 1, 2, 3] > > + > > + fsl,phy-tx-preemp-amp-tune: > > + description: > > + HS Transmitter Pre-Emphasis Current Control > > If this is current then use standard unit suffixes. According to the datasheet this is in "unit amonts" of 600uA, basically 0x600uA, 1x600uA etc. Should I just suffix it with uA then? > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 1, 2, 3] > > + > > + fsl,phy-tx-vboost-level: > > + description: > > + TX Voltage Boost Level > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 2, 3] > > + > > + fsl,phy-comp-dis-tune: > > + description: > > + Disconnect Threshold Adjustment > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [0, 1, 2, 3, 4, 5, 6, 7] > > + > > + fsl,phy-pcs-tx-deemph-3p5db: > > + description: > > + TX De-Emphasis at 3.5 dB > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + > > + fsl,phy-pcs-tx-swing-full: > > + description: > > + TX Amplitude > > I have feeling you just pasted here short titles from datasheet. They > are not that helpful. ack, I will add some more text from the register description, since I have no other source of information on these. Best regards Johannes > > > > Best regards, > Krzysztof > > > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-05 12:14 ` Johannes Zink @ 2023-04-07 9:03 ` Krzysztof Kozlowski 2023-04-11 14:22 ` Johannes Zink 0 siblings, 1 reply; 15+ messages in thread From: Krzysztof Kozlowski @ 2023-04-07 9:03 UTC (permalink / raw) To: Johannes Zink, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree On 05/04/2023 14:14, Johannes Zink wrote: > Hi Krysztof, > > thanks for your review, please find my questions below. > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: >> [snip] >>> A phandle to the regulator for USB VBUS. >>> >>> + fsl,phy-tx-vref-tune: >>> + description: >>> + HS DC Voltage level adjustment >> >> "Level" in what units? >> > > The datasheet just shows percent, ranging from -6 to +24%, in 2% > increments. What unit would you suggest? percent https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml > >>> + $ref: /schemas/types.yaml#/definitions/uint32 >>> + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, >>> 16] >>> + >>> + fsl,phy-tx-rise-tune: >>> + description: >>> + HS Transmitter Rise/Fall Time Adjustment >>> + $ref: /schemas/types.yaml#/definitions/uint32 >>> + enum: [0, 1, 2, 3] >>> + >>> + fsl,phy-tx-preemp-amp-tune: >>> + description: >>> + HS Transmitter Pre-Emphasis Current Control >> >> If this is current then use standard unit suffixes. > > According to the datasheet this is in "unit amonts" of 600uA, basically > 0x600uA, 1x600uA etc. Should I just suffix it with uA then? Yes https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml The register values can work sometimes fine but also do not scale at all. For any other variant all the meanings will differ. Any other IMX8 phy will need new bindings and new description/values for your register-like-fields. Best regards, Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-07 9:03 ` Krzysztof Kozlowski @ 2023-04-11 14:22 ` Johannes Zink 2023-04-11 14:59 ` Jun Li 2023-04-12 13:39 ` Rob Herring 0 siblings, 2 replies; 15+ messages in thread From: Johannes Zink @ 2023-04-11 14:22 UTC (permalink / raw) To: Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Hi Krzystof, thank you for your explanations. As I'm still quite new to writing bindings, I still have some questions: On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: > On 05/04/2023 14:14, Johannes Zink wrote: > > Hi Krysztof, > > > > thanks for your review, please find my questions below. > > > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > > > [snip] > > > > A phandle to the regulator for USB VBUS. > > > > > > > > + fsl,phy-tx-vref-tune: > > > > + description: > > > > + HS DC Voltage level adjustment > > > > > > "Level" in what units? > > > > > > > The datasheet just shows percent, ranging from -6 to +24%, in 2% > > increments. What unit would you suggest? > > percent > https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml I am still a bit confused how to use this properly. How can I restrict the values to multiples of 2 in order to avoid illegal values? At the moment the only thing I could come up with is something like fsl,phy-tx-vref-tune-percent: description: | Adjusts the high-speed DC level voltage $ref: /schemas/types.yaml#/definitions/int32 minimum: -6 maximum: 24 default: 0 Does something like this work? I am not quite sure if I am on the right track here, especially as this requires a signed int, of which I have not seen many examples so far. Also, as far as the description is concerned: This is almost the entire information I there is in the datasheet. As I try to upstream some of the vendor downstream patches, I do not have any additional information. > > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, > > > > 15, > > > > 16] > > > > + > > > > + fsl,phy-tx-rise-tune: > > > > + description: > > > > + HS Transmitter Rise/Fall Time Adjustment > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > + enum: [0, 1, 2, 3] > > > > + > > > > + fsl,phy-tx-preemp-amp-tune: > > > > + description: > > > > + HS Transmitter Pre-Emphasis Current Control > > > > > > If this is current then use standard unit suffixes. > > > > According to the datasheet this is in "unit amonts" of 600uA, > > basically > > 0x600uA, 1x600uA etc. Should I just suffix it with uA then? > > Yes > > https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml > > The register values can work sometimes fine but also do not scale at > all. For any other variant all the meanings will differ. Any other > IMX8 > phy will need new bindings and new description/values for your > register-like-fields. I think this particular property should work, probably its something like fsl,phy-tx-preemp-amp-tune-microamps: description: | Transmitter Pre-Emphasis Current Control Controls the amount of current sourced to DPn and DMn after a J-to- K or K-to-J transition. $ref: /schemas/types.yaml#/definitions/uint32 minimum: 0 maximum: 1800 default: 0 What's the right way to communicate that the value is in multiples of 600uA and that this is only an approximate Value? Add some free-text to the description? For some other properties, such as fsl,phy-pcs-tx-swing-full or fsl,phy-pcs-tx-deemph-3p5db the datasheet provides no information at all, neither on the unit nor on a valid range. What is the proper way for something like them (I try to get some of the freescale downstream patches to mainline, but they did not even provide bindings for their driver...) For fsl,phy-comp-dis-tune-percent, the actual values to not map well to integer amount of percent, but I have not found a permill in property- units. Also, as the steps appear quite arbitrary large, what is the correct way of restricting the values to valid values that the hardware can actually support? As reference, I have only seen stuff like the st,trim-hs-current in Documentation/devicetree/bindings/phy/phy-stm32- usbphyc.yaml so far... Thanks for helping me and best regards Johannes > > Best regards, > Krzysztof > > > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-11 14:22 ` Johannes Zink @ 2023-04-11 14:59 ` Jun Li 2023-04-11 15:22 ` Johannes Zink 2023-04-12 13:39 ` Rob Herring 1 sibling, 1 reply; 15+ messages in thread From: Jun Li @ 2023-04-11 14:59 UTC (permalink / raw) To: Johannes Zink, Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, dl-linux-imx, robh+dt, krzysztof.kozlowski+dt, Bough Chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree > -----Original Message----- > From: Johannes Zink <j.zink@pengutronix.de> > Sent: Tuesday, April 11, 2023 10:23 PM > To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>; > vkoul@kernel.org; kishon@kernel.org; shawnguo@kernel.org; > s.hauer@pengutronix.de; kernel@pengutronix.de; festevam@gmail.com; > dl-linux-imx <linux-imx@nxp.com>; robh+dt@kernel.org; > krzysztof.kozlowski+dt@linaro.org; Jun Li <jun.li@nxp.com>; Bough Chen > <haibo.chen@nxp.com>; linux-phy@lists.infradead.org; > linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > devicetree@vger.kernel.org > Subject: Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning > properties > > Hi Krzystof, > > thank you for your explanations. As I'm still quite new to writing bindings, > I still have some questions: > > On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: > > On 05/04/2023 14:14, Johannes Zink wrote: > > > Hi Krysztof, > > > > > > thanks for your review, please find my questions below. > > > > > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > > > > [snip] > > > > > A phandle to the regulator for USB VBUS. > > > > > > > > > > + fsl,phy-tx-vref-tune: > > > > > + description: > > > > > + HS DC Voltage level adjustment > > > > > > > > "Level" in what units? > > > > > > > > > > The datasheet just shows percent, ranging from -6 to +24%, in 2% > > > increments. What unit would you suggest? > > > > percent > > > https://gith/ > > > ub.com%2Fdevicetree-org%2Fdt-schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > %2Fproperty-units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > 4 > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63816 > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2lu > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs9k% > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > I am still a bit confused how to use this properly. How can I restrict the > values to multiples of 2 in order to avoid illegal values? > > At the moment the only thing I could come up with is something like > > fsl,phy-tx-vref-tune-percent: > description: | > Adjusts the high-speed DC level voltage > $ref: /schemas/types.yaml#/definitions/int32 > minimum: -6 > maximum: 24 > default: 0 > > Does something like this work? I am not quite sure if I am on the right track > here, especially as this requires a signed int, of which I have not seen > many examples so far. > > Also, as far as the description is concerned: This is almost the entire > information I there is in the datasheet. As I try to upstream some of the > vendor downstream patches, I do not have any additional information. > > > > > > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, > > > > > 15, > > > > > 16] > > > > > + > > > > > + fsl,phy-tx-rise-tune: > > > > > + description: > > > > > + HS Transmitter Rise/Fall Time Adjustment > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > + enum: [0, 1, 2, 3] > > > > > + > > > > > + fsl,phy-tx-preemp-amp-tune: > > > > > + description: > > > > > + HS Transmitter Pre-Emphasis Current Control > > > > > > > > If this is current then use standard unit suffixes. > > > > > > According to the datasheet this is in "unit amonts" of 600uA, > > > basically 0x600uA, 1x600uA etc. Should I just suffix it with uA > > > then? > > > > Yes > > > > > https://gith/ > > > ub.com%2Fdevicetree-org%2Fdt-schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > %2Fproperty-units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > 4 > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63816 > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2lu > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs9k% > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > > > The register values can work sometimes fine but also do not scale at > > all. For any other variant all the meanings will differ. Any other > > IMX8 > > phy will need new bindings and new description/values for your > > register-like-fields. > > I think this particular property should work, probably its something like > > fsl,phy-tx-preemp-amp-tune-microamps: > description: | > Transmitter Pre-Emphasis Current Control > Controls the amount of current sourced to DPn and DMn after a J-to- > K or K-to-J transition. > $ref: /schemas/types.yaml#/definitions/uint32 > minimum: 0 > maximum: 1800 > default: 0 > > What's the right way to communicate that the value is in multiples of 600uA > and that this is only an approximate Value? Add some free-text to the > description? > > > For some other properties, such as fsl,phy-pcs-tx-swing-full or > fsl,phy-pcs-tx-deemph-3p5db the datasheet provides no information at all, > neither on the unit nor on a valid range. What is the proper way for something > like them (I try to get some of the freescale downstream patches to mainline, > but they did not even provide bindings for their > driver...) I will check with internal design team for those not well documented properties. Li Jun > > > For fsl,phy-comp-dis-tune-percent, the actual values to not map well to > integer amount of percent, but I have not found a permill in property- units. > Also, as the steps appear quite arbitrary large, what is the correct way > of restricting the values to valid values that the hardware can actually > support? As reference, I have only seen stuff like the st,trim-hs-current > in Documentation/devicetree/bindings/phy/phy-stm32- > usbphyc.yaml so far... > > Thanks for helping me and best regards > Johannes > > > > > > Best regards, > > Krzysztof > > > > > > > > -- > Pengutronix e.K. | Johannes Zink | > Steuerwalder Str. 21 | > https://www.p/ > engutronix.de%2F&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a784de5941d > 08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6381681979474 > 07580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBT > iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Dq06I6tprUib5nOmp4pDFdY > MgYULn8MLj5iHwVlQHMY%3D&reserved=0 | > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-11 14:59 ` Jun Li @ 2023-04-11 15:22 ` Johannes Zink 2023-04-26 10:23 ` Jun Li 0 siblings, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-04-11 15:22 UTC (permalink / raw) To: Jun Li, Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, dl-linux-imx, robh+dt, krzysztof.kozlowski+dt, Bough Chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Hi Jun, On Tue, 2023-04-11 at 14:59 +0000, Jun Li wrote: > > > > -----Original Message----- > > From: Johannes Zink <j.zink@pengutronix.de> > > Sent: Tuesday, April 11, 2023 10:23 PM > > To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>; > > vkoul@kernel.org; kishon@kernel.org; shawnguo@kernel.org; > > s.hauer@pengutronix.de; kernel@pengutronix.de; festevam@gmail.com; > > dl-linux-imx <linux-imx@nxp.com>; robh+dt@kernel.org; > > krzysztof.kozlowski+dt@linaro.org; Jun Li <jun.li@nxp.com>; Bough > > Chen > > <haibo.chen@nxp.com>; linux-phy@lists.infradead.org; > > linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > > devicetree@vger.kernel.org > > Subject: Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy > > tuning > > properties > > > > Hi Krzystof, > > > > thank you for your explanations. As I'm still quite new to writing > > bindings, > > I still have some questions: > > > > On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: > > > On 05/04/2023 14:14, Johannes Zink wrote: > > > > Hi Krysztof, > > > > > > > > thanks for your review, please find my questions below. > > > > > > > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > > > > > [snip] > > > > > > A phandle to the regulator for USB VBUS. > > > > > > > > > > > > + fsl,phy-tx-vref-tune: > > > > > > + description: > > > > > > + HS DC Voltage level adjustment > > > > > > > > > > "Level" in what units? > > > > > > > > > > > > > The datasheet just shows percent, ranging from -6 to +24%, in > > > > 2% > > > > increments. What unit would you suggest? > > > > > > percent > > > > > https://gith/ > > > > > ub.com%2Fdevicetree-org%2Fdt- > > schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > > %2Fproperty- > > > units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > > 4 > > > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63 > > 816 > > > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > > 2lu > > > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs > > 9k% > > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > > > I am still a bit confused how to use this properly. How can I > > restrict the > > values to multiples of 2 in order to avoid illegal values? > > > > At the moment the only thing I could come up with is something like > > > > fsl,phy-tx-vref-tune-percent: > > description: | > > Adjusts the high-speed DC level voltage > > $ref: /schemas/types.yaml#/definitions/int32 > > minimum: -6 > > maximum: 24 > > default: 0 > > > > Does something like this work? I am not quite sure if I am on the > > right track > > here, especially as this requires a signed int, of which I have not > > seen > > many examples so far. > > > > Also, as far as the description is concerned: This is almost the > > entire > > information I there is in the datasheet. As I try to upstream some > > of the > > vendor downstream patches, I do not have any additional > > information. > > > > > > > > > > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, > > > > > > 14, > > > > > > 15, > > > > > > 16] > > > > > > + > > > > > > + fsl,phy-tx-rise-tune: > > > > > > + description: > > > > > > + HS Transmitter Rise/Fall Time Adjustment > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > > + enum: [0, 1, 2, 3] > > > > > > + > > > > > > + fsl,phy-tx-preemp-amp-tune: > > > > > > + description: > > > > > > + HS Transmitter Pre-Emphasis Current Control > > > > > > > > > > If this is current then use standard unit suffixes. > > > > > > > > According to the datasheet this is in "unit amonts" of 600uA, > > > > basically 0x600uA, 1x600uA etc. Should I just suffix it with uA > > > > then? > > > > > > Yes > > > > > > > > https://gith/ > > > > > ub.com%2Fdevicetree-org%2Fdt- > > schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > > %2Fproperty- > > > units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > > 4 > > > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63 > > 816 > > > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > > 2lu > > > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs > > 9k% > > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > > > > > The register values can work sometimes fine but also do not scale > > > at > > > all. For any other variant all the meanings will differ. Any > > > other > > > IMX8 > > > phy will need new bindings and new description/values for your > > > register-like-fields. > > > > I think this particular property should work, probably its > > something like > > > > fsl,phy-tx-preemp-amp-tune-microamps: > > description: | > > Transmitter Pre-Emphasis Current Control > > Controls the amount of current sourced to DPn and DMn after a > > J-to- > > K or K-to-J transition. > > $ref: /schemas/types.yaml#/definitions/uint32 > > minimum: 0 > > maximum: 1800 > > default: 0 > > > > What's the right way to communicate that the value is in multiples > > of 600uA > > and that this is only an approximate Value? Add some free-text to > > the > > description? > > > > > > For some other properties, such as fsl,phy-pcs-tx-swing-full or > > fsl,phy-pcs-tx-deemph-3p5db the datasheet provides no information > > at all, > > neither on the unit nor on a valid range. What is the proper way > > for something > > like them (I try to get some of the freescale downstream patches to > > mainline, > > but they did not even provide bindings for their > > driver...) > > I will check with internal design team for those not well documented > properties. > That's great, thanks! Johannes > Li Jun > > > > > > For fsl,phy-comp-dis-tune-percent, the actual values to not map > > well to > > integer amount of percent, but I have not found a permill in > > property- units. > > Also, as the steps appear quite arbitrary large, what is the > > correct way > > of restricting the values to valid values that the hardware can > > actually > > support? As reference, I have only seen stuff like the st,trim-hs- > > current > > in Documentation/devicetree/bindings/phy/phy-stm32- > > usbphyc.yaml so far... > > > > Thanks for helping me and best regards > > Johannes > > > > > > > > > > Best regards, > > > Krzysztof > > > > > > > > > > > > > -- > > Pengutronix e.K. | Johannes Zink | > > Steuerwalder Str. 21 | > > https://www.p/ > > engutronix.de%2F&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a784de5 > > 941d > > 08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C638168197 > > 9474 > > 07580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiL > > CJBT > > iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Dq06I6tprUib5nOmp4p > > DFdY > > MgYULn8MLj5iHwVlQHMY%3D&reserved=0 | > > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > > Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | > > > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-11 15:22 ` Johannes Zink @ 2023-04-26 10:23 ` Jun Li 0 siblings, 0 replies; 15+ messages in thread From: Jun Li @ 2023-04-26 10:23 UTC (permalink / raw) To: Johannes Zink, Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, dl-linux-imx, robh+dt, krzysztof.kozlowski+dt, Bough Chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree > -----Original Message----- > From: Johannes Zink <j.zink@pengutronix.de> > Sent: Tuesday, April 11, 2023 11:23 PM > To: Jun Li <jun.li@nxp.com>; Krzysztof Kozlowski > <krzysztof.kozlowski@linaro.org>; vkoul@kernel.org; kishon@kernel.org; > shawnguo@kernel.org; s.hauer@pengutronix.de; kernel@pengutronix.de; > festevam@gmail.com; dl-linux-imx <linux-imx@nxp.com>; robh+dt@kernel.org; > krzysztof.kozlowski+dt@linaro.org; Bough Chen <haibo.chen@nxp.com>; > linux-phy@lists.infradead.org; linux-arm-kernel@lists.infradead.org; > linux-kernel@vger.kernel.org; devicetree@vger.kernel.org > Subject: Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning > properties > > Hi Jun, > > On Tue, 2023-04-11 at 14:59 +0000, Jun Li wrote: > > > > > > > -----Original Message----- > > > From: Johannes Zink <j.zink@pengutronix.de> > > > Sent: Tuesday, April 11, 2023 10:23 PM > > > To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>; > > > vkoul@kernel.org; kishon@kernel.org; shawnguo@kernel.org; > > > s.hauer@pengutronix.de; kernel@pengutronix.de; festevam@gmail.com; > > > dl-linux-imx <linux-imx@nxp.com>; robh+dt@kernel.org; > > > krzysztof.kozlowski+dt@linaro.org; Jun Li <jun.li@nxp.com>; Bough > > > Chen <haibo.chen@nxp.com>; linux-phy@lists.infradead.org; > > > linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > > > devicetree@vger.kernel.org > > > Subject: Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy > > > tuning properties > > > > > > Hi Krzystof, > > > > > > thank you for your explanations. As I'm still quite new to writing > > > bindings, I still have some questions: > > > > > > On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: > > > > On 05/04/2023 14:14, Johannes Zink wrote: > > > > > Hi Krysztof, > > > > > > > > > > thanks for your review, please find my questions below. > > > > > > > > > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > > > > > > [snip] > > > > > > > A phandle to the regulator for USB VBUS. > > > > > > > > > > > > > > + fsl,phy-tx-vref-tune: > > > > > > > + description: > > > > > > > + HS DC Voltage level adjustment > > > > > > > > > > > > "Level" in what units? > > > > > > > > > > > > > > > > The datasheet just shows percent, ranging from -6 to +24%, in 2% > > > > > increments. What unit would you suggest? > > > > > > > > percent > > > > > > > https://gith/ > > > > > > > ub.com%2Fdevicetree-org%2Fdt- > > > schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > > > %2Fproperty- > > > > units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > > > 4 > > > > > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63 > > > 816 > > > > > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > > > 2lu > > > > > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs > > > 9k% > > > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > > > > > I am still a bit confused how to use this properly. How can I > > > restrict the values to multiples of 2 in order to avoid illegal > > > values? > > > > > > At the moment the only thing I could come up with is something like > > > > > > fsl,phy-tx-vref-tune-percent: > > > description: | > > > Adjusts the high-speed DC level voltage > > > $ref: /schemas/types.yaml#/definitions/int32 > > > minimum: -6 > > > maximum: 24 > > > default: 0 > > > > > > Does something like this work? I am not quite sure if I am on the > > > right track here, especially as this requires a signed int, of which > > > I have not seen many examples so far. > > > > > > Also, as far as the description is concerned: This is almost the > > > entire information I there is in the datasheet. As I try to upstream > > > some of the vendor downstream patches, I do not have any additional > > > information. > > > > > > > > > > > > > > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > > > + enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, > > > > > > > 14, > > > > > > > 15, > > > > > > > 16] > > > > > > > + > > > > > > > + fsl,phy-tx-rise-tune: > > > > > > > + description: > > > > > > > + HS Transmitter Rise/Fall Time Adjustment > > > > > > > + $ref: /schemas/types.yaml#/definitions/uint32 > > > > > > > + enum: [0, 1, 2, 3] > > > > > > > + > > > > > > > + fsl,phy-tx-preemp-amp-tune: > > > > > > > + description: > > > > > > > + HS Transmitter Pre-Emphasis Current Control > > > > > > > > > > > > If this is current then use standard unit suffixes. > > > > > > > > > > According to the datasheet this is in "unit amonts" of 600uA, > > > > > basically 0x600uA, 1x600uA etc. Should I just suffix it with uA > > > > > then? > > > > > > > > Yes > > > > > > > > > > > https://gith/ > > > > > > > ub.com%2Fdevicetree-org%2Fdt- > > > schema%2Fblob%2Fmain%2Fdtschema%2Fschemas > > > > %2Fproperty- > > > > units.yaml&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a78 > > > 4 > > > > > > > de5941d08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63 > > > 816 > > > > > > > 8197947407580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > > > 2lu > > > > > > > MzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=kY4dXkOHRs > > > 9k% > > > > 2BeUQ5iixLYsNC8UotIgq6eOPGjbf01o%3D&reserved=0 > > > > > > > > The register values can work sometimes fine but also do not scale > > > > at all. For any other variant all the meanings will differ. Any > > > > other > > > > IMX8 > > > > phy will need new bindings and new description/values for your > > > > register-like-fields. > > > > > > I think this particular property should work, probably its something > > > like > > > > > > fsl,phy-tx-preemp-amp-tune-microamps: > > > description: | > > > Transmitter Pre-Emphasis Current Control > > > Controls the amount of current sourced to DPn and DMn after a > > > J-to- > > > K or K-to-J transition. > > > $ref: /schemas/types.yaml#/definitions/uint32 > > > minimum: 0 > > > maximum: 1800 > > > default: 0 > > > > > > What's the right way to communicate that the value is in multiples > > > of 600uA and that this is only an approximate Value? Add some > > > free-text to the description? > > > > > > > > > For some other properties, such as fsl,phy-pcs-tx-swing-full or > > > fsl,phy-pcs-tx-deemph-3p5db the datasheet provides no information at > > > all, neither on the unit nor on a valid range. What is the proper > > > way for something like them (I try to get some of the freescale > > > downstream patches to mainline, but they did not even provide > > > bindings for their > > > driver...) > > > > I will check with internal design team for those not well documented > > properties. > > > > That's great, thanks! Here is the feedback from our design team: Per the USB specification, the TX de-emphasis value is 3.5dB nominal. Only pcs_tx_deemph_3p5db is used for USB3. pcs_tx_deemph_6db[5:0] is not used. pcs_tx_deemph_3p5db[5:0] range is between 0dB to -36dB (unit step in decimal 1) pcs_tx_swing_full[6:0] range is from 0 to full scale 127(decimal), with unit step in decimal 1. TX amplitude is determined by ( voltage corresponding to tx_vboost_lvl) * (pcs_tx_swing_full +1 )/128 The actual TX swing value should be decided by characterization with the package and PCB. Li Jun > > Johannes > > > Li Jun > > > > > > > > > For fsl,phy-comp-dis-tune-percent, the actual values to not map well > > > to integer amount of percent, but I have not found a permill in > > > property- units. > > > Also, as the steps appear quite arbitrary large, what is the correct > > > way of restricting the values to valid values that the hardware can > > > actually support? As reference, I have only seen stuff like the > > > st,trim-hs- current in > > > Documentation/devicetree/bindings/phy/phy-stm32- > > > usbphyc.yaml so far... > > > > > > Thanks for helping me and best regards Johannes > > > > > > > > > > > > > > Best regards, > > > > Krzysztof > > > > > > > > > > > > > > > > > > -- > > > Pengutronix e.K. | Johannes Zink | > > > Steuerwalder Str. 21 | > > > https://ww/ > > > w.p%2F&data=05%7C01%7Cjun.li%40nxp.com%7C4cfd371e93084ee8c43908db3aa > > > 0a30c%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63816823382425151 > > > 8%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTi > > > I6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=EsH%2B63B32iGAJEzk9Tc > > > BYdcMFqnVLzr1D8t9D%2Bl0J5o%3D&reserved=0 > > > engutronix.de%2F&data=05%7C01%7Cjun.li%40nxp.com%7Ca2e1e5bb6a784de5 > > > 941d > > > 08db3a9847d0%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C638168197 > > > 9474 > > > 07580%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiL > > > CJBT > > > iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Dq06I6tprUib5nOmp4p > > > DFdY > > > MgYULn8MLj5iHwVlQHMY%3D&reserved=0 | > > > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > > > Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | > > > > > > > > -- > Pengutronix e.K. | Johannes Zink | > Steuerwalder Str. 21 | > https://www.p/ > engutronix.de%2F&data=05%7C01%7Cjun.li%40nxp.com%7C4cfd371e93084ee8c439 > 08db3aa0a30c%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C6381682338242 > 51518%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBT > iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=80YR6G0A347G%2FMI9ksARn > VSqXVQXORt8pNBQjRoIBVY%3D&reserved=0 | > 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-11 14:22 ` Johannes Zink 2023-04-11 14:59 ` Jun Li @ 2023-04-12 13:39 ` Rob Herring 2023-04-12 14:32 ` Johannes Zink 1 sibling, 1 reply; 15+ messages in thread From: Rob Herring @ 2023-04-12 13:39 UTC (permalink / raw) To: Johannes Zink Cc: Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree On Tue, Apr 11, 2023 at 04:22:37PM +0200, Johannes Zink wrote: > Hi Krzystof, > > thank you for your explanations. As I'm still quite new to writing > bindings, I still have some questions: > > On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: > > On 05/04/2023 14:14, Johannes Zink wrote: > > > Hi Krysztof, > > > > > > thanks for your review, please find my questions below. > > > > > > On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: > > > > [snip] > > > > > A phandle to the regulator for USB VBUS. > > > > > > > > > > + fsl,phy-tx-vref-tune: > > > > > + description: > > > > > + HS DC Voltage level adjustment > > > > > > > > "Level" in what units? > > > > > > > > > > The datasheet just shows percent, ranging from -6 to +24%, in 2% > > > increments. What unit would you suggest? > > > > percent > > https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml > > I am still a bit confused how to use this properly. How can I restrict > the values to multiples of 2 in order to avoid illegal values? > > At the moment the only thing I could come up with is something like > > fsl,phy-tx-vref-tune-percent: > description: | > Adjusts the high-speed DC level voltage > $ref: /schemas/types.yaml#/definitions/int32 Note that with standard unit suffixes, you don't need a type. > minimum: -6 > maximum: 24 > default: 0 > > Does something like this work? I am not quite sure if I am on the right > track here, especially as this requires a signed int, of which I have > not seen many examples so far. We'd have to change the type for -percent to signed. That's possible, but for vendor specific properties there's not much advantage to use standard units instead of just using the register values directly. Rob -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-12 13:39 ` Rob Herring @ 2023-04-12 14:32 ` Johannes Zink 2023-04-18 9:42 ` Johannes Zink 0 siblings, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-04-12 14:32 UTC (permalink / raw) To: Rob Herring Cc: Krzysztof Kozlowski, vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Hi Rob, On 4/12/23 15:39, Rob Herring wrote: > On Tue, Apr 11, 2023 at 04:22:37PM +0200, Johannes Zink wrote: >> Hi Krzystof, >> >> thank you for your explanations. As I'm still quite new to writing >> bindings, I still have some questions: >> >> On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: >>> On 05/04/2023 14:14, Johannes Zink wrote: >>>> Hi Krysztof, >>>> >>>> thanks for your review, please find my questions below. >>>> >>>> On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: >>>>> [snip] >>>>>> A phandle to the regulator for USB VBUS. >>>>>> >>>>>> + fsl,phy-tx-vref-tune: >>>>>> + description: >>>>>> + HS DC Voltage level adjustment >>>>> >>>>> "Level" in what units? >>>>> >>>> >>>> The datasheet just shows percent, ranging from -6 to +24%, in 2% >>>> increments. What unit would you suggest? >>> >>> percent >>> https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml >> >> I am still a bit confused how to use this properly. How can I restrict >> the values to multiples of 2 in order to avoid illegal values? >> >> At the moment the only thing I could come up with is something like >> >> fsl,phy-tx-vref-tune-percent: >> description: | >> Adjusts the high-speed DC level voltage >> $ref: /schemas/types.yaml#/definitions/int32 > > Note that with standard unit suffixes, you don't need a type. > >> minimum: -6 >> maximum: 24 >> default: 0 >> >> Does something like this work? I am not quite sure if I am on the right >> track here, especially as this requires a signed int, of which I have >> not seen many examples so far. > > We'd have to change the type for -percent to signed. That's possible, > but for vendor specific properties there's not much advantage to use > standard units instead of just using the register values directly. > I don't have any objections to that, this is pretty much what I sent in my v1 patch <20230405112118.1256151-2-j.zink@pengutronix.de>, but Krzysztof requested to change the vendor specific properties to use property-units. Would something along the lines of the st,trim-hs-current on Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.yaml be acceptable (i.e. use an enum and annotate the meaning of the values in the description)? I will, nevertheless, try to make the descriptions a bit more verbose in my v2 (wherever the datasheet gives me proper informations), as Krzysztof requested. Best regards Johannes > Rob > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-12 14:32 ` Johannes Zink @ 2023-04-18 9:42 ` Johannes Zink 2023-05-04 7:32 ` Johannes Zink 0 siblings, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-04-18 9:42 UTC (permalink / raw) To: Rob Herring Cc: kishon, devicetree, krzysztof.kozlowski+dt, festevam, s.hauer, vkoul, haibo.chen, linux-kernel, Krzysztof Kozlowski, linux-imx, kernel, linux-phy, shawnguo, linux-arm-kernel, jun.li Hi Rob, hi Krzysztof, On 4/12/23 16:32, Johannes Zink wrote: > Hi Rob, > > On 4/12/23 15:39, Rob Herring wrote: >> On Tue, Apr 11, 2023 at 04:22:37PM +0200, Johannes Zink wrote: >>> Hi Krzystof, >>> >>> thank you for your explanations. As I'm still quite new to writing >>> bindings, I still have some questions: >>> >>> On Fri, 2023-04-07 at 11:03 +0200, Krzysztof Kozlowski wrote: >>>> On 05/04/2023 14:14, Johannes Zink wrote: >>>>> Hi Krysztof, >>>>> >>>>> thanks for your review, please find my questions below. >>>>> >>>>> On Wed, 2023-04-05 at 13:51 +0200, Krzysztof Kozlowski wrote: >>>>>> [snip] >>>>>>> A phandle to the regulator for USB VBUS. >>>>>>> + fsl,phy-tx-vref-tune: >>>>>>> + description: >>>>>>> + HS DC Voltage level adjustment >>>>>> >>>>>> "Level" in what units? >>>>>> >>>>> >>>>> The datasheet just shows percent, ranging from -6 to +24%, in 2% >>>>> increments. What unit would you suggest? >>>> >>>> percent >>>> https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml >>> >>> I am still a bit confused how to use this properly. How can I restrict >>> the values to multiples of 2 in order to avoid illegal values? >>> >>> At the moment the only thing I could come up with is something like >>> >>> fsl,phy-tx-vref-tune-percent: >>> description: | >>> Adjusts the high-speed DC level voltage >>> $ref: /schemas/types.yaml#/definitions/int32 >> >> Note that with standard unit suffixes, you don't need a type. >> >>> minimum: -6 >>> maximum: 24 >>> default: 0 >>> >>> Does something like this work? I am not quite sure if I am on the right >>> track here, especially as this requires a signed int, of which I have >>> not seen many examples so far. >> >> We'd have to change the type for -percent to signed. That's possible, >> but for vendor specific properties there's not much advantage to use >> standard units instead of just using the register values directly. >> > > I don't have any objections to that, this is pretty much what I sent in > my v1 patch <20230405112118.1256151-2-j.zink@pengutronix.de>, but > Krzysztof requested to change the vendor specific properties to use > property-units. > > Would something along the lines of the st,trim-hs-current on > Documentation/devicetree/bindings/phy/phy-stm32-usbphyc.yaml be > acceptable (i.e. use an enum and annotate the meaning of the values in > the description)? > > I will, nevertheless, try to make the descriptions a bit more verbose in > my v2 (wherever the datasheet gives me proper informations), as > Krzysztof requested. gentle ping - any opinions on this? Shall I just send a V2 along the lines of the phy-stm32-usbphy.c? Best regards Johannes > > Best regards > Johannes > >> Rob >> > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 | -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-04-18 9:42 ` Johannes Zink @ 2023-05-04 7:32 ` Johannes Zink 2023-05-04 8:13 ` Krzysztof Kozlowski 0 siblings, 1 reply; 15+ messages in thread From: Johannes Zink @ 2023-05-04 7:32 UTC (permalink / raw) To: Rob Herring Cc: kishon, devicetree, krzysztof.kozlowski+dt, festevam, s.hauer, vkoul, haibo.chen, linux-kernel, Krzysztof Kozlowski, linux-imx, kernel, linux-phy, shawnguo, linux-arm-kernel, jun.li, patchwork-jzi Hi Rob, hi Krzysztof, [snip] > gentle ping - any opinions on this? Shall I just send a V2 along the lines of the phy-stm32-usbphy.c? This would be something like (example for the trim-hs-current, taken from pyh-stm32-usbphyc): st,trim-hs-current: description: | Controls HS driver current trimming for choke compensation - <0> = 18.87 mA target current / nominal + 0% - <1> = 19.165 mA target current / nominal + 1.56% - <2> = 19.46 mA target current / nominal + 3.12% - <3> = 19.755 mA target current / nominal + 4.68% - <4> = 20.05 mA target current / nominal + 6.24% - <5> = 20.345 mA target current / nominal + 7.8% - <6> = 20.64 mA target current / nominal + 9.36% - <7> = 20.935 mA target current / nominal + 10.92% - <8> = 21.23 mA target current / nominal + 12.48% - <9> = 21.525 mA target current / nominal + 14.04% - <10> = 21.82 mA target current / nominal + 15.6% - <11> = 22.115 mA target current / nominal + 17.16% - <12> = 22.458 mA target current / nominal + 19.01% - <13> = 22.755 mA target current / nominal + 20.58% - <14> = 23.052 mA target current / nominal + 22.16% - <15> = 23.348 mA target current / nominal + 23.73% $ref: /schemas/types.yaml#/definitions/uint32 minimum: 0 maximum: 15 default: 0 If you think something along these lines is acceptable, I would like to prepare and send a V2. Best regards Johannes [snip] -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties 2023-05-04 7:32 ` Johannes Zink @ 2023-05-04 8:13 ` Krzysztof Kozlowski 0 siblings, 0 replies; 15+ messages in thread From: Krzysztof Kozlowski @ 2023-05-04 8:13 UTC (permalink / raw) To: Johannes Zink, Rob Herring Cc: kishon, devicetree, krzysztof.kozlowski+dt, festevam, s.hauer, vkoul, haibo.chen, linux-kernel, linux-imx, kernel, linux-phy, shawnguo, linux-arm-kernel, jun.li, patchwork-jzi On 04/05/2023 09:32, Johannes Zink wrote: > Hi Rob, hi Krzysztof, > > [snip] > > gentle ping - any opinions on this? Shall I just send a V2 along the > lines of the phy-stm32-usbphy.c? > > This would be something like (example for the trim-hs-current, taken > from pyh-stm32-usbphyc): > > st,trim-hs-current: > description: | > Controls HS driver current trimming for choke compensation > - <0> = 18.87 mA target current / nominal + 0% > - <1> = 19.165 mA target current / nominal + 1.56% > - <2> = 19.46 mA target current / nominal + 3.12% > - <3> = 19.755 mA target current / nominal + 4.68% > - <4> = 20.05 mA target current / nominal + 6.24% > - <5> = 20.345 mA target current / nominal + 7.8% > - <6> = 20.64 mA target current / nominal + 9.36% > - <7> = 20.935 mA target current / nominal + 10.92% > - <8> = 21.23 mA target current / nominal + 12.48% > - <9> = 21.525 mA target current / nominal + 14.04% > - <10> = 21.82 mA target current / nominal + 15.6% > - <11> = 22.115 mA target current / nominal + 17.16% > - <12> = 22.458 mA target current / nominal + 19.01% > - <13> = 22.755 mA target current / nominal + 20.58% > - <14> = 23.052 mA target current / nominal + 22.16% > - <15> = 23.348 mA target current / nominal + 23.73% > $ref: /schemas/types.yaml#/definitions/uint32 > minimum: 0 > maximum: 15 > default: 0 > > If you think something along these lines is acceptable, I would like to > prepare and send a V2. > Go with Rob's approach, so something as you wrote above. Best regards, Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH 2/2] phy: fsl-imx8mp-usb: add support for phy tuning 2023-04-05 11:21 [PATCH 0/2] Add phy tuning support for imx8mq-usb Johannes Zink 2023-04-05 11:21 ` [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties Johannes Zink @ 2023-04-05 11:21 ` Johannes Zink 1 sibling, 0 replies; 15+ messages in thread From: Johannes Zink @ 2023-04-05 11:21 UTC (permalink / raw) To: vkoul, kishon, shawnguo, s.hauer, kernel, festevam, linux-imx, robh+dt, krzysztof.kozlowski+dt, jun.li, haibo.chen, linux-phy, linux-arm-kernel, linux-kernel, devicetree Cc: j.zink From: Li Jun <jun.li@nxp.com> Add USB PHY parameter tuning for USB certifications. Reviewed-by: Haibo Chen <haibo.chen@nxp.com> Signed-off-by: Li Jun <jun.li@nxp.com> [j.zink: ported to v6.3-rc1 from NXP downstream repo + cleanups] Signed-off-by: Johannes Zink <j.zink@pengutronix.de> --- drivers/phy/freescale/phy-fsl-imx8mq-usb.c | 124 +++++++++++++++++++++ 1 file changed, 124 insertions(+) diff --git a/drivers/phy/freescale/phy-fsl-imx8mq-usb.c b/drivers/phy/freescale/phy-fsl-imx8mq-usb.c index a29b4a6f7c24..ee1975aaab7e 100644 --- a/drivers/phy/freescale/phy-fsl-imx8mq-usb.c +++ b/drivers/phy/freescale/phy-fsl-imx8mq-usb.c @@ -27,17 +27,137 @@ #define PHY_CTRL2_TXENABLEN0 BIT(8) #define PHY_CTRL2_OTG_DISABLE BIT(9) +#define PHY_CTRL3 0xc +#define PHY_CTRL3_COMPDISTUNE_MASK GENMASK(2, 0) +#define PHY_CTRL3_TXPREEMP_TUNE_MASK GENMASK(16, 15) +#define PHY_CTRL3_TXRISE_TUNE_MASK GENMASK(21, 20) +#define PHY_CTRL3_TXVREF_TUNE_MASK GENMASK(25, 22) +#define PHY_CTRL3_TX_VBOOST_LEVEL_MASK GENMASK(31, 29) + +#define PHY_CTRL4 0x10 +#define PHY_CTRL4_PCS_TX_DEEMPH_3P5DB_MASK GENMASK(20, 15) + +#define PHY_CTRL5 0x14 +#define PHY_CTRL5_DMPWD_OVERRIDE_SEL BIT(23) +#define PHY_CTRL5_DMPWD_OVERRIDE BIT(22) +#define PHY_CTRL5_DPPWD_OVERRIDE_SEL BIT(21) +#define PHY_CTRL5_DPPWD_OVERRIDE BIT(20) +#define PHY_CTRL5_PCS_TX_SWING_FULL_MASK GENMASK(6, 0) + #define PHY_CTRL6 0x18 #define PHY_CTRL6_ALT_CLK_EN BIT(1) #define PHY_CTRL6_ALT_CLK_SEL BIT(0) +#define PHY_TUNE_DEFAULT 0xffffffff + struct imx8mq_usb_phy { struct phy *phy; struct clk *clk; void __iomem *base; struct regulator *vbus; + u32 pcs_tx_swing_full; + u32 pcs_tx_deemph_3p5db; + u32 tx_vref_tune; + u32 tx_rise_tune; + u32 tx_preemp_amp_tune; + u32 tx_vboost_level; + u32 comp_dis_tune; }; +static void imx8m_get_phy_tuning_data(struct imx8mq_usb_phy *imx_phy) +{ + struct device *dev = imx_phy->phy->dev.parent; + + if (device_property_read_u32(dev, "fsl,phy-tx-vref-tune", + &imx_phy->tx_vref_tune)) + imx_phy->tx_vref_tune = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,phy-tx-rise-tune", + &imx_phy->tx_rise_tune)) + imx_phy->tx_rise_tune = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,phy-tx-preemp-amp-tune", + &imx_phy->tx_preemp_amp_tune)) + imx_phy->tx_preemp_amp_tune = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,phy-tx-vboost-level", + &imx_phy->tx_vboost_level)) + imx_phy->tx_vboost_level = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,phy-comp-dis-tune", + &imx_phy->comp_dis_tune)) + imx_phy->comp_dis_tune = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,pcs-tx-deemph-3p5db", + &imx_phy->pcs_tx_deemph_3p5db)) + imx_phy->pcs_tx_deemph_3p5db = PHY_TUNE_DEFAULT; + + if (device_property_read_u32(dev, "fsl,phy-pcs-tx-swing-full", + &imx_phy->pcs_tx_swing_full)) + imx_phy->pcs_tx_swing_full = PHY_TUNE_DEFAULT; +} + +static void imx8m_phy_tune(struct imx8mq_usb_phy *imx_phy) +{ + u32 value; + + /* PHY tuning */ + if (imx_phy->pcs_tx_deemph_3p5db != PHY_TUNE_DEFAULT) { + value = readl(imx_phy->base + PHY_CTRL4); + value &= ~PHY_CTRL4_PCS_TX_DEEMPH_3P5DB_MASK; + value |= FIELD_PREP(PHY_CTRL4_PCS_TX_DEEMPH_3P5DB_MASK, + imx_phy->pcs_tx_deemph_3p5db); + writel(value, imx_phy->base + PHY_CTRL4); + } + + if (imx_phy->pcs_tx_swing_full != PHY_TUNE_DEFAULT) { + value = readl(imx_phy->base + PHY_CTRL5); + value |= FIELD_PREP(PHY_CTRL5_PCS_TX_SWING_FULL_MASK, + imx_phy->pcs_tx_swing_full); + writel(value, imx_phy->base + PHY_CTRL5); + } + + if ((imx_phy->tx_vref_tune & imx_phy->tx_rise_tune & + imx_phy->tx_preemp_amp_tune & imx_phy->comp_dis_tune & + imx_phy->tx_vboost_level) == PHY_TUNE_DEFAULT) + /* If all are the default values, no need update. */ + return; + + value = readl(imx_phy->base + PHY_CTRL3); + + if (imx_phy->tx_vref_tune != PHY_TUNE_DEFAULT) { + value &= ~PHY_CTRL3_TXVREF_TUNE_MASK; + value |= FIELD_PREP(PHY_CTRL3_TXVREF_TUNE_MASK, + imx_phy->tx_vref_tune); + } + + if (imx_phy->tx_rise_tune != PHY_TUNE_DEFAULT) { + value &= ~PHY_CTRL3_TXRISE_TUNE_MASK; + value |= FIELD_PREP(PHY_CTRL3_TXRISE_TUNE_MASK, + imx_phy->tx_rise_tune); + } + + if (imx_phy->tx_preemp_amp_tune != PHY_TUNE_DEFAULT) { + value &= ~PHY_CTRL3_TXPREEMP_TUNE_MASK; + value |= FIELD_PREP(PHY_CTRL3_TXPREEMP_TUNE_MASK, + imx_phy->tx_preemp_amp_tune); + } + + if (imx_phy->comp_dis_tune != PHY_TUNE_DEFAULT) { + value &= ~PHY_CTRL3_COMPDISTUNE_MASK; + value |= FIELD_PREP(PHY_CTRL3_COMPDISTUNE_MASK, + imx_phy->comp_dis_tune); + } + + if (imx_phy->tx_vboost_level != PHY_TUNE_DEFAULT) { + value &= ~PHY_CTRL3_TX_VBOOST_LEVEL_MASK; + value |= FIELD_PREP(PHY_CTRL3_TX_VBOOST_LEVEL_MASK, + imx_phy->tx_vboost_level); + } + + writel(value, imx_phy->base + PHY_CTRL3); +} + static int imx8mq_usb_phy_init(struct phy *phy) { struct imx8mq_usb_phy *imx_phy = phy_get_drvdata(phy); @@ -99,6 +219,8 @@ static int imx8mp_usb_phy_init(struct phy *phy) value &= ~(PHY_CTRL1_RESET | PHY_CTRL1_ATERESET); writel(value, imx_phy->base + PHY_CTRL1); + imx8m_phy_tune(imx_phy); + return 0; } @@ -182,6 +304,8 @@ static int imx8mq_usb_phy_probe(struct platform_device *pdev) phy_set_drvdata(imx_phy->phy, imx_phy); + imx8m_get_phy_tuning_data(imx_phy); + phy_provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate); return PTR_ERR_OR_ZERO(phy_provider); -- 2.39.2 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 15+ messages in thread
end of thread, other threads:[~2023-05-04 8:13 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-04-05 11:21 [PATCH 0/2] Add phy tuning support for imx8mq-usb Johannes Zink 2023-04-05 11:21 ` [PATCH 1/2] dt-bindings: phy: imx8mq-usb: add phy tuning properties Johannes Zink 2023-04-05 11:51 ` Krzysztof Kozlowski 2023-04-05 12:14 ` Johannes Zink 2023-04-07 9:03 ` Krzysztof Kozlowski 2023-04-11 14:22 ` Johannes Zink 2023-04-11 14:59 ` Jun Li 2023-04-11 15:22 ` Johannes Zink 2023-04-26 10:23 ` Jun Li 2023-04-12 13:39 ` Rob Herring 2023-04-12 14:32 ` Johannes Zink 2023-04-18 9:42 ` Johannes Zink 2023-05-04 7:32 ` Johannes Zink 2023-05-04 8:13 ` Krzysztof Kozlowski 2023-04-05 11:21 ` [PATCH 2/2] phy: fsl-imx8mp-usb: add support for phy tuning Johannes Zink
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).