xref: /linux/drivers/i3c/Kconfig (revision 9a48d4a130871bea7a7ae2d83cda0326b1922d3e)
1# SPDX-License-Identifier: GPL-2.0
2
3menuconfig I3C
4	tristate "I3C support"
5	select I2C
6	help
7	  I3C is a serial protocol standardized by the MIPI alliance.
8
9	  It's supposed to be backward compatible with I2C while providing
10	  support for high speed transfers and native interrupt support
11	  without the need for extra pins.
12
13	  The I3C protocol also standardizes the slave device types and is
14	  mainly designed to communicate with sensors.
15
16	  If you want I3C support, you should say Y here and also to the
17	  specific driver for your bus adapter(s) below.
18
19	  This I3C support can also be built as a module.  If so, the module
20	  will be called i3c.
21
22if I3C
23source "drivers/i3c/master/Kconfig"
24endif # I3C
25
26config I3C_OR_I2C
27	tristate
28	default m if I3C=m
29	default I2C
30	help
31	  Device drivers using module_i3c_i2c_driver() can use either
32	  i2c or i3c hosts, but cannot be built-in for the kernel when
33	  CONFIG_I3C=m.
34
35	  Add 'depends on I2C_OR_I3C' in Kconfig for those drivers to
36	  get the correct dependencies.
37