qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v6 00/51] Support Kconfig in QEMU


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH v6 00/51] Support Kconfig in QEMU
Date: Thu, 7 Feb 2019 14:37:32 -0500

On Thu, Feb 07, 2019 at 06:56:43PM +0100, Paolo Bonzini wrote:
> Now dropping RFC... Documentation is still lacking, but all targets except
> ARM and MIPS are converted.  I'll let the respective maintainers decide what
> timeframe they prefer.
> 
> defconfig and allnoconfig are supported as configure options, respectively
> --with-default-devices (the default) and --without-default-devices.
> Optional devices are listed in .mak files as commented-out "#CONFIG_FOO=n"
> lines and marked as "imply" directives in Kconfig files.  ("Imply" is
> new in this iteration).

I would much appreciate it if you change your patch posting
scripts to include the version on all patches.

That can be done using --subject-prefix or -vX flags of
git-format-patch rather than tweaking the cover letter only.

The issue is that if someone is only copied on a specific
patch in the set, absence of version makes it hard to
reason about the history.

It also makes it hard to map patches to series if one
jumps between mailboxes.


> For the previous discussions on the Kconfig design, see
> http://lists.nongnu.org/archive/html/qemu-devel/2018-09/msg02827.html
> 
> The first part, with the Makefile changes, has already been committed.
> This is only the second part therefore, with the conversion.
> 
> The last patch is needed for now to support --without-default-devices
> builds, but it will go away with the other pending patches to revamp
> vhost configuration.

patchset itself:

Reviewed-by: Michael S. Tsirkin <address@hidden>



> Summary of changes from v5:
> - new directive "imply" for soft dependencies (really a "reverse
>   default y if ..." that is placed under the condition symbol,
>   used for PCI_DEVICES and TEST_DEVICES
> - conversion of various boards
> - TEST_DEVICES patch moved earlier
> - new patches for various subsystems and boards
> - tested Xen
> 
> I still have _not_ procesed Philippe's review though.
> 
> Paolo
> 
> Paolo Bonzini (39):
>   minikconfig: add parser skeleton
>   minikconfig: add AST
>   minikconfig: add semantic analysis
>   kconfig: introduce kconfig files
>   build: switch to Kconfig
>   minikconfig: implement allnoconfig and defconfig modes
>   kconfig: introduce CONFIG_TEST_DEVICES
>   ide: express dependencies with Kconfig
>   build: convert pci.mak to Kconfig
>   build: convert sound.mak to Kconfig
>   build: convert usb.mak to Kconfig
>   block: fix recursion in hw/block/dataplane
>   scsi: express dependencies with Kconfig
>   isa: express dependencies with kconfig
>   i386: express dependencies with Kconfig
>   i2c: express dependencies with Kconfig
>   ptimer: express dependencies with Kconfig
>   vfio: express vfio dependencies with Kconfig
>   tpm: express dependencies with Kconfig
>   isa: express SuperIO dependencies with Kconfig
>   ssi: express dependencies with kconfig
>   sd: express dependencies with kconfig
>   ipmi: express dependencies with kconfig
>   alpha-softmmu.mak: express dependencies with Kconfig
>   cris-softmmu.mak: express dependencies with Kconfig
>   hppa-softmmu.mak: express dependencies with Kconfig
>   lm32-softmmu.mak: express dependencies with Kconfig
>   m68k-softmmu.mak: express dependencies with Kconfig
>   microblaze-softmmu.mak: express dependencies with Kconfig
>   moxie-softmmu.mak: express dependencies with Kconfig
>   nios2-softmmu.mak: express dependencies with Kconfig
>   or1k-softmmu.mak: express dependencies with Kconfig
>   sh4-softmmu.mak: express dependencies with Kconfig
>   sparc-softmmu.mak: express dependencies with Kconfig
>   sparc64-softmmu.mak: express dependencies with Kconfig
>   unicore32-softmmu.mak: express dependencies with Kconfig
>   xtensa-softmmu.mak: express dependencies with Kconfig
>   .travis.yml: test that no-default-device builds do not regress
>   FIXME vhost: add more stubs
> 
> Thomas Huth (6):
>   ppc64: Express dependencies of 'pseries' and 'powernv' machines with
>     kconfig
>   ppc: Express dependencies of the 'prep' and '40p' machines with
>     kconfig
>   ppc: Express dependencies of the Mac machines with kconfig
>   ppc: Express dependencies of the Sam460EX machines with kconfig
>   ppc: Express dependencies of the embedded machines with kconfig
>   s390x: express dependencies with Kconfig
> 
> Yang Zhong (6):
>   hw/display: make edid configurable
>   hw/pci/Makefile.objs: make pcie configurable
>   display: express dependencies with kconfig
>   hyperv: express dependencies with kconfig
>   virtio: express virtio dependencies with Kconfig
>   i386-softmmu.mak: remove all CONFIG_* except boards definitions
> 
>  .travis.yml                             |   6 +
>  Kconfig.host                            |  27 ++
>  Makefile                                |  25 +-
>  Makefile.target                         |   7 +-
>  configure                               |  18 +-
>  default-configs/alpha-softmmu.mak       |  26 +-
>  default-configs/arm-softmmu.mak         |  15 +-
>  default-configs/cris-softmmu.mak        |   6 +-
>  default-configs/hppa-softmmu.mak        |  20 +-
>  default-configs/hyperv.mak              |   2 -
>  default-configs/i386-softmmu.mak        |  93 ++---
>  default-configs/lm32-softmmu.mak        |  12 +-
>  default-configs/m68k-softmmu.mak        |   4 +-
>  default-configs/microblaze-softmmu.mak  |  12 +-
>  default-configs/mips-softmmu-common.mak |  10 +-
>  default-configs/mips64el-softmmu.mak    |   2 +
>  default-configs/moxie-softmmu.mak       |   7 +-
>  default-configs/nios2-softmmu.mak       |   6 +-
>  default-configs/or1k-softmmu.mak        |   5 +-
>  default-configs/pci.mak                 |  51 ---
>  default-configs/ppc-softmmu.mak         |  60 ---
>  default-configs/ppc64-softmmu.mak       |  13 -
>  default-configs/riscv32-softmmu.mak     |   6 +-
>  default-configs/riscv64-softmmu.mak     |   6 +-
>  default-configs/s390x-softmmu.mak       |  23 +-
>  default-configs/sh4-softmmu.mak         |  28 +-
>  default-configs/sh4eb-softmmu.mak       |  22 +-
>  default-configs/sound.mak               |   4 -
>  default-configs/sparc-softmmu.mak       |  24 +-
>  default-configs/sparc64-softmmu.mak     |  25 +-
>  default-configs/unicore32-softmmu.mak   |   6 +-
>  default-configs/usb.mak                 |  11 -
>  default-configs/virtio.mak              |  15 -
>  default-configs/xtensa-softmmu.mak      |   6 +-
>  default-configs/xtensaeb-softmmu.mak    |   7 +-
>  docs/devel/build-system.txt             |   1 -
>  hw/9pfs/Kconfig                         |   6 +
>  hw/Kconfig                              |  73 ++++
>  hw/Makefile.objs                        |   2 +-
>  hw/acpi/Kconfig                         |  29 ++
>  hw/adc/Kconfig                          |   2 +
>  hw/alpha/Kconfig                        |  12 +
>  hw/arm/Kconfig                          | 123 ++++++
>  hw/audio/Kconfig                        |  52 +++
>  hw/block/Kconfig                        |  39 ++
>  hw/block/Makefile.objs                  |   3 +-
>  hw/block/dataplane/Makefile.objs        |   2 +-
>  hw/bt/Kconfig                           |   2 +
>  hw/char/Kconfig                         |  42 ++
>  hw/core/Kconfig                         |  11 +
>  hw/cpu/Kconfig                          |   8 +
>  hw/cris/Kconfig                         |   9 +
>  hw/display/Kconfig                      | 108 +++++
>  hw/display/Makefile.objs                |   4 +-
>  hw/dma/Kconfig                          |  21 +
>  hw/gpio/Kconfig                         |   9 +
>  hw/hppa/Kconfig                         |  10 +
>  hw/hyperv/Kconfig                       |   8 +
>  hw/i2c/Kconfig                          |  27 ++
>  hw/i2c/Makefile.objs                    |   2 +-
>  hw/i386/Kconfig                         | 100 +++++
>  hw/i386/Makefile.objs                   |   5 +-
>  hw/ide/Kconfig                          |  54 +++
>  hw/input/Kconfig                        |  33 ++
>  hw/intc/Kconfig                         |  57 +++
>  hw/ipack/Kconfig                        |   4 +
>  hw/ipmi/Kconfig                         |  22 +
>  hw/isa/Kconfig                          |  53 +++
>  hw/lm32/Kconfig                         |  13 +
>  hw/m68k/Kconfig                         |   9 +
>  hw/mem/Kconfig                          |  11 +
>  hw/microblaze/Kconfig                   |  20 +
>  hw/mips/Kconfig                         |  21 +
>  hw/misc/Kconfig                         | 118 ++++++
>  hw/misc/macio/Kconfig                   |  11 +
>  hw/moxie/Kconfig                        |   3 +
>  hw/net/Kconfig                          | 125 ++++++
>  hw/nios2/Kconfig                        |   8 +
>  hw/nvram/Kconfig                        |   9 +
>  hw/openrisc/Kconfig                     |   5 +
>  hw/pci-bridge/Kconfig                   |  29 ++
>  hw/pci-host/Kconfig                     |  51 +++
>  hw/pci/Kconfig                          |   9 +
>  hw/pci/Makefile.objs                    |   9 +-
>  hw/pcmcia/Kconfig                       |   2 +
>  hw/ppc/Kconfig                          | 121 ++++++
>  hw/riscv/Kconfig                        |  20 +
>  hw/s390x/Kconfig                        |  11 +
>  hw/s390x/Makefile.objs                  |   4 +-
>  hw/scsi/Kconfig                         |  54 +++
>  hw/scsi/Makefile.objs                   |   2 +-
>  hw/sd/Kconfig                           |  17 +
>  hw/sh4/Kconfig                          |  23 ++
>  hw/smbios/Kconfig                       |   2 +
>  hw/sparc/Kconfig                        |  26 ++
>  hw/sparc64/Kconfig                      |  19 +
>  hw/ssi/Kconfig                          |  18 +
>  hw/timer/Kconfig                        |  63 +++
>  hw/tpm/Kconfig                          |  25 ++
>  hw/tricore/Kconfig                      |   2 +
>  hw/unicore32/Kconfig                    |   5 +
>  hw/usb/Kconfig                          |  91 +++++
>  hw/usb/Makefile.objs                    |   2 +-
>  hw/vfio/Kconfig                         |  36 ++
>  hw/virtio/Kconfig                       |  31 ++
>  hw/virtio/vhost-stub.c                  |  58 +++
>  hw/watchdog/Kconfig                     |  16 +
>  hw/xtensa/Kconfig                       |   8 +
>  rules.mak                               |   2 +-
>  scripts/make_device_config.sh           |  30 --
>  scripts/minikconf.py                    | 700 
> ++++++++++++++++++++++++++++++++
>  111 files changed, 2917 insertions(+), 465 deletions(-)
>  create mode 100644 Kconfig.host
>  delete mode 100644 default-configs/hyperv.mak
>  delete mode 100644 default-configs/pci.mak
>  delete mode 100644 default-configs/sound.mak
>  delete mode 100644 default-configs/usb.mak
>  delete mode 100644 default-configs/virtio.mak
>  create mode 100644 hw/9pfs/Kconfig
>  create mode 100644 hw/Kconfig
>  create mode 100644 hw/acpi/Kconfig
>  create mode 100644 hw/adc/Kconfig
>  create mode 100644 hw/alpha/Kconfig
>  create mode 100644 hw/arm/Kconfig
>  create mode 100644 hw/audio/Kconfig
>  create mode 100644 hw/block/Kconfig
>  create mode 100644 hw/bt/Kconfig
>  create mode 100644 hw/char/Kconfig
>  create mode 100644 hw/core/Kconfig
>  create mode 100644 hw/cpu/Kconfig
>  create mode 100644 hw/cris/Kconfig
>  create mode 100644 hw/display/Kconfig
>  create mode 100644 hw/dma/Kconfig
>  create mode 100644 hw/gpio/Kconfig
>  create mode 100644 hw/hppa/Kconfig
>  create mode 100644 hw/hyperv/Kconfig
>  create mode 100644 hw/i2c/Kconfig
>  create mode 100644 hw/i386/Kconfig
>  create mode 100644 hw/ide/Kconfig
>  create mode 100644 hw/input/Kconfig
>  create mode 100644 hw/intc/Kconfig
>  create mode 100644 hw/ipack/Kconfig
>  create mode 100644 hw/ipmi/Kconfig
>  create mode 100644 hw/isa/Kconfig
>  create mode 100644 hw/lm32/Kconfig
>  create mode 100644 hw/m68k/Kconfig
>  create mode 100644 hw/mem/Kconfig
>  create mode 100644 hw/microblaze/Kconfig
>  create mode 100644 hw/mips/Kconfig
>  create mode 100644 hw/misc/Kconfig
>  create mode 100644 hw/misc/macio/Kconfig
>  create mode 100644 hw/moxie/Kconfig
>  create mode 100644 hw/net/Kconfig
>  create mode 100644 hw/nios2/Kconfig
>  create mode 100644 hw/nvram/Kconfig
>  create mode 100644 hw/openrisc/Kconfig
>  create mode 100644 hw/pci-bridge/Kconfig
>  create mode 100644 hw/pci-host/Kconfig
>  create mode 100644 hw/pci/Kconfig
>  create mode 100644 hw/pcmcia/Kconfig
>  create mode 100644 hw/ppc/Kconfig
>  create mode 100644 hw/riscv/Kconfig
>  create mode 100644 hw/s390x/Kconfig
>  create mode 100644 hw/scsi/Kconfig
>  create mode 100644 hw/sd/Kconfig
>  create mode 100644 hw/sh4/Kconfig
>  create mode 100644 hw/smbios/Kconfig
>  create mode 100644 hw/sparc/Kconfig
>  create mode 100644 hw/sparc64/Kconfig
>  create mode 100644 hw/ssi/Kconfig
>  create mode 100644 hw/timer/Kconfig
>  create mode 100644 hw/tpm/Kconfig
>  create mode 100644 hw/tricore/Kconfig
>  create mode 100644 hw/unicore32/Kconfig
>  create mode 100644 hw/usb/Kconfig
>  create mode 100644 hw/vfio/Kconfig
>  create mode 100644 hw/virtio/Kconfig
>  create mode 100644 hw/watchdog/Kconfig
>  create mode 100644 hw/xtensa/Kconfig
>  delete mode 100644 scripts/make_device_config.sh
>  create mode 100644 scripts/minikconf.py
> 
> -- 
> 1.8.3.1
> 



reply via email to

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