Hi, > I'm not against cleaning up the includes for virtio-ccw devices, but I > tend to see that as a separate, less pressing issue.
Well, it would allow to build virtio-ccw as common code (i.e. move from specific_ss to softmmu_ss). > > Alternatively add support for > > target-specific modules (which we don't really have right now). > > I think a target-specific module is what I did in this patch. Nope. Specifically target-specific modules must be built once for each target and have a target-specific name (prefix or subdir). So when modularizing -- for example -- vga you'll get modules such as x86_64/hw-display-vga.so, ppc64/hw-display-vga.so, ... Qemu needs support for loading the correct version. What you did is a rather incomplete version of that which happens to work for ccw because ccw is used by s390x only so you can shortcut the "build once for each target" part of the problem. > Furthermore, I think any virtio-ccw device that is about to be built as > a module, must be built as a target-specific module. If the realized > (guest) architecture is not s390x, then there are no s390 IO instructions > and ccw won't fly. Well, it can happen that generic modules don't load into some qemu versions. Devices which need PCI can't be loaded by qemu-system-avr for example because the avr target lacks PCI bus support. ccw modules only loading into qemu-system-s390x because that is the only target providing the bus needed is pretty much the same. take care, Gerd
