~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/mux/reg-mux.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/mux/reg-mux.yaml (Architecture i386) and /Documentation/devicetree/bindings/mux/reg-mux.yaml (Architecture sparc)


  1 # SPDX-License-Identifier: GPL-2.0                  1 # SPDX-License-Identifier: GPL-2.0
  2 %YAML 1.2                                           2 %YAML 1.2
  3 ---                                                 3 ---
  4 $id: http://devicetree.org/schemas/mux/reg-mux      4 $id: http://devicetree.org/schemas/mux/reg-mux.yaml#
  5 $schema: http://devicetree.org/meta-schemas/co      5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6                                                     6 
  7 title: Generic register bitfield-based multipl      7 title: Generic register bitfield-based multiplexer controller
  8                                                     8 
  9 maintainers:                                        9 maintainers:
 10   - Peter Rosin <peda@axentia.se>                   10   - Peter Rosin <peda@axentia.se>
 11                                                    11 
 12 description: |+                                    12 description: |+
 13   Define register bitfields to be used to cont     13   Define register bitfields to be used to control multiplexers. The parent
 14   device tree node must be a device node to pr     14   device tree node must be a device node to provide register r/w access.
 15                                                    15 
 16 properties:                                        16 properties:
 17   compatible:                                      17   compatible:
 18     enum:                                          18     enum:
 19       - reg-mux   # parent device of mux contr     19       - reg-mux   # parent device of mux controller is not syscon device
 20       - mmio-mux  # parent device of mux contr     20       - mmio-mux  # parent device of mux controller is syscon device
 21                                                    21 
 22   reg: true                                        22   reg: true
 23                                                    23 
 24   '#mux-control-cells':                            24   '#mux-control-cells':
 25     const: 1                                       25     const: 1
 26                                                    26 
 27   mux-reg-masks:                                   27   mux-reg-masks:
 28     $ref: /schemas/types.yaml#/definitions/uin     28     $ref: /schemas/types.yaml#/definitions/uint32-matrix
 29     items:                                         29     items:
 30       items:                                       30       items:
 31         - description: register offset             31         - description: register offset
 32         - description: pre-shifted bitfield ma     32         - description: pre-shifted bitfield mask
 33     description: Each entry pair describes a s     33     description: Each entry pair describes a single mux control.
 34                                                    34 
 35   idle-states: true                                35   idle-states: true
 36                                                    36 
 37 required:                                          37 required:
 38   - compatible                                     38   - compatible
 39   - mux-reg-masks                                  39   - mux-reg-masks
 40   - '#mux-control-cells'                           40   - '#mux-control-cells'
 41                                                    41 
 42 additionalProperties: false                        42 additionalProperties: false
 43                                                    43 
 44 examples:                                          44 examples:
 45   - |                                              45   - |
 46     /* The parent device of mux controller is      46     /* The parent device of mux controller is not a syscon device. */
 47                                                    47 
 48     #include <dt-bindings/mux/mux.h>               48     #include <dt-bindings/mux/mux.h>
 49                                                    49 
 50     mux-controller {                               50     mux-controller {
 51         compatible = "reg-mux";                    51         compatible = "reg-mux";
 52         #mux-control-cells = <1>;                  52         #mux-control-cells = <1>;
 53         mux-reg-masks =                            53         mux-reg-masks =
 54             <0x54 0xf8>, /* 0: reg 0x54, bits      54             <0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
 55             <0x54 0x07>; /* 1: reg 0x54, bits      55             <0x54 0x07>; /* 1: reg 0x54, bits 2:0 */
 56     };                                             56     };
 57                                                    57 
 58     mdio-mux-1 {                                   58     mdio-mux-1 {
 59         compatible = "mdio-mux-multiplexer";       59         compatible = "mdio-mux-multiplexer";
 60         mux-controls = <&mux1 0>;                  60         mux-controls = <&mux1 0>;
 61         mdio-parent-bus = <&emdio1>;               61         mdio-parent-bus = <&emdio1>;
 62         #address-cells = <1>;                      62         #address-cells = <1>;
 63         #size-cells = <0>;                         63         #size-cells = <0>;
 64                                                    64 
 65         mdio@0 {                                   65         mdio@0 {
 66             reg = <0x0>;                           66             reg = <0x0>;
 67             #address-cells = <1>;                  67             #address-cells = <1>;
 68             #size-cells = <0>;                     68             #size-cells = <0>;
 69         };                                         69         };
 70                                                    70 
 71         mdio@8 {                                   71         mdio@8 {
 72             reg = <0x8>;                           72             reg = <0x8>;
 73             #address-cells = <1>;                  73             #address-cells = <1>;
 74             #size-cells = <0>;                     74             #size-cells = <0>;
 75         };                                         75         };
 76     };                                             76     };
 77                                                    77 
 78     mdio-mux-2 {                                   78     mdio-mux-2 {
 79         compatible = "mdio-mux-multiplexer";       79         compatible = "mdio-mux-multiplexer";
 80         mux-controls = <&mux1 1>;                  80         mux-controls = <&mux1 1>;
 81         mdio-parent-bus = <&emdio2>;               81         mdio-parent-bus = <&emdio2>;
 82         #address-cells = <1>;                      82         #address-cells = <1>;
 83         #size-cells = <0>;                         83         #size-cells = <0>;
 84                                                    84 
 85         mdio@0 {                                   85         mdio@0 {
 86             reg = <0x0>;                           86             reg = <0x0>;
 87             #address-cells = <1>;                  87             #address-cells = <1>;
 88             #size-cells = <0>;                     88             #size-cells = <0>;
 89         };                                         89         };
 90                                                    90 
 91         mdio@1 {                                   91         mdio@1 {
 92             reg = <0x1>;                           92             reg = <0x1>;
 93             #address-cells = <1>;                  93             #address-cells = <1>;
 94             #size-cells = <0>;                     94             #size-cells = <0>;
 95         };                                         95         };
 96     };                                             96     };
 97                                                    97 
 98   - |                                              98   - |
 99     /* The parent device of mux controller is      99     /* The parent device of mux controller is syscon device. */
100                                                   100 
101     #include <dt-bindings/mux/mux.h>              101     #include <dt-bindings/mux/mux.h>
102     syscon@1000 {                                 102     syscon@1000 {
103         reg = <0x1000 0x100>;                     103         reg = <0x1000 0x100>;
104                                                   104 
105         mux2: mux-controller {                    105         mux2: mux-controller {
106             compatible = "mmio-mux";              106             compatible = "mmio-mux";
107             #mux-control-cells = <1>;             107             #mux-control-cells = <1>;
108                                                   108 
109             mux-reg-masks =                       109             mux-reg-masks =
110                 <0x3 0x30>, /* 0: reg 0x3, bit    110                 <0x3 0x30>, /* 0: reg 0x3, bits 5:4 */
111                 <0x3 0x40>; /* 1: reg 0x3, bit    111                 <0x3 0x40>; /* 1: reg 0x3, bit 6 */
112             idle-states = <MUX_IDLE_AS_IS>, <0    112             idle-states = <MUX_IDLE_AS_IS>, <0>;
113         };                                        113         };
114     };                                            114     };
115                                                   115 
116     video-mux {                                   116     video-mux {
117         compatible = "video-mux";                 117         compatible = "video-mux";
118         mux-controls = <&mux2 0>;                 118         mux-controls = <&mux2 0>;
119         #address-cells = <1>;                     119         #address-cells = <1>;
120         #size-cells = <0>;                        120         #size-cells = <0>;
121                                                   121 
122         ports {                                   122         ports {
123             #address-cells = <1>;                 123             #address-cells = <1>;
124             #size-cells = <0>;                    124             #size-cells = <0>;
125                                                   125 
126             /* inputs 0..3 */                     126             /* inputs 0..3 */
127             port@0 {                              127             port@0 {
128                 reg = <0>;                        128                 reg = <0>;
129             };                                    129             };
130             port@1 {                              130             port@1 {
131                 reg = <1>;                        131                 reg = <1>;
132             };                                    132             };
133             port@2 {                              133             port@2 {
134                 reg = <2>;                        134                 reg = <2>;
135             };                                    135             };
136             port@3 {                              136             port@3 {
137                 reg = <3>;                        137                 reg = <3>;
138             };                                    138             };
139                                                   139 
140             /* output */                          140             /* output */
141             port@4 {                              141             port@4 {
142                 reg = <4>;                        142                 reg = <4>;
143             };                                    143             };
144         };                                        144         };
145     };                                            145     };
146 ...                                               146 ...
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php