qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 00/10] target: Provide target-specific Kconfig


From: Claudio Fontana
Subject: Re: [PATCH 00/10] target: Provide target-specific Kconfig
Date: Wed, 10 Mar 2021 14:30:13 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0

Hi all, where are we with this series?

I am trying to figure out how to apply the whole thing,
in order to build only compatible ARM boards and devices for KVM-only builds.

Ie, I would like to combine this with:

"arm cleanup experiment for kvm-only build"

https://lists.gnu.org/archive/html/qemu-devel/2021-03/msg02790.html

My series there gets us to a buildable and working KVM-only ARM target, with 
all make check tests passing.

However, in order to be able to remove more code, remove stubs etc,
I found the presence of incompatible ARM boards and devices as blocking 
additional cleanups.

Therefore, in order to proceed with additional cleanup in arm, and adding the 
accel-specific extensions to the cpu class,
I see being able to disable incompatible boards for KVM as necessary.

IIUC there are:

* This series "target: Provide target-specific Kconfig"
* Support disabling TCG on ARM ?
* Support disabling TCG on ARM (part 2) ?

What is the current state here?

Thanks,

Claudio


On 1/31/21 12:13 PM, Philippe Mathieu-Daudé wrote:
> Hi,
> 
> This series add a Kconfig file to each target, allowing
> to select target-specific features there, instead of from
> the hardware Kconfig.
> 
> This simplifies managing multi-arch features such semihosting.
> 
> Series organization:
> 
> 1/ Some targets use the architecture symbol to select boards and
> peripherals (SH4 and LM32), we need to clean that first.
> 
> 2/ Introduce empty target Kconfig, update meson.
> 
> 3/ Move architectural features out of hardware:
>    - x86 SEV
>    - ARM v7m
>    - generic semihosting
> 
> [following only important to patchew, unrelated to this series]
> Based-on: <20210131105918.228787-1-f4bug@amsat.org>
> 
> Philippe Mathieu-Daudé (10):
>   hw/sh4/Kconfig: Rename CONFIG_SH4 -> CONFIG_SH4_PERIPHERALS
>   hw/lm32/Kconfig: Introduce CONFIG_LM32_EVR for lm32-evr/uclinux boards
>   hw/sh4/Kconfig: Rename CONFIG_LM32 -> CONFIG_LM32_PERIPHERALS
>   hw/lm32/Kconfig: Have MILKYMIST select LM32_PERIPHERALS
>   meson: Introduce target-specific Kconfig
>   target/i386: Move SEV feature to target Kconfig
>   target/arm: Move V7M feature to target Kconfig
>   default-configs: Remove unnecessary SEMIHOSTING selection
>   target: Move ARM_COMPATIBLE_SEMIHOSTING feature to target Kconfig
>   target: Move SEMIHOSTING feature to target Kconfig
> 
>  default-configs/devices/arm-softmmu.mak       |  2 --
>  default-configs/devices/lm32-softmmu.mak      |  4 +---
>  default-configs/devices/m68k-softmmu.mak      |  2 --
>  .../devices/mips-softmmu-common.mak           |  3 ---
>  default-configs/devices/nios2-softmmu.mak     |  2 --
>  default-configs/devices/riscv32-softmmu.mak   |  2 --
>  default-configs/devices/riscv64-softmmu.mak   |  2 --
>  default-configs/devices/unicore32-softmmu.mak |  1 -
>  default-configs/devices/xtensa-softmmu.mak    |  2 --
>  meson.build                                   |  3 ++-
>  Kconfig                                       |  1 +
>  hw/arm/Kconfig                                |  4 ----
>  hw/block/meson.build                          |  2 +-
>  hw/char/meson.build                           |  6 ++---
>  hw/i386/Kconfig                               |  4 ----
>  hw/intc/meson.build                           |  4 ++--
>  hw/lm32/Kconfig                               | 10 +++++---
>  hw/lm32/meson.build                           |  2 +-
>  hw/sh4/Kconfig                                |  6 ++---
>  hw/timer/meson.build                          |  4 ++--
>  target/Kconfig                                | 23 +++++++++++++++++++
>  target/alpha/Kconfig                          |  2 ++
>  target/arm/Kconfig                            | 11 +++++++++
>  target/avr/Kconfig                            |  2 ++
>  target/cris/Kconfig                           |  2 ++
>  target/hppa/Kconfig                           |  2 ++
>  target/i386/Kconfig                           |  9 ++++++++
>  target/lm32/Kconfig                           |  3 +++
>  target/m68k/Kconfig                           |  3 +++
>  target/microblaze/Kconfig                     |  2 ++
>  target/mips/Kconfig                           |  7 ++++++
>  target/moxie/Kconfig                          |  2 ++
>  target/nios2/Kconfig                          |  3 +++
>  target/openrisc/Kconfig                       |  2 ++
>  target/ppc/Kconfig                            |  5 ++++
>  target/riscv/Kconfig                          |  7 ++++++
>  target/rx/Kconfig                             |  2 ++
>  target/s390x/Kconfig                          |  2 ++
>  target/sh4/Kconfig                            |  2 ++
>  target/sparc/Kconfig                          |  5 ++++
>  target/tilegx/Kconfig                         |  2 ++
>  target/tricore/Kconfig                        |  2 ++
>  target/unicore32/Kconfig                      |  3 +++
>  target/xtensa/Kconfig                         |  3 +++
>  44 files changed, 129 insertions(+), 43 deletions(-)
>  create mode 100644 target/Kconfig
>  create mode 100644 target/alpha/Kconfig
>  create mode 100644 target/arm/Kconfig
>  create mode 100644 target/avr/Kconfig
>  create mode 100644 target/cris/Kconfig
>  create mode 100644 target/hppa/Kconfig
>  create mode 100644 target/i386/Kconfig
>  create mode 100644 target/lm32/Kconfig
>  create mode 100644 target/m68k/Kconfig
>  create mode 100644 target/microblaze/Kconfig
>  create mode 100644 target/mips/Kconfig
>  create mode 100644 target/moxie/Kconfig
>  create mode 100644 target/nios2/Kconfig
>  create mode 100644 target/openrisc/Kconfig
>  create mode 100644 target/ppc/Kconfig
>  create mode 100644 target/riscv/Kconfig
>  create mode 100644 target/rx/Kconfig
>  create mode 100644 target/s390x/Kconfig
>  create mode 100644 target/sh4/Kconfig
>  create mode 100644 target/sparc/Kconfig
>  create mode 100644 target/tilegx/Kconfig
>  create mode 100644 target/tricore/Kconfig
>  create mode 100644 target/unicore32/Kconfig
>  create mode 100644 target/xtensa/Kconfig
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]