dt-bindings: Add devicetree bindings
Add snapshot of device tree bindings from keystone common kernel, branch "android-mainline-keystone-qcom-release" at c4c12103f9c0 ("Snap for 9228065 from e32903b9a63bb558df8b803b076619c53c16baad to android-mainline-keystone-qcom-release"). Change-Id: I7682079615cbd9f29340a5c1f2a1d84ec441a1f1 Signed-off-by: Melody Olvera <quic_molvera@quicinc.com>
This commit is contained in:
75
bindings/mux/adi,adg792a.txt
Normal file
75
bindings/mux/adi,adg792a.txt
Normal file
@@ -0,0 +1,75 @@
|
||||
Bindings for Analog Devices ADG792A/G Triple 4:1 Multiplexers
|
||||
|
||||
Required properties:
|
||||
- compatible : "adi,adg792a" or "adi,adg792g"
|
||||
- #mux-control-cells : <0> if parallel (the three muxes are bound together
|
||||
with a single mux controller controlling all three muxes), or <1> if
|
||||
not (one mux controller for each mux).
|
||||
* Standard mux-controller bindings as described in mux-controller.yaml
|
||||
|
||||
Optional properties for ADG792G:
|
||||
- gpio-controller : if present, #gpio-cells below is required.
|
||||
- #gpio-cells : should be <2>
|
||||
- First cell is the GPO line number, i.e. 0 or 1
|
||||
- Second cell is used to specify active high (0)
|
||||
or active low (1)
|
||||
|
||||
Optional properties:
|
||||
- idle-state : if present, array of states that the mux controllers will have
|
||||
when idle. The special state MUX_IDLE_AS_IS is the default and
|
||||
MUX_IDLE_DISCONNECT is also supported.
|
||||
|
||||
States 0 through 3 correspond to signals A through D in the datasheet.
|
||||
|
||||
Example:
|
||||
|
||||
/*
|
||||
* Three independent mux controllers (of which one is used).
|
||||
* Mux 0 is disconnected when idle, mux 1 idles in the previously
|
||||
* selected state and mux 2 idles with signal B.
|
||||
*/
|
||||
&i2c0 {
|
||||
mux: mux-controller@50 {
|
||||
compatible = "adi,adg792a";
|
||||
reg = <0x50>;
|
||||
#mux-control-cells = <1>;
|
||||
|
||||
idle-state = <MUX_IDLE_DISCONNECT MUX_IDLE_AS_IS 1>;
|
||||
};
|
||||
};
|
||||
|
||||
adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 0>;
|
||||
io-channel-names = "parent";
|
||||
|
||||
mux-controls = <&mux 2>;
|
||||
|
||||
channels = "sync-1", "", "out";
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Three parallel muxes with one mux controller, useful e.g. if
|
||||
* the adc is differential, thus needing two signals to be muxed
|
||||
* simultaneously for correct operation.
|
||||
*/
|
||||
&i2c0 {
|
||||
pmux: mux-controller@50 {
|
||||
compatible = "adi,adg792a";
|
||||
reg = <0x50>;
|
||||
#mux-control-cells = <0>;
|
||||
|
||||
idle-state = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
diff-adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 0>;
|
||||
io-channel-names = "parent";
|
||||
|
||||
mux-controls = <&pmux>;
|
||||
|
||||
channels = "sync-1", "", "out";
|
||||
};
|
48
bindings/mux/adi,adgs1408.txt
Normal file
48
bindings/mux/adi,adgs1408.txt
Normal file
@@ -0,0 +1,48 @@
|
||||
Bindings for Analog Devices ADGS1408/1409 8:1/Dual 4:1 Mux
|
||||
|
||||
Required properties:
|
||||
- compatible : Should be one of
|
||||
* "adi,adgs1408"
|
||||
* "adi,adgs1409"
|
||||
* Standard mux-controller bindings as described in mux-controller.yaml
|
||||
|
||||
Optional properties for ADGS1408/1409:
|
||||
- gpio-controller : if present, #gpio-cells is required.
|
||||
- #gpio-cells : should be <2>
|
||||
- First cell is the GPO line number, i.e. 0 to 3
|
||||
for ADGS1408 and 0 to 4 for ADGS1409
|
||||
- Second cell is used to specify active high (0)
|
||||
or active low (1)
|
||||
|
||||
Optional properties:
|
||||
- idle-state : if present, the state that the mux controller will have
|
||||
when idle. The special state MUX_IDLE_AS_IS is the default and
|
||||
MUX_IDLE_DISCONNECT is also supported.
|
||||
|
||||
States 0 through 7 correspond to signals S1 through S8 in the datasheet.
|
||||
For ADGS1409 only states 0 to 3 are available.
|
||||
|
||||
Example:
|
||||
|
||||
/*
|
||||
* One mux controller.
|
||||
* Mux state set to idle as is (no idle-state declared)
|
||||
*/
|
||||
&spi0 {
|
||||
mux: mux-controller@0 {
|
||||
compatible = "adi,adgs1408";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <1000000>;
|
||||
#mux-control-cells = <0>;
|
||||
};
|
||||
}
|
||||
|
||||
adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 1>;
|
||||
io-channel-names = "parent";
|
||||
mux-controls = <&mux>;
|
||||
|
||||
channels = "out_a0", "out_a1", "test0", "test1",
|
||||
"out_b0", "out_b1", "testb0", "testb1";
|
||||
};
|
99
bindings/mux/gpio-mux.yaml
Normal file
99
bindings/mux/gpio-mux.yaml
Normal file
@@ -0,0 +1,99 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mux/gpio-mux.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: GPIO-based multiplexer controller bindings
|
||||
|
||||
maintainers:
|
||||
- Peter Rosin <peda@axentia.se>
|
||||
|
||||
description: |+
|
||||
Define what GPIO pins are used to control a multiplexer. Or several
|
||||
multiplexers, if the same pins control more than one multiplexer.
|
||||
|
||||
The multiplexer state is defined as the number represented by the
|
||||
multiplexer GPIO pins, where the first pin is the least significant
|
||||
bit. An active pin is a binary 1, an inactive pin is a binary 0.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: gpio-mux
|
||||
|
||||
mux-gpios:
|
||||
description:
|
||||
List of gpios used to control the multiplexer, least significant bit first.
|
||||
|
||||
'#mux-control-cells':
|
||||
enum: [ 0, 1 ]
|
||||
|
||||
'#mux-state-cells':
|
||||
enum: [ 1, 2 ]
|
||||
|
||||
idle-state:
|
||||
default: -1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- mux-gpios
|
||||
anyOf:
|
||||
- required:
|
||||
- "#mux-control-cells"
|
||||
- required:
|
||||
- "#mux-state-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
mux: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-control-cells = <0>;
|
||||
|
||||
mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
|
||||
<&pioA 1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 0>;
|
||||
io-channel-names = "parent";
|
||||
|
||||
mux-controls = <&mux>;
|
||||
|
||||
channels = "sync-1", "in", "out", "sync-2";
|
||||
};
|
||||
|
||||
i2c-mux {
|
||||
compatible = "i2c-mux";
|
||||
i2c-parent = <&i2c1>;
|
||||
|
||||
mux-controls = <&mux>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
i2c@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ssd1307: oled@3c {
|
||||
reg = <0x3c>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@3 {
|
||||
reg = <3>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pca9555: pca9555@20 {
|
||||
reg = <0x20>;
|
||||
};
|
||||
};
|
||||
};
|
||||
...
|
67
bindings/mux/mux-consumer.yaml
Normal file
67
bindings/mux/mux-consumer.yaml
Normal file
@@ -0,0 +1,67 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mux/mux-consumer.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Common multiplexer controller consumer bindings
|
||||
|
||||
maintainers:
|
||||
- Peter Rosin <peda@axentia.se>
|
||||
|
||||
description: |
|
||||
Mux controller consumers should specify a list of mux controllers that they
|
||||
want to use with a property containing a 'mux-ctrl-list':
|
||||
|
||||
mux-ctrl-list ::= <single-mux-ctrl> [mux-ctrl-list]
|
||||
single-mux-ctrl ::= <mux-ctrl-phandle> [mux-ctrl-specifier]
|
||||
mux-ctrl-phandle : phandle to mux controller node
|
||||
mux-ctrl-specifier : array of #mux-control-cells specifying the
|
||||
given mux controller (controller specific)
|
||||
|
||||
Mux controller properties should be named "mux-controls". The exact meaning of
|
||||
each mux controller property must be documented in the device tree binding for
|
||||
each consumer. An optional property "mux-control-names" may contain a list of
|
||||
strings to label each of the mux controllers listed in the "mux-controls"
|
||||
property.
|
||||
|
||||
If it is required to provide the state that the mux controller needs to
|
||||
be set to, the property "mux-states" must be used. An optional property
|
||||
"mux-state-names" can be used to provide a list of strings, to label
|
||||
each of the multiplixer states listed in the "mux-states" property.
|
||||
|
||||
Properties "mux-controls" and "mux-states" can be used depending on how
|
||||
the consumers want to control the mux controller. If the consumer needs
|
||||
needs to set multiple states in a mux controller, then property
|
||||
"mux-controls" can be used. If the consumer needs to set the mux
|
||||
controller to a given state then property "mux-states" can be used.
|
||||
|
||||
mux-ctrl-specifier typically encodes the chip-relative mux controller number.
|
||||
If the mux controller chip only provides a single mux controller, the
|
||||
mux-ctrl-specifier can typically be left out.
|
||||
|
||||
select: true
|
||||
|
||||
properties:
|
||||
mux-controls:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
|
||||
mux-states:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle-array
|
||||
|
||||
mux-control-names:
|
||||
description:
|
||||
Devices that use more than a single mux controller can use the
|
||||
"mux-control-names" property to map the name of the requested mux
|
||||
controller to an index into the list given by the "mux-controls" property.
|
||||
|
||||
mux-state-names:
|
||||
description:
|
||||
Devices that use more than a single multiplexer state can use the
|
||||
"mux-state-names" property to map the name of the requested mux
|
||||
controller to an index into the list given by the "mux-states"
|
||||
property.
|
||||
|
||||
additionalProperties: true
|
||||
|
||||
...
|
206
bindings/mux/mux-controller.yaml
Normal file
206
bindings/mux/mux-controller.yaml
Normal file
@@ -0,0 +1,206 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mux/mux-controller.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Common multiplexer controller provider bindings
|
||||
|
||||
maintainers:
|
||||
- Peter Rosin <peda@axentia.se>
|
||||
|
||||
description: |
|
||||
A multiplexer (or mux) controller will have one, or several, consumer devices
|
||||
that uses the mux controller. Thus, a mux controller can possibly control
|
||||
several parallel multiplexers. Presumably there will be at least one
|
||||
multiplexer needed by each consumer, but a single mux controller can of course
|
||||
control several multiplexers for a single consumer.
|
||||
|
||||
A mux controller provides a number of states to its consumers, and the state
|
||||
space is a simple zero-based enumeration. I.e. 0-1 for a 2-way multiplexer,
|
||||
0-7 for an 8-way multiplexer, etc.
|
||||
|
||||
|
||||
Mux controller nodes
|
||||
--------------------
|
||||
|
||||
Mux controller nodes must specify the number of cells used for the
|
||||
specifier using the '#mux-control-cells' or '#mux-state-cells' property.
|
||||
The value of '#mux-state-cells' will always be one greater than the value
|
||||
of '#mux-control-cells'.
|
||||
|
||||
Optionally, mux controller nodes can also specify the state the mux should
|
||||
have when it is idle. The idle-state property is used for this. If the
|
||||
idle-state is not present, the mux controller is typically left as is when
|
||||
it is idle. For multiplexer chips that expose several mux controllers, the
|
||||
idle-state property is an array with one idle state for each mux controller.
|
||||
|
||||
The special value (-1) may be used to indicate that the mux should be left
|
||||
as is when it is idle. This is the default, but can still be useful for
|
||||
mux controller chips with more than one mux controller, particularly when
|
||||
there is a need to "step past" a mux controller and set some other idle
|
||||
state for a mux controller with a higher index.
|
||||
|
||||
Some mux controllers have the ability to disconnect the input/output of the
|
||||
multiplexer. Using this disconnected high-impedance state as the idle state
|
||||
is indicated with idle state (-2).
|
||||
|
||||
These constants are available in
|
||||
|
||||
#include <dt-bindings/mux/mux.h>
|
||||
|
||||
as MUX_IDLE_AS_IS (-1) and MUX_IDLE_DISCONNECT (-2).
|
||||
|
||||
An example mux controller node look like this (the adg972a chip is a triple
|
||||
4-way multiplexer):
|
||||
|
||||
mux: mux-controller@50 {
|
||||
compatible = "adi,adg792a";
|
||||
reg = <0x50>;
|
||||
#mux-control-cells = <1>;
|
||||
|
||||
idle-state = <MUX_IDLE_DISCONNECT MUX_IDLE_AS_IS 2>;
|
||||
};
|
||||
|
||||
select:
|
||||
anyOf:
|
||||
- properties:
|
||||
$nodename:
|
||||
pattern: '^mux-controller'
|
||||
- required:
|
||||
- '#mux-control-cells'
|
||||
- required:
|
||||
- '#mux-state-cells'
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: '^mux-controller(@.*|-[0-9a-f]+)?$'
|
||||
|
||||
'#mux-control-cells':
|
||||
enum: [ 0, 1 ]
|
||||
|
||||
'#mux-state-cells':
|
||||
enum: [ 1, 2 ]
|
||||
|
||||
idle-state:
|
||||
$ref: /schemas/types.yaml#/definitions/int32
|
||||
minimum: -2
|
||||
|
||||
idle-states:
|
||||
description: |
|
||||
Mux controller nodes can specify the state the mux should have when it is
|
||||
idle. If the idle-state is not present, the mux controller is typically
|
||||
left as is when it is idle. For multiplexer chips that expose several mux
|
||||
controllers, the idle-state property is an array with one idle state for
|
||||
each mux controller.
|
||||
|
||||
The special value (-1) may be used to indicate that the mux should be left
|
||||
as is when it is idle. This is the default, but can still be useful for
|
||||
mux controller chips with more than one mux controller, particularly when
|
||||
there is a need to "step past" a mux controller and set some other idle
|
||||
state for a mux controller with a higher index.
|
||||
|
||||
Some mux controllers have the ability to disconnect the input/output of the
|
||||
multiplexer. Using this disconnected high-impedance state as the idle state
|
||||
is indicated with idle state (-2).
|
||||
$ref: /schemas/types.yaml#/definitions/int32-array
|
||||
items:
|
||||
minimum: -2
|
||||
|
||||
additionalProperties: true
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/* One consumer of a 2-way mux controller (one GPIO-line) */
|
||||
mux: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-control-cells = <0>;
|
||||
|
||||
mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 0>;
|
||||
io-channel-names = "parent";
|
||||
|
||||
mux-controls = <&mux>;
|
||||
mux-control-names = "adc";
|
||||
|
||||
channels = "sync", "in";
|
||||
};
|
||||
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/*
|
||||
* Two consumers (one for an ADC line and one for an i2c bus) of
|
||||
* parallel 4-way multiplexers controlled by the same two GPIO-lines.
|
||||
*/
|
||||
mux2: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-control-cells = <0>;
|
||||
|
||||
mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>,
|
||||
<&pioA 1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
adc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 0>;
|
||||
io-channel-names = "parent";
|
||||
|
||||
mux-controls = <&mux2>;
|
||||
|
||||
channels = "sync-1", "in", "out", "sync-2";
|
||||
};
|
||||
|
||||
i2c-mux {
|
||||
compatible = "i2c-mux";
|
||||
i2c-parent = <&i2c1>;
|
||||
|
||||
mux-controls = <&mux2>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
i2c@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ssd1307: oled@3c {
|
||||
reg = <0x3c>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@3 {
|
||||
reg = <3>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pca9555: pca9555@20 {
|
||||
reg = <0x20>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
mux1: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-state-cells = <1>;
|
||||
mux-gpios = <&exp_som 2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
transceiver4: can-phy4 {
|
||||
compatible = "ti,tcan1042";
|
||||
#phy-cells = <0>;
|
||||
max-bitrate = <5000000>;
|
||||
standby-gpios = <&exp_som 7 GPIO_ACTIVE_HIGH>;
|
||||
mux-states = <&mux1 1>;
|
||||
};
|
||||
...
|
146
bindings/mux/reg-mux.yaml
Normal file
146
bindings/mux/reg-mux.yaml
Normal file
@@ -0,0 +1,146 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mux/reg-mux.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Generic register bitfield-based multiplexer controller bindings
|
||||
|
||||
maintainers:
|
||||
- Peter Rosin <peda@axentia.se>
|
||||
|
||||
description: |+
|
||||
Define register bitfields to be used to control multiplexers. The parent
|
||||
device tree node must be a device node to provide register r/w access.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- reg-mux # parent device of mux controller is not syscon device
|
||||
- mmio-mux # parent device of mux controller is syscon device
|
||||
|
||||
reg: true
|
||||
|
||||
'#mux-control-cells':
|
||||
const: 1
|
||||
|
||||
mux-reg-masks:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-matrix
|
||||
items:
|
||||
items:
|
||||
- description: register offset
|
||||
- description: pre-shifted bitfield mask
|
||||
description: Each entry pair describes a single mux control.
|
||||
|
||||
idle-states: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- mux-reg-masks
|
||||
- '#mux-control-cells'
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
/* The parent device of mux controller is not a syscon device. */
|
||||
|
||||
#include <dt-bindings/mux/mux.h>
|
||||
|
||||
mux-controller {
|
||||
compatible = "reg-mux";
|
||||
#mux-control-cells = <1>;
|
||||
mux-reg-masks =
|
||||
<0x54 0xf8>, /* 0: reg 0x54, bits 7:3 */
|
||||
<0x54 0x07>; /* 1: reg 0x54, bits 2:0 */
|
||||
};
|
||||
|
||||
mdio-mux-1 {
|
||||
compatible = "mdio-mux-multiplexer";
|
||||
mux-controls = <&mux1 0>;
|
||||
mdio-parent-bus = <&emdio1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
mdio@0 {
|
||||
reg = <0x0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
mdio@8 {
|
||||
reg = <0x8>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
mdio-mux-2 {
|
||||
compatible = "mdio-mux-multiplexer";
|
||||
mux-controls = <&mux1 1>;
|
||||
mdio-parent-bus = <&emdio2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
mdio@0 {
|
||||
reg = <0x0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
mdio@1 {
|
||||
reg = <0x1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
- |
|
||||
/* The parent device of mux controller is syscon device. */
|
||||
|
||||
#include <dt-bindings/mux/mux.h>
|
||||
syscon@1000 {
|
||||
reg = <0x1000 0x100>;
|
||||
|
||||
mux2: mux-controller {
|
||||
compatible = "mmio-mux";
|
||||
#mux-control-cells = <1>;
|
||||
|
||||
mux-reg-masks =
|
||||
<0x3 0x30>, /* 0: reg 0x3, bits 5:4 */
|
||||
<0x3 0x40>; /* 1: reg 0x3, bit 6 */
|
||||
idle-states = <MUX_IDLE_AS_IS>, <0>;
|
||||
};
|
||||
};
|
||||
|
||||
video-mux {
|
||||
compatible = "video-mux";
|
||||
mux-controls = <&mux2 0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
/* inputs 0..3 */
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
};
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
/* output */
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
};
|
||||
...
|
Reference in New Issue
Block a user