14a875cf1SFarouk Bouabid# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 24a875cf1SFarouk Bouabid%YAML 1.2 34a875cf1SFarouk Bouabid--- 44a875cf1SFarouk Bouabid$id: http://devicetree.org/schemas/i2c/tsd,mule-i2c-mux.yaml# 54a875cf1SFarouk Bouabid$schema: http://devicetree.org/meta-schemas/core.yaml# 64a875cf1SFarouk Bouabid 74a875cf1SFarouk Bouabidtitle: Theobroma Systems Mule I2C multiplexer 84a875cf1SFarouk Bouabid 94a875cf1SFarouk Bouabidmaintainers: 104a875cf1SFarouk Bouabid - Farouk Bouabid <farouk.bouabid@cherry.de> 114a875cf1SFarouk Bouabid - Quentin Schulz <quentin.schulz@cherry.de> 124a875cf1SFarouk Bouabid 134a875cf1SFarouk Bouabiddescription: | 144a875cf1SFarouk Bouabid Theobroma Systems Mule is an MCU that emulates a set of I2C devices, among 154a875cf1SFarouk Bouabid which devices that are reachable through an I2C-mux. The devices on the mux 164a875cf1SFarouk Bouabid can be selected by writing the appropriate device number to an I2C config 174a875cf1SFarouk Bouabid register. 184a875cf1SFarouk Bouabid 194a875cf1SFarouk Bouabid 204a875cf1SFarouk Bouabid +--------------------------------------------------+ 214a875cf1SFarouk Bouabid | Mule | 224a875cf1SFarouk Bouabid 0x18| +---------------+ | 234a875cf1SFarouk Bouabid -------->|Config register|----+ | 244a875cf1SFarouk Bouabid | +---------------+ | | 254a875cf1SFarouk Bouabid | V_ | 264a875cf1SFarouk Bouabid | | \ +--------+ | 274a875cf1SFarouk Bouabid | | \-------->| dev #0 | | 284a875cf1SFarouk Bouabid | | | +--------+ | 294a875cf1SFarouk Bouabid 0x6f| | M |-------->| dev #1 | | 304a875cf1SFarouk Bouabid ---------------------------->| U | +--------+ | 314a875cf1SFarouk Bouabid | | X |-------->| dev #2 | | 324a875cf1SFarouk Bouabid | | | +--------+ | 334a875cf1SFarouk Bouabid | | /-------->| dev #3 | | 344a875cf1SFarouk Bouabid | |__/ +--------+ | 354a875cf1SFarouk Bouabid +--------------------------------------------------+ 364a875cf1SFarouk Bouabid 374a875cf1SFarouk Bouabid 384a875cf1SFarouk BouabidallOf: 394a875cf1SFarouk Bouabid - $ref: /schemas/i2c/i2c-mux.yaml# 404a875cf1SFarouk Bouabid 414a875cf1SFarouk Bouabidproperties: 424a875cf1SFarouk Bouabid compatible: 434a875cf1SFarouk Bouabid const: tsd,mule-i2c-mux 444a875cf1SFarouk Bouabid 454a875cf1SFarouk Bouabidrequired: 464a875cf1SFarouk Bouabid - compatible 474a875cf1SFarouk Bouabid 484a875cf1SFarouk BouabidunevaluatedProperties: false 494a875cf1SFarouk Bouabid 504a875cf1SFarouk Bouabidexamples: 514a875cf1SFarouk Bouabid - | 524a875cf1SFarouk Bouabid i2c-mux { 534a875cf1SFarouk Bouabid compatible = "tsd,mule-i2c-mux"; 544a875cf1SFarouk Bouabid #address-cells = <1>; 554a875cf1SFarouk Bouabid #size-cells = <0>; 564a875cf1SFarouk Bouabid 574a875cf1SFarouk Bouabid i2c@0 { 584a875cf1SFarouk Bouabid reg = <0x0>; 594a875cf1SFarouk Bouabid #address-cells = <1>; 604a875cf1SFarouk Bouabid #size-cells = <0>; 614a875cf1SFarouk Bouabid 624a875cf1SFarouk Bouabid rtc@6f { 634a875cf1SFarouk Bouabid compatible = "isil,isl1208"; 644a875cf1SFarouk Bouabid reg = <0x6f>; 654a875cf1SFarouk Bouabid }; 664a875cf1SFarouk Bouabid }; 674a875cf1SFarouk Bouabid }; 684a875cf1SFarouk Bouabid... 694a875cf1SFarouk Bouabid 70