Subject: [PATCH] dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp

As was already done for MT8192 in commit b52e695324bb ("dt-bindings:
pinctrl: mt8192: Add drive-strength-microamp"), replace the custom
mediatek,drive-strength-adv property with the standardized pinconf
'drive-strength-microamp' one.

Similarly to the mt8192 counterpart, there's no user of property
'mediatek,drive-strength-adv', hence removing it is safe.

Fixes: 69c3d58dc187 ("dt-bindings: pinctrl: mt8195: Add mediatek,drive-strength-adv property")
Signed-off-by: AngeloGioacchino Del Regno <[email protected]>
---
.../bindings/pinctrl/pinctrl-mt8195.yaml | 27 ++-----------------
1 file changed, 2 insertions(+), 25 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml b/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
index b0fea44403e7..85e96a5e1708 100644
--- a/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
@@ -100,31 +100,8 @@ patternProperties:
drive-strength:
enum: [2, 4, 6, 8, 10, 12, 14, 16]

- mediatek,drive-strength-adv:
- description: |
- Describe the specific driving setup property.
- For I2C pins, the existing generic driving setup can only support
- 2/4/6/8/10/12/14/16mA driving. But in specific driving setup, they
- can support 0.125/0.25/0.5/1mA adjustment. If we enable specific
- driving setup, the existing generic setup will be disabled.
- The specific driving setup is controlled by E1E0EN.
- When E1=0/E0=0, the strength is 0.125mA.
- When E1=0/E0=1, the strength is 0.25mA.
- When E1=1/E0=0, the strength is 0.5mA.
- When E1=1/E0=1, the strength is 1mA.
- EN is used to enable or disable the specific driving setup.
- Valid arguments are described as below:
- 0: (E1, E0, EN) = (0, 0, 0)
- 1: (E1, E0, EN) = (0, 0, 1)
- 2: (E1, E0, EN) = (0, 1, 0)
- 3: (E1, E0, EN) = (0, 1, 1)
- 4: (E1, E0, EN) = (1, 0, 0)
- 5: (E1, E0, EN) = (1, 0, 1)
- 6: (E1, E0, EN) = (1, 1, 0)
- 7: (E1, E0, EN) = (1, 1, 1)
- So the valid arguments are from 0 to 7.
- $ref: /schemas/types.yaml#/definitions/uint32
- enum: [0, 1, 2, 3, 4, 5, 6, 7]
+ drive-strength-microamp:
+ enum: [125, 250, 500, 1000]

bias-pull-down:
oneOf:
--
2.35.1


2022-06-30 21:29:00

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp

On Thu, 30 Jun 2022 15:15:43 +0200, AngeloGioacchino Del Regno wrote:
> As was already done for MT8192 in commit b52e695324bb ("dt-bindings:
> pinctrl: mt8192: Add drive-strength-microamp"), replace the custom
> mediatek,drive-strength-adv property with the standardized pinconf
> 'drive-strength-microamp' one.
>
> Similarly to the mt8192 counterpart, there's no user of property
> 'mediatek,drive-strength-adv', hence removing it is safe.
>
> Fixes: 69c3d58dc187 ("dt-bindings: pinctrl: mt8195: Add mediatek,drive-strength-adv property")
> Signed-off-by: AngeloGioacchino Del Regno <[email protected]>
> ---
> .../bindings/pinctrl/pinctrl-mt8195.yaml | 27 ++-----------------
> 1 file changed, 2 insertions(+), 25 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-07-05 17:05:21

by Nícolas F. R. A. Prado

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp

On Thu, Jun 30, 2022 at 03:15:43PM +0200, AngeloGioacchino Del Regno wrote:
> As was already done for MT8192 in commit b52e695324bb ("dt-bindings:
> pinctrl: mt8192: Add drive-strength-microamp"), replace the custom
> mediatek,drive-strength-adv property with the standardized pinconf
> 'drive-strength-microamp' one.
>
> Similarly to the mt8192 counterpart, there's no user of property
> 'mediatek,drive-strength-adv', hence removing it is safe.
>
> Fixes: 69c3d58dc187 ("dt-bindings: pinctrl: mt8195: Add mediatek,drive-strength-adv property")
> Signed-off-by: AngeloGioacchino Del Regno <[email protected]>

Ideally we'd prevent using drive-strength-microamp together with drive-strength,
like I intended to do on v2 of the patch [1], just as an extra sanity check. But
that could be added later on top, so

Reviewed-by: N?colas F. R. A. Prado <[email protected]>

Thanks,
N?colas

[1] https://lore.kernel.org/all/[email protected]/

> ---
> .../bindings/pinctrl/pinctrl-mt8195.yaml | 27 ++-----------------
> 1 file changed, 2 insertions(+), 25 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml b/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
> index b0fea44403e7..85e96a5e1708 100644
> --- a/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml
> @@ -100,31 +100,8 @@ patternProperties:
> drive-strength:
> enum: [2, 4, 6, 8, 10, 12, 14, 16]
>
> - mediatek,drive-strength-adv:
> - description: |
> - Describe the specific driving setup property.
> - For I2C pins, the existing generic driving setup can only support
> - 2/4/6/8/10/12/14/16mA driving. But in specific driving setup, they
> - can support 0.125/0.25/0.5/1mA adjustment. If we enable specific
> - driving setup, the existing generic setup will be disabled.
> - The specific driving setup is controlled by E1E0EN.
> - When E1=0/E0=0, the strength is 0.125mA.
> - When E1=0/E0=1, the strength is 0.25mA.
> - When E1=1/E0=0, the strength is 0.5mA.
> - When E1=1/E0=1, the strength is 1mA.
> - EN is used to enable or disable the specific driving setup.
> - Valid arguments are described as below:
> - 0: (E1, E0, EN) = (0, 0, 0)
> - 1: (E1, E0, EN) = (0, 0, 1)
> - 2: (E1, E0, EN) = (0, 1, 0)
> - 3: (E1, E0, EN) = (0, 1, 1)
> - 4: (E1, E0, EN) = (1, 0, 0)
> - 5: (E1, E0, EN) = (1, 0, 1)
> - 6: (E1, E0, EN) = (1, 1, 0)
> - 7: (E1, E0, EN) = (1, 1, 1)
> - So the valid arguments are from 0 to 7.
> - $ref: /schemas/types.yaml#/definitions/uint32
> - enum: [0, 1, 2, 3, 4, 5, 6, 7]
> + drive-strength-microamp:
> + enum: [125, 250, 500, 1000]
>
> bias-pull-down:
> oneOf:
> --
> 2.35.1
>

2022-07-11 12:01:54

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp

On Thu, Jun 30, 2022 at 3:15 PM AngeloGioacchino Del Regno
<[email protected]> wrote:

> As was already done for MT8192 in commit b52e695324bb ("dt-bindings:
> pinctrl: mt8192: Add drive-strength-microamp"), replace the custom
> mediatek,drive-strength-adv property with the standardized pinconf
> 'drive-strength-microamp' one.
>
> Similarly to the mt8192 counterpart, there's no user of property
> 'mediatek,drive-strength-adv', hence removing it is safe.
>
> Fixes: 69c3d58dc187 ("dt-bindings: pinctrl: mt8195: Add mediatek,drive-strength-adv property")
> Signed-off-by: AngeloGioacchino Del Regno <[email protected]>

Patch applied.

Yours,
Linus Walleij

2022-07-14 15:59:56

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH] dt-bindings: pinctrl: mt8195: Add and use drive-strength-microamp

On Thu, Jun 30, 2022 at 7:15 AM AngeloGioacchino Del Regno
<[email protected]> wrote:
>
> As was already done for MT8192 in commit b52e695324bb ("dt-bindings:
> pinctrl: mt8192: Add drive-strength-microamp"), replace the custom
> mediatek,drive-strength-adv property with the standardized pinconf
> 'drive-strength-microamp' one.
>
> Similarly to the mt8192 counterpart, there's no user of property
> 'mediatek,drive-strength-adv', hence removing it is safe.
>
> Fixes: 69c3d58dc187 ("dt-bindings: pinctrl: mt8195: Add mediatek,drive-strength-adv property")
> Signed-off-by: AngeloGioacchino Del Regno <[email protected]>
> ---
> .../bindings/pinctrl/pinctrl-mt8195.yaml | 27 ++-----------------
> 1 file changed, 2 insertions(+), 25 deletions(-)

Now failing in linux-next. Looks like the example needs updating:

Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.example.dtb:
pinctrl@10005000: i2c0-pins:pins: 'mediatek,drive-strength-adv' does
not match any of the regexes: 'pinctrl-[0-9]+'
From schema: /builds/robherring/linux-dt/Documentation/devicetree/bindings/pinctrl/pinctrl-mt8195.yaml