diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2022-02-08 15:59:10 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2022-02-21 13:30:20 +0000 |
commit | b5bf5a53d1e02eb0c7fdc6271e10ebd0eda79813 (patch) | |
tree | abe3652f5e015ed5ada772d544ad825bfc588752 /docs | |
parent | 92d6528dbb20c6aec4022dfd63c7ffee44f19f77 (diff) | |
download | qemu-b5bf5a53d1e02eb0c7fdc6271e10ebd0eda79813.zip qemu-b5bf5a53d1e02eb0c7fdc6271e10ebd0eda79813.tar.gz qemu-b5bf5a53d1e02eb0c7fdc6271e10ebd0eda79813.tar.bz2 |
Kconfig: Add I2C_DEVICES device group
Currently there is no way for a board model's Kconfig stanza to
say "I have an i2c bus which the user can plug an i2c device into,
build all the free-standing i2c devices". The Kconfig mechanism
for this is the "device group". Add an I2C_DEVICES group along
the same lines as the existing PCI_DEVICES. Simple free-standing
i2c devices which a user might plausibly want to be able to
plug in on the QEMU commandline should have
default y if I2C_DEVICES
and board models which have an i2c bus that is user-accessible
should use
imply I2C_DEVICES
to cause those pluggable devices to be built.
In this commit we mark only a fairly conservative set of i2c devices
as belonging to the I2C_DEVICES group: the simple sensors and RTCs
(not including PMBus devices or devices which need GPIO lines to be
connected).
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Hao Wu <wuhaotsh@google.com>
Message-id: 20220208155911.3408455-2-peter.maydell@linaro.org
Diffstat (limited to 'docs')
-rw-r--r-- | docs/devel/kconfig.rst | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/docs/devel/kconfig.rst b/docs/devel/kconfig.rst index a1cdbec..aa5042f 100644 --- a/docs/devel/kconfig.rst +++ b/docs/devel/kconfig.rst @@ -192,11 +192,15 @@ declares its dependencies in different ways: no directive and are not used in the Makefile either; they only appear as conditions for ``default y`` directives. - QEMU currently has two device groups, ``PCI_DEVICES`` and - ``TEST_DEVICES``. PCI devices usually have a ``default y if + QEMU currently has three device groups, ``PCI_DEVICES``, ``I2C_DEVICES``, + and ``TEST_DEVICES``. PCI devices usually have a ``default y if PCI_DEVICES`` directive rather than just ``default y``. This lets some boards (notably s390) easily support a subset of PCI devices, for example only VFIO (passthrough) and virtio-pci devices. + ``I2C_DEVICES`` is similar to ``PCI_DEVICES``. It contains i2c devices + that users might reasonably want to plug in to an i2c bus on any + board (and not ones which are very board-specific or that need + to be wired up in a way that can't be done on the command line). ``TEST_DEVICES`` instead is used for devices that are rarely used on production virtual machines, but provide useful hooks to test QEMU or KVM. |