qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH] Changes default cdrom options to work better with


From: Programmingkid
Subject: Re: [Qemu-ppc] [PATCH] Changes default cdrom options to work better with Mac OS X.
Date: Sun, 23 Jun 2013 08:37:08 -0400

On Jun 22, 2013, at 9:20 PM, Alexander Graf wrote:

> 
> On 23.06.2013, at 03:14, Programmingkid wrote:
> 
>> 
>> On Jun 22, 2013, at 9:08 PM, Alexander Graf wrote:
>> 
>>> 
>>> On 23.06.2013, at 03:04, Programmingkid wrote:
>>> 
>>>> This patch makes the default cdrom options more compatible with Mac OS X.
>>>> 
>>>> With this patch I was finally able to see "Got boot device" printed by 
>>>> Darwin 8! This made the installer for Darwin 8 actually show up in QEMU. 
>>>> 
>>>> signed-off-by: John Arbuckle <address@hidden>
>>>> 
>>>> ---
>>>> vl.c |    2 +-
>>>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>>> 
>>>> diff --git a/vl.c b/vl.c
>>>> index a8dc73d..cb53656 100644
>>>> --- a/vl.c
>>>> +++ b/vl.c
>>>> @@ -3085,7 +3085,7 @@ int main(int argc, char **argv, char **envp)
>>>>              qemu_opts_set(qemu_find_opts("machine"), 0, "dtb", optarg);
>>>>              break;
>>>>          case QEMU_OPTION_cdrom:
>>>> -                drive_add(IF_DEFAULT, 2, optarg, CDROM_OPTS);
>>>> +                drive_add(IF_IDE, 0, optarg, CDROM_OPTS);
>>> 
>>> Consider me puzzled. Why is IF_DEFAULT and different from IF_IDE on g3beige?
>>> 
>>> 
>>> Alex
>>> 
>> 
>> 
>> Because IF_DEFAULT is equal to -1 and IF_IDE is equal to 0. Their definition 
>> is in blockdev.h.
> 
> So? The default block bus on g3beige is IDE, so IF_DEFAULT should behave 
> identical to IF_IDE.

Sounds like a good idea. 

> 
> The real change you did was to go from "2" to "0". So instead of attaching 
> the CD-ROM to hdc (on cmd646) you now attach it to hda (on mac-io).
> 
> So the real underlying problem is that we expose the second IDE channel on a 
> cmd646 IDE controller, not mac-io. I think we did this back then to support 
> booting at all, because the mac-io emulation was so broken that booting from 
> CD-ROM simply didn't work. I guess it's time to switch back ...
> 

Yes, using mac-io is the best thing to do now. 

One of the last major problems with making Mac OS X boot in QEMU is with a 
function called IOSleep(). This is an XNU function that does not work 
correctly. Whenever a call to this function is made, the kernel pauses for a 
much longer time than it should. This will have to be fixed somehow.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]