On Jul 27, 2016, at 6:10 AM, qemu-ppc-request@nongnu.org wrote:
Message: 1 Date: Wed, 27 Jul 2016 18:27:33 +1000 From: Benjamin Herrenschmidt benh@kernel.crashing.org To: qemu-ppc@nongnu.org, David Gibson david@gibson.dropbear.id.au Cc: qemu-devel@nongnu.org, Mark Cave-Ayland mark.cave-ayland@ilande.co.uk, Alexander Graf agraf@suse.de Subject: [Qemu-ppc] [PATCH] ppc: Add MacOS VGA driver ROM Message-ID: 1469608053.5978.132.camel@kernel.crashing.org Content-Type: text/plain; charset="UTF-8"
The project is at https://github.com/ozbenh/QemuMacDrivers
This adds a native MacOS driver in ROM (which can be picked up by MacOS once OpenBIOS has been updated if Mark accepts the patches I sent him) which allows MacOS classic (tested 9.2.1) and MacOS X (tested 10.1.4 and 10.4) to properly use QEMU std VGA (10.1.x doesn't work at all without it, the others get the ability to change resolution and color depth).
Building the ROM is tricky and requires CodeWarrior for MacOS so I include a pre-built binary.
Signed-off-by: Benjamin Herrenschmidt benh@kernel.crashing.org
hw/ppc/mac_newworld.c | 8 ++++++++ pc-bios/qemu_vga.ndrv | Bin 0 -> 12808 bytes 2 files changed, 8 insertions(+) create mode 100644 pc-bios/qemu_vga.ndrv
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 7d25106..5029345 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -511,6 +511,13 @@ static int core99_kvm_type(const char *arg) return 2; }
+#define MAC_CORE99_COMPAT \
- { \
.driver = "pci-vga", \
.property = "romfile", \
.value = "qemu_vga.ndrv", \
- },
static void core99_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); @@ -520,6 +527,7 @@ static void core99_machine_class_init(ObjectClass *oc, void *data) mc->max_cpus = MAX_CPUS; mc->default_boot_order = "cd"; mc->kvm_type = core99_kvm_type;
- SET_MACHINE_COMPAT(mc, MAC_CORE99_COMPAT);
}
static const TypeInfo core99_machine_info = { diff --git a/pc-bios/qemu_vga.ndrv b/pc-bios/qemu_vga.ndrv new file mode 100644 index 0000000000000000000000000000000000000000..0b1549d1c5978f87aed2b6e496a23fbaf18dbea4 GIT binary patch literal 12808 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 S3pms9xI7eDPqe?>@BaW(s=rMD
literal 0 HcmV?d00001
Your patch does successfully work with Mac OS 10.4.0, Mac OS 9.2.1, and Mac OS 9.0.4. Great job :)
Reviewed-by: John Arbuckle programmingkidx@gmail.com
On 30 Jul 2016, at 18:59, Programmingkid programmingkidx@gmail.com wrote:
On Jul 27, 2016, at 6:10 AM, qemu-ppc-request@nongnu.org wrote:
Message: 1 Date: Wed, 27 Jul 2016 18:27:33 +1000 From: Benjamin Herrenschmidt benh@kernel.crashing.org To: qemu-ppc@nongnu.org, David Gibson david@gibson.dropbear.id.au Cc: qemu-devel@nongnu.org, Mark Cave-Ayland mark.cave-ayland@ilande.co.uk, Alexander Graf agraf@suse.de Subject: [Qemu-ppc] [PATCH] ppc: Add MacOS VGA driver ROM Message-ID: 1469608053.5978.132.camel@kernel.crashing.org Content-Type: text/plain; charset="UTF-8"
The project is at https://github.com/ozbenh/QemuMacDrivers
This adds a native MacOS driver in ROM (which can be picked up by MacOS once OpenBIOS has been updated if Mark accepts the patches I sent him) which allows MacOS classic (tested 9.2.1) and MacOS X (tested 10.1.4 and 10.4) to properly use QEMU std VGA (10.1.x doesn't work at all without it, the others get the ability to change resolution and color depth).
Building the ROM is tricky and requires CodeWarrior for MacOS so I include a pre-built binary.
Signed-off-by: Benjamin Herrenschmidt benh@kernel.crashing.org
hw/ppc/mac_newworld.c | 8 ++++++++ pc-bios/qemu_vga.ndrv | Bin 0 -> 12808 bytes 2 files changed, 8 insertions(+) create mode 100644 pc-bios/qemu_vga.ndrv
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 7d25106..5029345 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -511,6 +511,13 @@ static int core99_kvm_type(const char *arg) return 2; }
+#define MAC_CORE99_COMPAT \
- { \
.driver = "pci-vga", \
.property = "romfile", \
.value = "qemu_vga.ndrv", \
- },
static void core99_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); @@ -520,6 +527,7 @@ static void core99_machine_class_init(ObjectClass *oc, void *data) mc->max_cpus = MAX_CPUS; mc->default_boot_order = "cd"; mc->kvm_type = core99_kvm_type;
- SET_MACHINE_COMPAT(mc, MAC_CORE99_COMPAT);
}
static const TypeInfo core99_machine_info = { diff --git a/pc-bios/qemu_vga.ndrv b/pc-bios/qemu_vga.ndrv new file mode 100644 index 0000000000000000000000000000000000000000..0b1549d1c5978f87aed2b6e496a23fbaf18dbea4 GIT binary patch literal 12808 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 S3pms9xI7eDPqe?>@BaW(s=rMD
literal 0 HcmV?d00001
Your patch does successfully work with Mac OS 10.4.0, Mac OS 9.2.1, and Mac OS 9.0.4. Great job :)
Reviewed-by: John Arbuckle programmingkidx@gmail.com
OpenBIOS http://openbios.org/ Mailinglist: http://lists.openbios.org/mailman/listinfo Free your System - May the Forth be with you
Hi, I noticed one small regression using this patch and the rom: OSX 10.5 no longer gets to the desktop. Not that it matters much, mouse and keyboard weren’t working anyway.
On Jul 31, 2016, at 2:32 PM, Howard Spoelstra wrote:
On 30 Jul 2016, at 18:59, Programmingkid programmingkidx@gmail.com wrote:
On Jul 27, 2016, at 6:10 AM, qemu-ppc-request@nongnu.org wrote:
Message: 1 Date: Wed, 27 Jul 2016 18:27:33 +1000 From: Benjamin Herrenschmidt benh@kernel.crashing.org To: qemu-ppc@nongnu.org, David Gibson david@gibson.dropbear.id.au Cc: qemu-devel@nongnu.org, Mark Cave-Ayland mark.cave-ayland@ilande.co.uk, Alexander Graf agraf@suse.de Subject: [Qemu-ppc] [PATCH] ppc: Add MacOS VGA driver ROM Message-ID: 1469608053.5978.132.camel@kernel.crashing.org Content-Type: text/plain; charset="UTF-8"
The project is at https://github.com/ozbenh/QemuMacDrivers
This adds a native MacOS driver in ROM (which can be picked up by MacOS once OpenBIOS has been updated if Mark accepts the patches I sent him) which allows MacOS classic (tested 9.2.1) and MacOS X (tested 10.1.4 and 10.4) to properly use QEMU std VGA (10.1.x doesn't work at all without it, the others get the ability to change resolution and color depth).
Building the ROM is tricky and requires CodeWarrior for MacOS so I include a pre-built binary.
Signed-off-by: Benjamin Herrenschmidt benh@kernel.crashing.org
hw/ppc/mac_newworld.c | 8 ++++++++ pc-bios/qemu_vga.ndrv | Bin 0 -> 12808 bytes 2 files changed, 8 insertions(+) create mode 100644 pc-bios/qemu_vga.ndrv
diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 7d25106..5029345 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -511,6 +511,13 @@ static int core99_kvm_type(const char *arg) return 2; }
+#define MAC_CORE99_COMPAT \
- { \
.driver = "pci-vga", \
.property = "romfile", \
.value = "qemu_vga.ndrv", \
- },
static void core99_machine_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); @@ -520,6 +527,7 @@ static void core99_machine_class_init (ObjectClass *oc, void *data) mc->max_cpus = MAX_CPUS; mc->default_boot_order = "cd"; mc->kvm_type = core99_kvm_type;
- SET_MACHINE_COMPAT(mc, MAC_CORE99_COMPAT);
}
static const TypeInfo core99_machine_info = { diff --git a/pc-bios/qemu_vga.ndrv b/pc-bios/qemu_vga.ndrv new file mode 100644 index 0000000000000000000000000000000000000000..0b1549d1c5978f87aed2b6e496 a23fbaf18dbea4 GIT binary patch literal 12808 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 S3pms9xI7eDPqe?>@BaW(s=rMD
literal 0 HcmV?d00001
Your patch does successfully work with Mac OS 10.4.0, Mac OS 9.2.1, and Mac OS 9.0.4. Great job :)
Reviewed-by: John Arbuckle programmingkidx@gmail.com
OpenBIOS http://openbios.org/ Mailinglist: http://lists.openbios.org/mailman/listinfo Free your System - May the Forth be with you
Hi, I noticed one small regression using this patch and the rom: OSX 10.5 no longer gets to the desktop. Not that it matters much, mouse and keyboard weren’t working anyway.
I'm glad to hear that Mac OS 10.5 boots to the desktop. If this driver does cause problems it could be a problem with Mac OS 10.5, or the driver. Either way, a command-line option for disabling or altering this driver might be the solution.
The mouse and keyboard drivers for ADB were removed from the Mac OS in Mac OS 10.5 I think. Could you try the USB keyboard and mouse?
Do you think you could post a picture of Mac OS 10.5 running in QEMU?
Thanks.
On Sun, 2016-07-31 at 20:00 -0400, G 3 wrote:
Hi, I noticed one small regression using this patch and the rom: OSX 10.5 no longer gets to the desktop. Not that it matters much, mouse and keyboard weren’t working anyway.
I'm glad to hear that Mac OS 10.5 boots to the desktop. If this driver does cause problems it could be a problem with Mac OS 10.5, or the driver. Either way, a command-line option for disabling or altering this driver might be the solution.
The mouse and keyboard drivers for ADB were removed from the Mac OS in Mac OS 10.5 I think. Could you try the USB keyboard and mouse?
Do you think you could post a picture of Mac OS 10.5 running in QEMU?
That's interesting, I didn't get 10.5 to boot to desktop either but didn't think of trying without the NDRV, I maybe incorrectly assumed it was an unrelated problem due to the lack of a supported PMU or SMU based platform. I'll have a look later this week see if there's anything the driver is doing that is upsetting OS 10.5
Cheers, Ben.
On 01 Aug 2016, at 02:29, Benjamin Herrenschmidt benh@kernel.crashing.org wrote:
On Sun, 2016-07-31 at 20:00 -0400, G 3 wrote:
Hi, I noticed one small regression using this patch and the rom: OSX 10.5 no longer gets to the desktop. Not that it matters much, mouse and keyboard weren’t working anyway.
I'm glad to hear that Mac OS 10.5 boots to the desktop. If this driver does cause problems it could be a problem with Mac OS 10.5, or the driver. Either way, a command-line option for disabling or altering this driver might be the solution.
The mouse and keyboard drivers for ADB were removed from the Mac OS in Mac OS 10.5 I think. Could you try the USB keyboard and mouse?
Do you think you could post a picture of Mac OS 10.5 running in QEMU?
That's interesting, I didn't get 10.5 to boot to desktop either but didn't think of trying without the NDRV, I maybe incorrectly assumed it was an unrelated problem due to the lack of a supported PMU or SMU based platform. I'll have a look later this week see if there's anything the driver is doing that is upsetting OS 10.5
Cheers, Ben.
Perhaps a bit misleading, but I meant the installation DVD boots to the installer without the driver. It takes a long time before the installer shows. Picture is here: http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.jpg http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.jpg I already have no keyboard at the OpenBIOS prompt when using -usbdevice keyboard, so perhaps someone else has better luck.
On Mon, 2016-08-01 at 08:28 +0200, Howard Spoelstra wrote:
Perhaps a bit misleading, but I meant the installation DVD boots to the installer without the driver. It takes a long time before the installer shows. Picture is here: http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.j pg I already have no keyboard at the OpenBIOS prompt when using -usbdevice keyboard, so perhaps someone else has better luck.
One thing I noticed too is that the first boot after a 10.4 install takes a very very long time on the gray apple before making progress.
I'm not 100% certain at this stage but I *suspect* the kext cache isn't created, causing BootX to read all of their plists, which means doing a *lot* of file IOs via OpenBIOS, and I have the nagging feeling that it's a pretty slow path ;-)
Something to look into at another time.
Cheers, Ben.
On 01/08/16 07:43, Benjamin Herrenschmidt wrote:
On Mon, 2016-08-01 at 08:28 +0200, Howard Spoelstra wrote:
Perhaps a bit misleading, but I meant the installation DVD boots to the installer without the driver. It takes a long time before the installer shows. Picture is here: http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.j pg I already have no keyboard at the OpenBIOS prompt when using -usbdevice keyboard, so perhaps someone else has better luck.
One thing I noticed too is that the first boot after a 10.4 install takes a very very long time on the gray apple before making progress.
I'm not 100% certain at this stage but I *suspect* the kext cache isn't created, causing BootX to read all of their plists, which means doing a *lot* of file IOs via OpenBIOS, and I have the nagging feeling that it's a pretty slow path ;-)
Hmmm yes. That's a single sector read interface wrapped by deblocker so it's not going to be amazingly fast. For comparison the posted virtio driver puts the start sector, target address and length directly into the descriptor so large reads there are reasonably efficient.
ATB,
Mark.
On Tue, 2016-08-02 at 09:33 +0100, Mark Cave-Ayland wrote:
Perhaps a bit misleading, but I meant the installation DVD boots to the installer without the driver. It takes a long time before the installer shows. Picture is here: http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.j pg I already have no keyboard at the OpenBIOS prompt when using -usbdevice keyboard, so perhaps someone else has better luck.
One thing I noticed too is that the first boot after a 10.4 install takes a very very long time on the gray apple before making progress. I'm not 100% certain at this stage but I *suspect* the kext cache isn't created, causing BootX to read all of their plists, which means doing a *lot* of file IOs via OpenBIOS, and I have the nagging feeling that it's a pretty slow path ;-)
Hmmm yes. That's a single sector read interface wrapped by deblocker so it's not going to be amazingly fast. For comparison the posted virtio driver puts the start sector, target address and length directly into the descriptor so large reads there are reasonably efficient.
Looking at a verbose boot, I'd say the long delays are more caused by the lack of a PMU or SMU, so OS X times out in multiple places waiting for a real time clock. I'll cook something up.
Cheers, Ben.
On Aug 1, 2016, at 2:28 AM, Howard Spoelstra wrote:
On 01 Aug 2016, at 02:29, Benjamin Herrenschmidt benh@kernel.crashing.org wrote:
On Sun, 2016-07-31 at 20:00 -0400, G 3 wrote:
Hi, I noticed one small regression using this patch and the rom: OSX 10.5 no longer gets to the desktop. Not that it matters much, mouse and keyboard weren’t working anyway.
I'm glad to hear that Mac OS 10.5 boots to the desktop. If this driver does cause problems it could be a problem with Mac OS 10.5, or the driver. Either way, a command-line option for disabling or altering this driver might be the solution.
The mouse and keyboard drivers for ADB were removed from the Mac OS in Mac OS 10.5 I think. Could you try the USB keyboard and mouse?
Do you think you could post a picture of Mac OS 10.5 running in QEMU?
That's interesting, I didn't get 10.5 to boot to desktop either but didn't think of trying without the NDRV, I maybe incorrectly assumed it was an unrelated problem due to the lack of a supported PMU or SMU based platform. I'll have a look later this week see if there's anything the driver is doing that is upsetting OS 10.5
Cheers, Ben.
Perhaps a bit misleading, but I meant the installation DVD boots to the installer without the driver. It takes a long time before the installer shows. Picture is here: http://www.open.ou.nl/hsp/images/qemu/qemu_leopard.jpg I already have no keyboard at the OpenBIOS prompt when using -usbdevice keyboard, so perhaps someone else has better luck.
For the keyboard issue, I think the problem is the Mac99 target uses OHCI. It is a USB controller that implements USB 1.1. Lets try USB 2.0. Could you try this command:
-device ich9-usb-uhci1,id=newusb -device usb-audio,bus=newusb.0 -device usb-keyboard,bus=newusb.0 -device usb-mouse,bus=newusb.0
It adds a usb audio device also. Do you think you could test out a few MP3's if the keyboard works?