xref: /freebsd/sys/contrib/device-tree/Bindings/i2c/i2c-gate.yaml (revision d5b0e70f7e04d971691517ce1304d86a1e367e2e)
15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
25def4c47SEmmanuel Vadot%YAML 1.2
35def4c47SEmmanuel Vadot---
45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/i2c/i2c-gate.yaml#
55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
65def4c47SEmmanuel Vadot
75def4c47SEmmanuel Vadottitle: Common i2c gate properties
85def4c47SEmmanuel Vadot
95def4c47SEmmanuel Vadotmaintainers:
105def4c47SEmmanuel Vadot  - Peter Rosin <peda@axentia.se>
115def4c47SEmmanuel Vadot
125def4c47SEmmanuel Vadotdescription: |
135def4c47SEmmanuel Vadot  An i2c gate is useful to e.g. reduce the digital noise for RF tuners connected
145def4c47SEmmanuel Vadot  to the i2c bus. Gates are similar to arbitrators in that you need to perform
155def4c47SEmmanuel Vadot  some kind of operation to access the i2c bus past the arbitrator/gate, but
165def4c47SEmmanuel Vadot  there are no competing masters to consider for gates and therefore there is
175def4c47SEmmanuel Vadot  no arbitration happening for gates.
185def4c47SEmmanuel Vadot
195def4c47SEmmanuel VadotallOf:
205def4c47SEmmanuel Vadot  - $ref: /schemas/i2c/i2c-controller.yaml
215def4c47SEmmanuel Vadot
225def4c47SEmmanuel Vadotproperties:
235def4c47SEmmanuel Vadot  $nodename:
245def4c47SEmmanuel Vadot    const: i2c-gate
255def4c47SEmmanuel Vadot
265def4c47SEmmanuel VadotadditionalProperties: true
275def4c47SEmmanuel Vadot
285def4c47SEmmanuel Vadotexamples:
295def4c47SEmmanuel Vadot  - |
305def4c47SEmmanuel Vadot    i2c-gate {
315def4c47SEmmanuel Vadot        #address-cells = <1>;
325def4c47SEmmanuel Vadot        #size-cells = <0>;
335def4c47SEmmanuel Vadot        ak8975@c {
34*e67e8565SEmmanuel Vadot            compatible = "asahi-kasei,ak8975";
355def4c47SEmmanuel Vadot            reg = <0x0c>;
365def4c47SEmmanuel Vadot        };
375def4c47SEmmanuel Vadot    };
385def4c47SEmmanuel Vadot...
39