Skip to content

Commit 4a875cf

Browse files
FaroukBouabidAndi Shyti
authored andcommitted
dt-bindings: i2c: add support for tsd,mule-i2c-mux
Theobroma Systems Mule is an MCU that emulates a set of I2C devices, among which devices that are reachable through an I2C-mux. The devices on the mux can be selected by writing the appropriate device number to an I2C config register. Reviewed-by: Rob Herring (Arm) <[email protected]> Acked-by: Wolfram Sang <[email protected]> Signed-off-by: Farouk Bouabid <[email protected]> Reviewed-by: Guenter Roeck <[email protected]> Reviewed-by: Wolfram Sang <[email protected]> Signed-off-by: Andi Shyti <[email protected]>
1 parent 8f65c45 commit 4a875cf

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/i2c/tsd,mule-i2c-mux.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Theobroma Systems Mule I2C multiplexer
8+
9+
maintainers:
10+
- Farouk Bouabid <[email protected]>
11+
- Quentin Schulz <[email protected]>
12+
13+
description: |
14+
Theobroma Systems Mule is an MCU that emulates a set of I2C devices, among
15+
which devices that are reachable through an I2C-mux. The devices on the mux
16+
can be selected by writing the appropriate device number to an I2C config
17+
register.
18+
19+
20+
+--------------------------------------------------+
21+
| Mule |
22+
0x18| +---------------+ |
23+
-------->|Config register|----+ |
24+
| +---------------+ | |
25+
| V_ |
26+
| | \ +--------+ |
27+
| | \-------->| dev #0 | |
28+
| | | +--------+ |
29+
0x6f| | M |-------->| dev #1 | |
30+
---------------------------->| U | +--------+ |
31+
| | X |-------->| dev #2 | |
32+
| | | +--------+ |
33+
| | /-------->| dev #3 | |
34+
| |__/ +--------+ |
35+
+--------------------------------------------------+
36+
37+
38+
allOf:
39+
- $ref: /schemas/i2c/i2c-mux.yaml#
40+
41+
properties:
42+
compatible:
43+
const: tsd,mule-i2c-mux
44+
45+
required:
46+
- compatible
47+
48+
unevaluatedProperties: false
49+
50+
examples:
51+
- |
52+
i2c-mux {
53+
compatible = "tsd,mule-i2c-mux";
54+
#address-cells = <1>;
55+
#size-cells = <0>;
56+
57+
i2c@0 {
58+
reg = <0x0>;
59+
#address-cells = <1>;
60+
#size-cells = <0>;
61+
62+
rtc@6f {
63+
compatible = "isil,isl1208";
64+
reg = <0x6f>;
65+
};
66+
};
67+
};
68+
...
69+

0 commit comments

Comments
 (0)