qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 41/52] isa: express dependencies with kconfig


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH 41/52] isa: express dependencies with kconfig
Date: Wed, 30 Jan 2019 12:43:20 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.3.1

On 30/01/19 12:32, Thomas Huth wrote:
> Oh, I thought this was for convenience. So for s390x, the main problem is
> AFAIK that the architecture does not support LSI, so all devices that
> require LSI can not work here. Maybe we should introduce a "LSI" switch
> instead, so that the boards which provide LSI can select it, and all normal
> PCI devices (at least the ones that do not work with MSI only) would
> "depend on LSI", too?

Makes sense (I would call it "depends on PCI_INTX", or even make it a
negative "depends on !NO_PCI_INTX" that would only be selected by s390).

Another idea is to provide an alternative way

    config X
        imply Y

to write

    config Y
        default y if X

("imply" was added a year or two ago to Kconfig).  This would simplify
writing the configuration for variables such as CONFIG_PCI_DEVICES, and
it would also be useful to express soft dependencies such as

    config PC
        imply PCI_DEVICES
        imply QXL

    config Q35
        imply VTD

etc.  This can be left for future work though.

>> Is there a use case for disabling
>> CONFIG_ISA_DEVICES but not wanting to base your configuration on
>> "allnoconfig"?
> 
> "make allnoconfig" is not working for me yet:
> 
> make MINIKCONF="python -B /home/thuth/devel/qemu/scripts/minikconf.py  --" 
> config-all-devices.mak
> make[1]: Entering directory `/tmp/qemu-kconfig'
>   GEN     x86_64-softmmu/config-devices.mak.tmp
> /home/thuth/devel/qemu/scripts/minikconf.py: invalid option --
> 
> So I disabled PCI_DEVICES here intead for my tests for the hard
> requirements, and then I ran into this error:
> 
> hw/net/ne2000-isa.c:65: undefined reference to `ne2000_setup_io'
> hw/net/ne2000-isa.c:71: undefined reference to `ne2000_reset'
> ../hw/net/ne2000-isa.o:(.data.rel+0x1d0): undefined reference to 
> `vmstate_ne2000'
> ../hw/net/ne2000-isa.o:(.data.rel+0x270): undefined reference to 
> `ne2000_receive'
> 
> That's why I thought a CONFIG_ISA_DEVICES switch would be good, too.
> But we likely should simply fix the dependency of the NE2000_ISA switch
> instead.

Ok!

Paolo



reply via email to

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