I've managed to install the trunk grub. It's looking better, though not
quite there yet. Windows and Debian are booting fine, and OSX is booting as
well, no more reboot at startup now, I even get some text when booting, but
after that, the screen turns off (no signal), and there is hdd activity,
and I think I even managed to log in and make some notification sounds, so
it's like it boots up fine, just no video!

I've tried disabling the graphical console in grub, and removing load_video
in the OSX menu entry, but the first one didn't affect it, and the second
one just made it go into blind mode, and then, again, into no video, but
rest of system working mode.

I have an nVidia card. Not quite sure what to do next. I don't know what
logs to investigate on the osx partition either.

And here is a log extract from Console.app (I managed to boot with
chainloading)

[...]
9/26/13 6:33:16.000 PM kernel[0]: MAC Framework successfully initialized
9/26/13 6:33:16.000 PM kernel[0]: using 15728 buffer headers and 9912
cluster IO buffer headers
9/26/13 6:33:16.000 PM kernel[0]: IOAPIC: Version 0x20 Vectors 64:87
9/26/13 6:33:16.000 PM kernel[0]: ACPI: System State [S0 S3 S4 S5] (S3)
9/26/13 6:33:16.000 PM kernel[0]: PFM64 (36 cpu) 0xf10000000, 0xf0000000
9/26/13 6:33:16.000 PM kernel[0]: [ PCI configuration begin ]
*9/26/13 6:33:16.000 PM kernel[0]: console relocated to 0xf11000000*
9/26/13 6:33:16.000 PM kernel[0]: PCI configuration changed (bridge=2
device=1 cardbus=0)
9/26/13 6:33:16.000 PM kernel[0]: [ PCI configuration end, bridges 5
devices 16 ]
9/26/13 6:33:16.000 PM kernel[0]: RTC: Only single RAM bank (128 bytes)
9/26/13 6:33:16.000 PM kernel[0]: mbinit: done [64 MB total pool size,
(42/21) split]
9/26/13 6:33:16.000 PM kernel[0]: Pthread support ABORTS when sync kernel
primitives misused
9/26/13 6:33:16.000 PM kernel[0]: Waiting for boot volume with UUID
556CC1F2-C028-3699-810D-F5BFD3D9D51C
[...]

It starts by outputting text until it reaches [ PCI configuration begin ],
then it stalls for a bit. The line right after that is 'console relocated
to 0xf11000000', which might be meaningful, but something tells me that
seeing as the timestamp is the same, the console gets relocated before the
screen goes blank, and is not the cause.

After checking the logs and comparing a GRUB boot with a Chameleon boot, it
seems the nVidia driver is having some trouble. Most important, Chameleon
makes the OS behave exactly like GRUB, if I set *GraphicsEnabler* to
*No*in /Extra/org.chameleon.Boot.plist. So perhaps we're closing in on
the
problem - GRUB does not do this graphics enabling that is apparently
necessary and present in Chameleon.

Here is the menuentry generated by grub-mkconfig, if it makes any
difference:


menuentry 'Mac OS X (64-bit) (on /dev/sda2)' --class osx --class darwin
--class os $menuentry_id_option 'osprober-xnu-64-689f9c8a6b4f3520'  {
 insmod part_msdos
insmod hfsplus
 set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2
--hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  689f9c8a6b4f3520
 else
  search --no-floppy --fs-uuid --set=root 689f9c8a6b4f3520
 fi
        load_video
        set do_resume=0
        if [ /var/vm/sleepimage -nt10 / ]; then
           if xnu_resume /var/vm/sleepimage; then
             set do_resume=1
           fi
        fi
        if [ $do_resume = 0 ]; then
           xnu_uuid 689f9c8a6b4f3520 uuid
           if [ -f /Extra/DSDT.aml ]; then
              acpi -e /Extra/DSDT.aml
           fi
           if [ /kernelcache -nt /System/Library/Extensions ]; then
              xnu_kernel64 /kernelcache boot-uuid=${uuid} rd=*uuid
           else
              xnu_kernel64 /mach_kernel boot-uuid=${uuid} rd=*uuid
              if [ /System/Library/Extensions.mkext -nt
/System/Library/Extensions ]; then
                xnu_mkext /System/Library/Extensions.mkext
              else
                xnu_kextdir /System/Library/Extensions
              fi
           fi
           if [ -f /Extra/Extensions.mkext ]; then
              xnu_mkext /Extra/Extensions.mkext
           fi
           if [ -d /Extra/Extensions ]; then
              xnu_kextdir /Extra/Extensions
           fi
           if [ -f /Extra/devprop.bin ]; then
              xnu_devprop_load /Extra/devprop.bin
           fi
           if [ -f /Extra/splash.jpg ]; then
              insmod jpeg
              xnu_splash /Extra/splash.jpg
           fi
           if [ -f /Extra/splash.png ]; then
              insmod png
              xnu_splash /Extra/splash.png
           fi
           if [ -f /Extra/splash.tga ]; then
              insmod tga
              xnu_splash /Extra/splash.tga
           fi
        fi
}


On Thu, Sep 26, 2013 at 3:02 PM, Mihai Draghicioiu <
mihai.draghici...@gmail.com> wrote:

> Thanks, I'm trying it now.
>
>
> On Thu, Sep 26, 2013 at 2:28 PM, <arvidj...@gmail.com> wrote:
>
>> You need post-2.00 grub to support Apple bi-arch format. Try current
>> trunk.
>>
>> Отправлено с iPhone
>>
>> 26.09.2013, в 15:24, Mihai Draghicioiu <mihai.draghici...@gmail.com>
>> написал(а):
>>
>> Hi Andrey! I've tried this:
>>
>> menuentry "Mountain Lion (EFI)" --class osx --class darwin --class os {
>> insmod part_msdos
>>  insmod hfsplus
>> set root='(/dev/sda,msdos2)'
>> search --no-floppy --fs-uuid --set=root 689f9c8a6b4f3520
>>  load_video
>> parttool (hd0,2) boot+
>> chainloader /usr/standalone/i386/boot.efi
>> }
>>
>> but I'm getting 'Invalid signature'. Could you show me the cfg you used
>> to get yours working please?
>>
>>
>>
>> On Thu, Sep 26, 2013 at 2:02 PM, Andrey Borzenkov <arvidj...@gmail.com>wrote:
>>
>>> В Thu, 26 Sep 2013 13:53:20 +0300
>>> Mihai Draghicioiu <mihai.draghici...@gmail.com> пишет:
>>>
>>> > Hello everyone!
>>> >
>>> > I'm trying to get a triple boot 64-bit Intel PC going correctly. There
>>> are
>>> > Windows 8, Debian 7 and OSX Mountain Lion on it.
>>> >
>>> > Windows 8 and Debian boot fine from Grub, but the only way I got
>>> Mountain
>>> > Lion to boot was via chainloading the Chameleon bootloader. The other
>>> > option is using the xnu_* commands available, and update-grub
>>> generates the
>>> > proper menu entries, however, when I choose the 32 bit menu entry it
>>> says
>>> > there is no suitable kernel for 32 bit, and when I choose the 64 bit
>>> entry,
>>> > it hangs for 1-2 seconds and then reboots. I've managed to place
>>> echo's in
>>> > the boot sequence, and every command is executed before the reboot
>>> takes
>>> > place. There is no output, the machine reboots before reaching the
>>> Apple
>>> > logo loading screen.
>>> >
>>> > If this is a bug, and not a misuse on my part, please mention so I can
>>> > submit it to the grub and debian bug trackers (personally I think it's
>>> > already a Debian bug).
>>> >
>>>
>>> Yes, apparently grub xnu loader cannot boot modern OS/X versions. I was
>>> able to boot it by directly chainloading OS/X EFI bootloader. Path
>>> was /usr/standalone/i386/boot.efi if I'm not mistaken. This avoids need
>>> to use third-party programs.
>>>
>>> > Also, perhaps there are some debug flags I can turn on to see what's
>>> > happening?
>>> >
>>> > I've found a similar situation on this webpage
>>> > http://www.insanelymac.com/forum/topic/282748-grub2-xnu-kernel/
>>> >
>>> > Now I'm going to provide as much info as I can, please specify if more
>>> is
>>> > needed to get a proper idea why this doesn't work:
>>> >
>>> > OS X version is Mountain Lion 10.8
>>> >
>>> > HDD is 1TB
>>> > Partition table (MBR):
>>> >   Primary 200G NTFS (Win 8)
>>> >   Primary 100G HFS+ (OSX) Active
>>> >   Extended
>>> >     Linux 20G
>>> >     Swap 5G
>>> >     600G NTFS (Storage)
>>> >
>>> > # fdisk /dev/sda
>>> >
>>> > The device presents a logical sector size that is smaller than
>>> > the physical sector size. Aligning to a physical sector (or optimal
>>> > I/O) size boundary is recommended, or performance may be impacted.
>>> >
>>> > Command (m for help): p
>>> >
>>> > Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
>>> > 255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
>>> > Units = sectors of 1 * 512 = 512 bytes
>>> > Sector size (logical/physical): 512 bytes / 4096 bytes
>>> > I/O size (minimum/optimal): 4096 bytes / 4096 bytes
>>> > Disk identifier: 0xfa12c820
>>> >
>>> >    Device Boot      Start         End      Blocks   Id  System
>>> > /dev/sda1            2048   419432447   209715200    7  HPFS/NTFS/exFAT
>>> > /dev/sda2   *   419432448   629147647   104857600   af  HFS / HFS+
>>> > /dev/sda3       629147648  1953525167   662188760    5  Extended
>>> > /dev/sda5       629149696   671092735    20971520   83  Linux
>>> > /dev/sda6       671094784   681580543     5242880   82  Linux swap /
>>> Solaris
>>> > /dev/sda7       681582592  1953525167   635971288    7  HPFS/NTFS/exFAT
>>> >
>>> >
>>> >
>>> > Here are a few menu entries that generate this behavior:
>>> >
>>> > This I got from some webpage - it seems minimal
>>> > menuentry "Mac OS X" {
>>> >   set root=(hd0,2)
>>> >   insmod video
>>> >   insmod vbe
>>> >   gfxmode="1280x800x32"
>>> >   xnu_kernel /mach_kernel rd=disk0s2
>>> >   if [ /System/Library/Extensions.mkext -nt /System/Library/Extensions
>>> ];
>>> > then
>>> >      xnu_mkext /System/Library/Extensions.mkext
>>> >   else
>>> >      xnu_kextdir /System/Library/Extensions
>>> >   fi
>>> > }
>>> >
>>> >
>>> > This is generated by update-grub:
>>> >
>>> > menuentry "Mac OS X (64-bit) (on /dev/sda2)" --class osx --class darwin
>>> > --class os {
>>> > insmod part_msdos
>>> > insmod hfsplus
>>> > set root='(/dev/sda,msdos2)'
>>> > search --no-floppy --fs-uuid --set=root 689f9c8a6b4f3520
>>> >         load_video
>>> >         set do_resume=0
>>> >         if [ /var/vm/sleepimage -nt10 / ]; then
>>> >            if xnu_resume /var/vm/sleepimage; then
>>> >              set do_resume=1
>>> >            fi
>>> >         fi
>>> >         if [ $do_resume = 0 ]; then
>>> >            xnu_uuid 689f9c8a6b4f3520 uuid
>>> >            if [ -f /Extra/DSDT.aml ]; then
>>> >               acpi -e /Extra/DSDT.aml
>>> >            fi
>>> >            xnu_kernel64 /mach_kernel boot-uuid=${uuid} rd=*uuid
>>> >            if [ /System/Library/Extensions.mkext -nt
>>> > /System/Library/Extensions ]; then
>>> >               xnu_mkext /System/Library/Extensions.mkext
>>> >            else
>>> >               xnu_kextdir /System/Library/Extensions
>>> >            fi
>>> >            if [ -f /Extra/Extensions.mkext ]; then
>>> >               xnu_mkext /Extra/Extensions.mkext
>>> >            fi
>>> >            if [ -d /Extra/Extensions ]; then
>>> >               xnu_kextdir /Extra/Extensions
>>> >            fi
>>> >            if [ -f /Extra/devprop.bin ]; then
>>> >               xnu_devprop_load /Extra/devprop.bin
>>> >            fi
>>> >            if [ -f /Extra/splash.jpg ]; then
>>> >               insmod jpeg
>>> >               xnu_splash /Extra/splash.jpg
>>> >            fi
>>> >            if [ -f /Extra/splash.png ]; then
>>> >               insmod png
>>> >               xnu_splash /Extra/splash.png
>>> >            fi
>>> >            if [ -f /Extra/splash.tga ]; then
>>> >               insmod tga
>>> >               xnu_splash /Extra/splash.tga
>>> >            fi
>>> >         fi
>>> > }
>>> >
>>> > And, finally, this is what I'm using which works by chainloading (one
>>> of
>>> > the commands, possibly search, generates an error, but that's fine, it
>>> > works anyway):
>>> >
>>> > menuentry "Mountain Lion (Chameleon)" --class osx --class darwin
>>> --class os
>>> > {
>>> > insmod part_msdos
>>> > insmod hfsplus
>>> > set root=(hd0,2)
>>> > search --no-floppy --file --set=root (hd0,2)
>>> > parttool (hd0,2) boot+
>>> > sendkey enter
>>> > chainloader /boot0
>>> > }
>>> >
>>> > Any ideas and hints are welcome, thanks!
>>>
>>>
>>
>
_______________________________________________
Help-grub mailing list
Help-grub@gnu.org
https://lists.gnu.org/mailman/listinfo/help-grub

Reply via email to