Lines Matching +full:master +full:- +full:side

1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/i2c/i2c-arb-gpio-challenge.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO-based I2C Arbitration Using a Challenge & Response Mechanism
10 - Doug Anderson <dianders@chromium.org>
11 - Peter Rosin <peda@axentia.se>
15 the master of an I2C bus in a multimaster situation.
18 standard I2C multi-master rules. Using GPIOs is generally useful in the case
25 problems (hard to tell if i2c issues were caused by one master, another,
30 others can see. These are all active low with pull-ups enabled. We'll
36 sure that the other side doesn't want it also. A detailed explanation is
51 const: i2c-arb-gpio-challenge
53 i2c-parent:
56 The I2C bus that this multiplexer's master-side port is connected to.
58 our-claim-gpios:
63 slew-delay-us:
68 their-claim-gpios:
73 implementations may only support a single other master.
75 wait-free-us:
80 wait-retry-us:
85 i2c-arb:
87 $ref: /schemas/i2c/i2c-controller.yaml
93 - compatible
94 - i2c-arb
95 - our-claim-gpios
96 - their-claim-gpios
101 - |
102 #include <dt-bindings/gpio/gpio.h>
103 #include <dt-bindings/interrupt-controller/irq.h>
105 i2c-arbitrator {
106 compatible = "i2c-arb-gpio-challenge";
107 i2c-parent = <&i2c_4>;
109 our-claim-gpios = <&gpf0 3 GPIO_ACTIVE_LOW>;
110 their-claim-gpios = <&gpe0 4 GPIO_ACTIVE_LOW>;
111 slew-delay-us = <10>;
112 wait-retry-us = <3000>;
113 wait-free-us = <50000>;
115 i2c-arb {
116 #address-cells = <1>;
117 #size-cells = <0>;
119 sbs-battery@b {
120 compatible = "sbs,sbs-battery";
122 sbs,poll-retry-count = <1>;
125 embedded-controller@1e {
126 compatible = "google,cros-ec-i2c";
129 interrupt-parent = <&gpx1>;
130 pinctrl-names = "default";
131 pinctrl-0 = <&ec_irq>;
132 wakeup-source;