Lines Matching full:i3c

3 Improved Inter-Integrated Circuit (I3C) Bus
6 I3C (Improved Inter-Integrated Circuit) is a two-signal shared
12 Currently, the API is based on `I3C Specification`_ version 1.1.1.
20 I3C Controller API
23 Zephyr's I3C controller API is used when an I3C controller controls
25 This is the most common mode, used to interact with I3C target
28 Due to the nature of the I3C, there are devices on the bus where
30 dynamic address assignment needs to be carried out by the I3C
34 for both I3C and I\ :sup:`2`\ C devices:
44 nodes under the I3C controller.
46 Here is a list of generic steps for initializing the I3C
47 controller and the I3C bus inside the device driver
50 #. Initialize the data structure of the I3C controller device
94 the relevant fields in the I3C target device descriptor
102 Provisioned ID to the list of registered I3C devices.
115 * Note that the I3C API requires device descriptor to
171 Here is an example for defining a I3C controller in device tree:
175 i3c0: i3c@10000 {
176 compatible = "vendor,i3c";
184 pinctrl-0 = < &pinmux-i3c >;
189 i3c-scl-hz = < 12000000 >;
193 i3c-dev0: i3c-dev0@420000ABCD12345678 {
194 compatible = "vendor,i3c-dev";
210 I3C Devices
213 For I3C devices, the ``reg`` property has 3 elements:
242 working under I3C bus, the device node can be described as
243 a child of the I3C controller. If the device driver is written to
246 Otherwise, the ``reg`` property, similar to I3C devices,
266 * I3C device has a 50 ns spike filter where it is not
276 * I3C device does not have a 50 ns spike filter and
285 Similar to I3C devices, the unit-address must match the ``reg``
289 Device Drivers for I3C Devices
292 All of the transfer functions of I3C controller API require
294 This struct contains runtime information about a I3C device,
296 the device driver of a I3C device should grab a pointer to
303 I\ :sup:`2`\ C Devices under I3C Bus
306 Since I3C is backward compatible with I\ :sup:`2`\ C, the I3C controller
310 However, since the I3C controller API works on device descriptors,
316 I2C device support via the I3C controller API. During device
322 the I2C device must be declared according to I3C standard:
325 interface I\ :sup:`2`\ C devices on the I3C bus where the associated
331 i3c0: i3c@10000 {
332 <... I3C controller related properties ...>
333 <... Nodes of I3C devices, if any ...>
363 .. _I3C Specification: https://www.mipi.org/specifications/i3c-sensor-specification