On 25 September 2018 at 10:26, Paolo Bonzini <pbonz...@redhat.com> wrote: > However, the Kconfig language is a good idea. The idea is that > dependencies can be expressed: > > - as "select" whenever a board requires a device, or whenever a device > requires generic subsystem code in order to implement a controller for > that subsystem (e.g.: PC selects MC146818RTC, VIRTIO_SCSI selects SCSI) > > - as "depends on" whenever a device requires a bus (e.g.: SERIAL_PCI > depends on ISA) > > Putting the two things together, AHCI depends on PCI but it selects IDE.
Could you clarify the distinction you're making here between these two kinds of dependency and what the top level user interface would be? I'm getting confused about why we need two -- I have a vague impression it depends on what the top level thing the user is selecting enablement of is, but maybe not ? Why wouldn't we just say "board Foo depends on device Bar" and also "Device Bar depends on bus Baz", rather than having two separate concepts? thanks -- PMM