As we have seen in the preceding sections, in order to configure I2C devices, there are essentially two steps:
- Define and register the I2C driver
- Define and register the I2C devices
I2C devices belong to non-memory mapped devices family in the DT, and I2C bus is an addressable bus (by addressable, I mean you can address a specific device on the bus). In this, the reg property in the device node represents the device address on the bus.
I2C device nodes are all children of the bus node they sit on. Each device is assigned only an address. There is no length or range involved. Standard properties you need to declare for I2C devices are reg, which represents the address of the device on the bus, and the compatible string, which is used to match the device with a driver. For more information on addressing, you can refer to Chapter 6, The Concept of Device...