mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 08:28:51 +09:00
38 lines
757 B
Plaintext
38 lines
757 B
Plaintext
![]() |
I2C gpio device binding
|
||
|
=======================
|
||
|
|
||
|
Driver:
|
||
|
- drivers/i2c/i2c-gpio.c
|
||
|
|
||
|
Software i2c device-tree node properties:
|
||
|
Required:
|
||
|
* #address-cells = <1>;
|
||
|
* #size-cells = <0>;
|
||
|
* compatible = "i2c-gpio";
|
||
|
* gpios = <sda ...>, <scl ...>;
|
||
|
|
||
|
Optional:
|
||
|
* i2c-gpio,delay-us = <5>;
|
||
|
The resulting transfer speed can be adjusted by setting the delay[us]
|
||
|
between gpio-toggle operations. Speed [Hz] = 1000000 / 4 * udelay[us],
|
||
|
It not defined, then default is 5us (~50KHz).
|
||
|
|
||
|
Example:
|
||
|
|
||
|
i2c-gpio@1 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
compatible = "i2c-gpio";
|
||
|
gpios = <&gpd1 0 GPIO_ACTIVE_HIGH>, /* SDA */
|
||
|
<&gpd1 1 GPIO_ACTIVE_HIGH>; /* CLK */
|
||
|
|
||
|
i2c-gpio,delay-us = <5>;
|
||
|
|
||
|
some_device@5 {
|
||
|
compatible = "some_device";
|
||
|
reg = <0x5>;
|
||
|
...
|
||
|
};
|
||
|
};
|