Lines Matching refs:I2C

1 How to instantiate I2C devices
4 Unlike PCI or USB devices, I2C devices are not enumerated at the hardware
6 I2C bus segment, and what address these devices are using. For this
7 reason, the kernel code must instantiate I2C devices explicitly. There are
11 Method 1a: Declare the I2C devices by bus number
14 This method is appropriate when the I2C bus is a system bus as is the case
15 for many embedded systems. On such systems, each I2C bus has a number
16 which is known in advance. It is thus possible to pre-declare the I2C
45 The above code declares 3 devices on I2C bus 1, including their respective
46 addresses and custom data needed by their drivers. When the I2C bus in
47 question is registered, the I2C devices will be instantiated automatically
50 The devices will be automatically unbound and destroyed when the I2C bus
54 Method 1b: Declare the I2C devices via devicetree
57 This method has the same implications as method 1a. The declaration of I2C
84 Method 1c: Declare the I2C devices via ACPI
87 ACPI can also describe I2C devices. There is special documentation for this
94 This method is appropriate when a larger device uses an I2C bus for
97 main chip by the means of an I2C bus. You won't know the number of the I2C
99 you can instantiate your I2C devices explicitly. This is done by filling
117 The above code instantiates 1 I2C device on the I2C bus which is on the
120 A variant of this is when you don't know for sure if an I2C device is
147 The above code instantiates up to 1 I2C device on the I2C bus which is on
152 The driver which instantiated the I2C device is responsible for destroying
158 Method 3: Probe an I2C bus for certain devices
161 Sometimes you do not have enough information about an I2C device, not even
170 In that case, I2C devices are neither declared nor instantiated
172 drivers are loaded, and if any is found, an I2C device will be
175 * The I2C device driver must implement the detect() method, which
184 I2C devices instantiated as a result of such a successful probe will be
186 or when the underlying I2C bus is itself destroyed, whichever happens
192 * Probing is only one way to instantiate I2C devices now, while it was the
196 * I2C buses must now explicitly say which I2C driver classes can probe
197 them (by the means of the class bitfield), while all I2C buses were
210 In general, the kernel should know which I2C devices are connected and
213 interface is made of 2 attribute files which are created in every I2C bus
216 respectively delete, an I2C device.
218 File new_device takes 2 parameters: the name of the I2C device (a string)
219 and the address of the I2C device (a number, typically expressed in
222 File delete_device takes a single parameter: the address of the I2C
223 device. As no two devices can live at the same address on a given I2C
232 * The I2C driver usually detects devices (method 3 above) but the bus
235 * The I2C driver usually detects devices, but your device lives at an
237 * The I2C driver usually detects devices, but your device is not detected,
240 * You are developing a driver on a test board, where you soldered the I2C
243 This interface is a replacement for the force_* module parameters some I2C