On 01/07/2015 01:15 PM, Alexander Graf wrote:
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.
That means moving select_vgahw (vl.c) that sets vga_interface_type
much much earlier in main, before the current machine is created.
And it depends itself on other stuff...
- (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.
Given my (lack of) expertise on ppc, I shouldn't throw myself yet in
the above adventure.
Since I will not be able (soon) to get in the stuff Alex mentioned and
the implications moving the setting of vga_interface_type earlier in main
fall far beyond this series target (fix a bug/simpligu -usb on the way),
I suggest putting the above on todo list.
I plan to do the same (access machine's properties instead of quering QemuOpts)
for all other machine properties because I am sure we have other hidden bugs
there.
Thanks,
Marcel
Alex