On 07.01.15 12:07, Paolo Bonzini wrote: > > > On 07/01/2015 12:03, Marcel Apfelbaum wrote: >> >> While I agree it will be better if we place this in instance_init, >> setting the machine_usb to defaults_enabled() there would be problematic >> since it depends on >> - papr_vga_init(phb->bus) for sparpr and > > That's effectively vga_interface_type == VGA_DEVICE || > vga_interface_type == VGA_STD. > >> - (PPC_INPUT(env) == PPC_FLAGS_INPUT_970) for mac99. >> (The env itself is set in machine_init) > > Alex, why is auto-USB disabled for 6xx? Can it use vga_interface_type > like spapr does?
That one's a nasty hack. We basically have 2 different machine types that we expose as a single type to the user: mac99. In reality there's a 64bit mac99 and a 32bit mac99. 32bit mac99 can expose keyboard and mouse via a special apple bus. That driver doesn't work with 64bit Linux guests though, so there we need USB. Thinking about it, maybe the best way forward would be to create 2 machine types out of these. Have a mac99 (32bit) and a mac99-g5 target where the g5 target defaults to -cpu G5 and USB enabled. All of this is pretty frankenstein btw. What we would really want for a G5 guest is something built around U3 or U4, not the U1 that -M mac99 exposes. Alex