drivers/i3c/Kconfig
Source file repositories/reference/linux-study-clean/drivers/i3c/Kconfig
File Facts
- System
- Linux kernel
- Corpus path
drivers/i3c/Kconfig- Extension
[no extension]- Size
- 1019 bytes
- Lines
- 37
- Domain
- Driver Families
- Bucket
- drivers/i3c
- Inferred role
- Driver Families: build/configuration rule
- Status
- atlas-only
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
# SPDX-License-Identifier: GPL-2.0
menuconfig I3C
tristate "I3C support"
select I2C
help
I3C is a serial protocol standardized by the MIPI alliance.
It's supposed to be backward compatible with I2C while providing
support for high speed transfers and native interrupt support
without the need for extra pins.
The I3C protocol also standardizes the slave device types and is
mainly designed to communicate with sensors.
If you want I3C support, you should say Y here and also to the
specific driver for your bus adapter(s) below.
This I3C support can also be built as a module. If so, the module
will be called i3c.
if I3C
source "drivers/i3c/master/Kconfig"
endif # I3C
config I3C_OR_I2C
tristate
default m if I3C=m
default I2C
help
Device drivers using module_i3c_i2c_driver() can use either
i2c or i3c hosts, but cannot be built-in for the kernel when
CONFIG_I3C=m.
Add 'depends on I2C_OR_I3C' in Kconfig for those drivers to
get the correct dependencies.
Annotation
- Atlas domain: Driver Families / drivers/i3c.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.