Jump to content

Clover General discussion


ErmaC
30,171 posts in this topic

Recommended Posts

Apple's boot.efi is a first stage boot loader, but it becomes a second-stage boot loader when Clover is used. That makes Clover not only a boot manager, but also a first-stage boot loader.

Yes, it is a participant of the bootstrap process. Just a terminology for names.

Legacy boot by Clover assumes several stages:

BIOS->MBR->PBR->boot->CloverX64.efi->boot.efi->OSX

in this case Clover is not the first-stage as well as not last stage loader.

To compare Chameleon process

BIOS->MBR->PBR->boot->OSX

 

For end-user Clover is Bootloader because this is complex solution to load OSX.

Technically speaking Clover is not loader. It calls other systems loaders to do the work.

  • Like 3
Link to comment
Share on other sites

This could be fixed by Clover injection. This is the method spied from Mac EFI.

This is cosmetic and I already shown how to make info into System Profiler.

Post#43 AAPL,slot-name

 

 

Thanks for your help, but actually y does not work for me: No boot screen.

Also still no drivers load until they are patched. As you said; the PCI patch is only cosmetic.

This is what the Boot.log outputs:

2:927 0:000 read_nVidia_ROM
2:927 0:000 Using PRAMIN fixups
3:275 0:347 PROM
3:619 0:344 ERROR: Unable to locate nVidia Video BIOS
3:619 0:000 there are no ROM loaded and no VBIOS read from hardware
3:619 0:000 nVidia XFX GeForce 8500 GT 1MB NV1FF [10DE:0421] ::
3:619 0:000 PciRoot(0x0)\Pci(0x1,0x0)\Pci(0x0,0x0)\Pci(0x4,0x0)\Pci(0x0,0x0)\Pci(0x3,0x0)\Pci(0x0,0x0)
3:619 0:000 devprop_add_nvidia_template
3:619 0:000 default_NVCAP: 04000000-00000300-0C000000-00000007-00000000
3:619 0:000 stringlength = 3608
3:619 0:000 CurrentMode: Width=1280 Height=800 

 

 

Link to comment
Share on other sites

Anyone, just to confirm something. The second stage boot logo (+ loading bar) is loaded by the kernel, right? Not Clover.

 

I'm asking cause, starting with Yosemite DP3 or DP4 I have an issue with the second-stage boot logo: the logo is not displayed at all, and the loading bar is on the bottom left corner instead of being centered. The first stage boot is perfect. The logo is centered, loading bar underneath. All fine.

 

And I'm not sure this has anything to do with the port I'm using (VGA, since my monitor doesn't know any digital port...for now, I'll upgrade it soon) because other people with their displays connected via HDMI are having the exact same issue.

 

Anyway, if this is not related to Clover in any way, sorry for the off-topic. I just wanted to make sure it doesn't have anything to do with Clover and it can't be fixed in any way (at least not Clover-related way).

 

Right now, I'm out of ideas. And apparently, other people too.

Link to comment
Share on other sites

@Rastafabi

I don't know why nVidia injection is not working in your case GF8500GT. It tested on my GF7300LE and GF9600GT as well as on numerous users on this forum. May be because you have a real Mac.

For example this is bad message

3:619 0:000 there are no ROM loaded and no VBIOS read from hardware

May be you should load VBIOS additionally from /EFI/CLOVER/ROM/10de_0421.rom

May be you should set DSDT fix for the card. It have too long address

PciRoot(0x0)\Pci(0x1,0x0)\Pci(0x0,0x0)\Pci(0x4,0x0)\Pci(0x0,0x0)\Pci(0x3,0x0)\Pci(0x0,0x0)

Anyone, just to confirm something. The second stage boot logo (+ loading bar) is loaded by the kernel, right? Not Clover.

 

I'm asking cause, starting with Yosemite DP3 or DP4 I have an issue with the second-stage boot logo: the logo is not displayed at all, and the loading bar is on the bottom left corner instead of being centered. The first stage boot is perfect. The logo is centered, loading bar underneath. All fine.

 

And I'm not sure this has anything to do with the port I'm using (VGA, since my monitor doesn't know any digital port...for now, I'll upgrade it soon) because other people with their displays connected via HDMI are having the exact same issue.

 

Anyway, if this is not related to Clover in any way, sorry for the off-topic. I just wanted to make sure it doesn't have anything to do with Clover and it can't be fixed in any way (at least not Clover-related way).

 

Right now, I'm out of ideas. And apparently, other people too.

First stage logo comes from boot.efi based on UEFI screen resolution.

Second stage logo comes from kernel based on systems graphics drivers screen resolution.

  • Like 2
Link to comment
Share on other sites

Anyone, just to confirm something. The second stage boot logo (+ loading bar) is loaded by the kernel, right? Not Clover.

 

I'm asking cause, starting with Yosemite DP3 or DP4 I have an issue with the second-stage boot logo: the logo is not displayed at all, and the loading bar is on the bottom left corner instead of being centered. The first stage boot is perfect. The logo is centered, loading bar underneath. All fine.

 

And I'm not sure this has anything to do with the port I'm using (VGA, since my monitor doesn't know any digital port...for now, I'll upgrade it soon) because other people with their displays connected via HDMI are having the exact same issue.

 

Anyway, if this is not related to Clover in any way, sorry for the off-topic. I just wanted to make sure it doesn't have anything to do with Clover and it can't be fixed in any way (at least not Clover-related way).

 

Right now, I'm out of ideas. And apparently, other people too.

 

I've the same problem on my machine. It doesn't seem to affect anything else AFAICT, only a cosmetic issue.

Link to comment
Share on other sites

Second stage logo may depend on AAPL,boot-display property if you set it.

I didn't... And I saw your post above. But I'm not sure there is anything wrong there. Aside from the fact that the graphics card appears both under Graphics and PCI. Which i assume it's correct. I'll show you in a minute.

 

post-1303722-0-58443000-1441341327_thumb.png post-1303722-0-56231000-1441341338_thumb.png

 

So, do I still need to add/edit anything for this case?

  • Like 1
Link to comment
Share on other sites

It's a known bug which can usually be fixed by injecting gfx properties for some reason.

What kind of properties? I remember I tried this in the past and...same issue.

 

Also, yesterday I tried connecting the display to the built-in (IntelHD 4600, if I'm not mistaken) graphics card. And...two issues: no acceleration and same problem with the second stage boot logo. Also, using the built-in graphics when you have a dedicated video card for that, it's like owning a Ferrari but keeping it in your garage while driving a mini van.

 

So, which properties need to be set up? Can we use Clover (or Clover Configurator) for that?

Link to comment
Share on other sites

What kind of properties? I remember I tried this in the past and...same issue.

 

Also, yesterday I tried connecting the display to the built-in (IntelHD 4600, if I'm not mistaken) graphics card. And...two issues: no acceleration and same problem with the second stage boot logo.

Clover should auto-detect the HD 4600 and set correct params for gfx acceleration. At least it always has for me. Though the 2nd-stage boot logo issue remains.

 

I did find a set of kext injects on the forum recently (can't recall where, try search) for supposedly correcting said boot logo issue, but these gave me kernel panics.

Link to comment
Share on other sites

What kind of properties? I remember I tried this in the past and...same issue.

 

Also, yesterday I tried connecting the display to the built-in (IntelHD 4600, if I'm not mistaken) graphics card. And...two issues: no acceleration and same problem with the second stage boot logo. Also, using the built-in graphics when you have a dedicated video card for that, it's like owning a Ferrari but keeping it in your garage while driving a mini van.

 

So, which properties need to be set up? Can we use Clover (or Clover Configurator) for that?

	<key>NoDefaultProperties</key>
	<true/>
	<key>AddProperties</key>
		<array>
			<dict>
				<key>Device</key>
				<string>NVidia</string>
				<key>Key</key>
				<string>AAPL,boot-display</string>
				<key>Value</key>
				<data>AQAAAA==</data>
			</dict>

  • Like 1
Link to comment
Share on other sites

InjectNVidia and InjectIntel.

 

InjectIntel unavailable when init display first is set to pcie in bios

 

	<key>NoDefaultProperties</key>
	<true/>
	<key>AddProperties</key>
		<array>
			<dict>
				<key>Device</key>
				<string>NVidia</string>
				<key>Key</key>
				<string>AAPL,boot-display</string>
				<key>Value</key>
				<data>AQAAAA==</data>
			</dict>

 

maybe it need port to be specified like "@x,AAPL,boot-display"?

Link to comment
Share on other sites

Yes, you are right.

Where "X" marks the spot, I presume. :))

 

How do I know which port is the right one? Can I tell from System Information? Like the screenshots I posted above? Is "port" similar to "slot"? So, in my case, it would be port/slot 0 for my video card?

 

So, in the end, it will be like: <string>@0,AAPL,boot-display</string> ?

Link to comment
Share on other sites

watch your "AppleDisplay" key in reg, i think

 

j5Xjjyz.png

 

My blog post about boot-stage, please use google translate :)

 

 

Looks like you used a GTX 650 for that, which is awesome, since we have pretty similar cards. I'll read that page and let you guys know the result. Big thank you from my side!

Link to comment
Share on other sites

InjectIntel unavailable when init display first is set to pcie in bios

 

 

maybe it need port to be specified like "@x,AAPL,boot-display"?

I've added property "@2,AAPL,boot-display", but boot display glitch remains. Tried @0 as well, no change.

Link to comment
Share on other sites

×
×
  • Create New...