diff mbox series

[1/2] dt-bindings: phy: ti, tcan104x-can: Document mux-states property

Message ID 20211202131002.12217-2-a-govindraju@ti.com
State Superseded
Headers show
Series CAN: Add support for setting mux | expand

Commit Message

Aswath Govindraju Dec. 2, 2021, 1:10 p.m. UTC
On some boards, for routing CAN signals from controller to transceivers,
muxes might need to be set. This can be implemented using mux-states
property. Therefore, document the same in the respective bindings.

Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
---
 .../devicetree/bindings/phy/ti,tcan104x-can.yaml    | 13 +++++++++++++
 1 file changed, 13 insertions(+)

Comments

Rob Herring (Arm) Dec. 13, 2021, 8:19 p.m. UTC | #1
On Thu, Dec 02, 2021 at 06:40:01PM +0530, Aswath Govindraju wrote:
> On some boards, for routing CAN signals from controller to transceivers,
> muxes might need to be set. This can be implemented using mux-states
> property. Therefore, document the same in the respective bindings.
> 
> Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
> ---
>  .../devicetree/bindings/phy/ti,tcan104x-can.yaml    | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
> index 6107880e5246..5b2b08016635 100644
> --- a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
> +++ b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
> @@ -37,6 +37,18 @@ properties:
>        max bit rate supported in bps
>      minimum: 1
>  
> +  mux-states:
> +    description:
> +      mux controller node to route the signals from controller to
> +      transceiver. Depending on the mux chip and the control lines
> +      in it, the first and second parameters can be used for
> +      representing control line and state. The number of arguments
> +      is to be used based on '#mux-state-cells' property in the
> +      mux-controller node. If '#mux-state-cells' is equal to
> +      one then, then the argument to be used would be the state.
> +      If it is set to two, then the first argument is the control
> +      line and the second argument would be its corresponding state.

No need to redefine how a common property works here. What you do need 
to define is how many entries and what they are for if more than 1. 

Rob
Aswath Govindraju Dec. 14, 2021, 3:46 a.m. UTC | #2
Hi Rob,

On 14/12/21 1:49 am, Rob Herring wrote:
> On Thu, Dec 02, 2021 at 06:40:01PM +0530, Aswath Govindraju wrote:
>> On some boards, for routing CAN signals from controller to transceivers,
>> muxes might need to be set. This can be implemented using mux-states
>> property. Therefore, document the same in the respective bindings.
>>
>> Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
>> ---
>>  .../devicetree/bindings/phy/ti,tcan104x-can.yaml    | 13 +++++++++++++
>>  1 file changed, 13 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
>> index 6107880e5246..5b2b08016635 100644
>> --- a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
>> +++ b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
>> @@ -37,6 +37,18 @@ properties:
>>        max bit rate supported in bps
>>      minimum: 1
>>  
>> +  mux-states:
>> +    description:
>> +      mux controller node to route the signals from controller to
>> +      transceiver. Depending on the mux chip and the control lines
>> +      in it, the first and second parameters can be used for
>> +      representing control line and state. The number of arguments
>> +      is to be used based on '#mux-state-cells' property in the
>> +      mux-controller node. If '#mux-state-cells' is equal to
>> +      one then, then the argument to be used would be the state.
>> +      If it is set to two, then the first argument is the control
>> +      line and the second argument would be its corresponding state.
> 
> No need to redefine how a common property works here. What you do need 
> to define is how many entries and what they are for if more than 1. 
> 

Got it. So, I'll remove the common part that describes about the number
of arguments and only include what the arguments would mean given the
number of arguments


  mux-states:
    description:
      mux controller node to route the signals from controller to
      transceiver. Two arguments can be present depending on the mux
      chip. If mux-states has one argument then it represents the state.
      If there are two arguments then the first argument is the control
      line and the second argument is its corresponding state.


Thanks,
Aswath

> Rob
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
index 6107880e5246..5b2b08016635 100644
--- a/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
+++ b/Documentation/devicetree/bindings/phy/ti,tcan104x-can.yaml
@@ -37,6 +37,18 @@  properties:
       max bit rate supported in bps
     minimum: 1
 
+  mux-states:
+    description:
+      mux controller node to route the signals from controller to
+      transceiver. Depending on the mux chip and the control lines
+      in it, the first and second parameters can be used for
+      representing control line and state. The number of arguments
+      is to be used based on '#mux-state-cells' property in the
+      mux-controller node. If '#mux-state-cells' is equal to
+      one then, then the argument to be used would be the state.
+      If it is set to two, then the first argument is the control
+      line and the second argument would be its corresponding state.
+
 required:
   - compatible
   - '#phy-cells'
@@ -53,4 +65,5 @@  examples:
       max-bitrate = <5000000>;
       standby-gpios = <&wakeup_gpio1 16 GPIO_ACTIVE_LOW>;
       enable-gpios = <&main_gpio1 67 GPIO_ACTIVE_HIGH>;
+      mux-states = <&mux0 1>;
     };