Lines Matching +full:i2c +full:- +full:retry +full:- +full:count

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
23 * It is nonstandard (not using standard I2C multimaster)
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
47 6. Go back to 1 (until retry time has expired).
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:
75 wait-free-us:
80 wait-retry-us:
85 i2c-arb:
87 $ref: /schemas/i2c/i2c-controller.yaml
90 I2C arbitration bus node.
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;