diff mbox series

[v2,1/2] dt-bindings: i2c: Add custom properties for MAX7357/MAX7358

Message ID 20230831101513.2042773-1-Naresh.Solanki@9elements.com
State Superseded
Headers show
Series [v2,1/2] dt-bindings: i2c: Add custom properties for MAX7357/MAX7358 | expand

Commit Message

Naresh Solanki Aug. 31, 2023, 10:15 a.m. UTC
From: Patrick Rudolph <patrick.rudolph@9elements.com>

Both chips have a configuration register to enable additional
features. These features aren't enabled by default & its up to
board designer to enable the same.

Add booleans for:
 - maxim,isolate-stuck-channel
 - maxim,send-flush-out-sequence
 - maxim,preconnection-wiggle-test-enable

Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
---
Changes in V2:
- Update properties.
---
 .../bindings/i2c/i2c-mux-pca954x.yaml         | 31 +++++++++++++++++++
 1 file changed, 31 insertions(+)


base-commit: f9ea75e087b81081f33e34c4e1ba8b4abe841d9f

Comments

Naresh Solanki Sept. 11, 2023, 10:31 a.m. UTC | #1
Hi

On Thu, 31 Aug 2023 at 17:33, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 31/08/2023 12:15, Naresh Solanki wrote:
> > From: Patrick Rudolph <patrick.rudolph@9elements.com>
> >
> > Both chips have a configuration register to enable additional
> > features. These features aren't enabled by default & it's up to
> > board designer to enable the same.
> >
> > Add booleans for:
> >  - maxim,isolate-stuck-channel
> >  - maxim,send-flush-out-sequence
> >  - maxim,preconnection-wiggle-test-enable
> >
> > Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
> > Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
>
> Subject: still did not improve. You waited exactly 30 minutes for my
> feedback after sending your response.
Will update the subject prefix to: 'dt-bindings: i2c: pca954x:'
Also I'm adding three properties here so I guess 'Add custom
properties..' should be fine.
If you have a better suggestion then please let me know.

>
>
>
> > ---
> > Changes in V2:
> > - Update properties.
> > ---
> >  .../bindings/i2c/i2c-mux-pca954x.yaml         | 31 +++++++++++++++++++
> >  1 file changed, 31 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> > index 2d7bb998b0e9..fa73eadfdf7b 100644
> > --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> > +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> > @@ -71,6 +71,23 @@ properties:
> >      description: A voltage regulator supplying power to the chip. On PCA9846
> >        the regulator supplies power to VDD2 (core logic) and optionally to VDD1.
> >
> > +  maxim,isolate-stuck-channel:
> > +    type: boolean
> > +    description: Allows to use non faulty channels while a stuck channel is
> > +      isolated from the upstream bus. If not set all channels are isolated from
> > +      the upstream bus until the fault is cleared.
>
> Nothing improved here. As I said, please provide arguments or drop this
> property.
These features cannot be enabled by default because doing so may lead
to unexpected behavior, such as bus disconnections(although that
wasn't expected).
These features should only be enabled after they have been validated
by the board designer.
Therefore, they cannot be enabled by default.

Regards,
Naresh
>
> > +
> > +  maxim,send-flush-out-sequence:
> > +    type: boolean
> > +    description: Send a flush-out sequence to stuck auxiliary buses
> > +      automatically after a stuck channel is being detected.
>
> Ditto
>
> > +
> > +  maxim,preconnection-wiggle-test-enable:
> > +    type: boolean
> > +    description: Send a STOP condition to the auxiliary buses when the switch
> > +      register activates a channel to detect a stuck high fault. On fault the
> > +      channel is isolated from the upstream bus.
>
> Ditto
>
>
> Best regards,
> Krzysztof
>
Krzysztof Kozlowski Sept. 11, 2023, 10:43 a.m. UTC | #2
On 11/09/2023 12:31, Naresh Solanki wrote:

>>> diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
>>> index 2d7bb998b0e9..fa73eadfdf7b 100644
>>> --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
>>> +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
>>> @@ -71,6 +71,23 @@ properties:
>>>      description: A voltage regulator supplying power to the chip. On PCA9846
>>>        the regulator supplies power to VDD2 (core logic) and optionally to VDD1.
>>>
>>> +  maxim,isolate-stuck-channel:
>>> +    type: boolean
>>> +    description: Allows to use non faulty channels while a stuck channel is
>>> +      isolated from the upstream bus. If not set all channels are isolated from
>>> +      the upstream bus until the fault is cleared.
>>
>> Nothing improved here. As I said, please provide arguments or drop this
>> property.
> These features cannot be enabled by default because doing so may lead
> to unexpected behavior, such as bus disconnections(although that
> wasn't expected).
> These features should only be enabled after they have been validated
> by the board designer.
> Therefore, they cannot be enabled by default.

And what is needed to validate them for given board? IOW, what changes
in hardware design that it can or cannot be used?

Best regards,
Krzysztof
Naresh Solanki Sept. 11, 2023, 11:39 a.m. UTC | #3
Hi


On Mon, 11 Sept 2023 at 16:13, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 11/09/2023 12:31, Naresh Solanki wrote:
>
> >>> diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> >>> index 2d7bb998b0e9..fa73eadfdf7b 100644
> >>> --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> >>> +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> >>> @@ -71,6 +71,23 @@ properties:
> >>>      description: A voltage regulator supplying power to the chip. On PCA9846
> >>>        the regulator supplies power to VDD2 (core logic) and optionally to VDD1.
> >>>
> >>> +  maxim,isolate-stuck-channel:
> >>> +    type: boolean
> >>> +    description: Allows to use non faulty channels while a stuck channel is
> >>> +      isolated from the upstream bus. If not set all channels are isolated from
> >>> +      the upstream bus until the fault is cleared.
> >>
> >> Nothing improved here. As I said, please provide arguments or drop this
> >> property.
> > These features cannot be enabled by default because doing so may lead
> > to unexpected behavior, such as bus disconnections(although that
> > wasn't expected).
> > These features should only be enabled after they have been validated
> > by the board designer.
> > Therefore, they cannot be enabled by default.
>
> And what is needed to validate them for given board? IOW, what changes
> in hardware design that it can or cannot be used?
Enabling PRECONNECT_TEST in my setup didn't work
Although this wasn't expected.

Regards,
Naresh

>
> Best regards,
> Krzysztof
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
index 2d7bb998b0e9..fa73eadfdf7b 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
+++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
@@ -71,6 +71,23 @@  properties:
     description: A voltage regulator supplying power to the chip. On PCA9846
       the regulator supplies power to VDD2 (core logic) and optionally to VDD1.
 
+  maxim,isolate-stuck-channel:
+    type: boolean
+    description: Allows to use non faulty channels while a stuck channel is
+      isolated from the upstream bus. If not set all channels are isolated from
+      the upstream bus until the fault is cleared.
+
+  maxim,send-flush-out-sequence:
+    type: boolean
+    description: Send a flush-out sequence to stuck auxiliary buses
+      automatically after a stuck channel is being detected.
+
+  maxim,preconnection-wiggle-test-enable:
+    type: boolean
+    description: Send a STOP condition to the auxiliary buses when the switch
+      register activates a channel to detect a stuck high fault. On fault the
+      channel is isolated from the upstream bus.
+
 required:
   - compatible
   - reg
@@ -95,6 +112,20 @@  allOf:
         "#interrupt-cells": false
         interrupt-controller: false
 
+  - if:
+      not:
+        properties:
+          compatible:
+            contains:
+              enum:
+                - maxim,max7357
+                - maxim,max7358
+    then:
+      properties:
+        maxim,isolate-stuck-channel: false
+        maxim,send-flush-out-sequence: false
+        maxim,preconnection-wiggle-test-enable: false
+
 unevaluatedProperties: false
 
 examples: