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