13a379bbcSBoris Brezillon# SPDX-License-Identifier: GPL-2.0 23a379bbcSBoris Brezillon 33a379bbcSBoris Brezillonmenuconfig I3C 43a379bbcSBoris Brezillon tristate "I3C support" 53a379bbcSBoris Brezillon select I2C 63a379bbcSBoris Brezillon help 73a379bbcSBoris Brezillon I3C is a serial protocol standardized by the MIPI alliance. 83a379bbcSBoris Brezillon 93a379bbcSBoris Brezillon It's supposed to be backward compatible with I2C while providing 103a379bbcSBoris Brezillon support for high speed transfers and native interrupt support 113a379bbcSBoris Brezillon without the need for extra pins. 123a379bbcSBoris Brezillon 133a379bbcSBoris Brezillon The I3C protocol also standardizes the slave device types and is 143a379bbcSBoris Brezillon mainly designed to communicate with sensors. 153a379bbcSBoris Brezillon 163a379bbcSBoris Brezillon If you want I3C support, you should say Y here and also to the 173a379bbcSBoris Brezillon specific driver for your bus adapter(s) below. 183a379bbcSBoris Brezillon 193a379bbcSBoris Brezillon This I3C support can also be built as a module. If so, the module 203a379bbcSBoris Brezillon will be called i3c. 213a379bbcSBoris Brezillon 223a379bbcSBoris Brezillonif I3C 233a379bbcSBoris Brezillonsource "drivers/i3c/master/Kconfig" 243a379bbcSBoris Brezillonendif # I3C 25*663eb876SArnd Bergmann 26*663eb876SArnd Bergmannconfig I3C_OR_I2C 27*663eb876SArnd Bergmann tristate 28*663eb876SArnd Bergmann default m if I3C=m 29*663eb876SArnd Bergmann default I2C 30*663eb876SArnd Bergmann help 31*663eb876SArnd Bergmann Device drivers using module_i3c_i2c_driver() can use either 32*663eb876SArnd Bergmann i2c or i3c hosts, but cannot be built-in for the kernel when 33*663eb876SArnd Bergmann CONFIG_I3C=m. 34*663eb876SArnd Bergmann 35*663eb876SArnd Bergmann Add 'depends on I2C_OR_I3C' in Kconfig for those drivers to 36*663eb876SArnd Bergmann get the correct dependencies. 37