kconfig: allow compiling out QEMU device tree code per target

Introduce a new Kconfig symbol, CONFIG_DEVICE_TREE, that specifies whether
to include the common device tree code in system/device_tree.c and to
link to libfdt.  For now, include it unconditionally if libfdt is
available.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2024-05-07 14:13:46 +02:00
parent 7a6f3343b6
commit 1935b7ead1
10 changed files with 45 additions and 18 deletions

View file

@ -4,8 +4,14 @@ config EMPTY_SLOT
config PTIMER
bool
config DEVICE_TREE
bool
# fail the build if libfdt not found
depends on FDT
config FITLOADER
bool
depends on DEVICE_TREE
config GENERIC_LOADER
bool
@ -14,13 +20,14 @@ config GENERIC_LOADER
config GUEST_LOADER
bool
default y
depends on TCG
depends on TCG && DEVICE_TREE
config OR_IRQ
bool
config PLATFORM_BUS
bool
depends on DEVICE_TREE
config REGISTER
bool

View file

@ -16,7 +16,7 @@ common_ss.add(files('cpu-common.c'))
common_ss.add(files('machine-smp.c'))
system_ss.add(when: 'CONFIG_FITLOADER', if_true: files('loader-fit.c'))
system_ss.add(when: 'CONFIG_GENERIC_LOADER', if_true: files('generic-loader.c'))
system_ss.add(when: ['CONFIG_GUEST_LOADER', fdt], if_true: files('guest-loader.c'))
system_ss.add(when: 'CONFIG_GUEST_LOADER', if_true: files('guest-loader.c'))
system_ss.add(when: 'CONFIG_OR_IRQ', if_true: files('or-irq.c'))
system_ss.add(when: 'CONFIG_PLATFORM_BUS', if_true: files('platform-bus.c'))
system_ss.add(when: 'CONFIG_PTIMER', if_true: files('ptimer.c'))