Jump to content

Clover General discussion


ErmaC
29,866 posts in this topic

Recommended Posts

@dmazar

The first OsxAptioFixDrv-64.efi in post #604 is from r806.

Well, I do not know what could make a difference. The only change in the code of AptioFix from r806 till now is just pausing 1 second instead of 10 seconds if error in exiting boot services occurs. Apart from that, possible changes are:

- changes in edk libraries that this driver uses

- changes in compiler

It was switching from gcc-463 to gcc-472 :|

Link to comment
Share on other sites

:wink2:

 

@ Damzar

 

you are doing a fantastic job, with csm drivers, it seems that the gui access times have improved compared to 915 (I have a 917 now) but I still get some flickering ... more so, you are amazing ... thank you for your work and your commitment

Link to comment
Share on other sites

It was switching from gcc-463 to gcc-472

Yes. Both drivers he uploaded are from you. One compiled with gcc 4.6 and the other with gcc 4.7. Somehow I still think the problem is somewhere else.

 

Here is the one compiled in Win with MS tools. Can you guys check if this makes any difference? We already had an issue once with GCC/MS compile.

OsxAptioFixDrv-64.efi.zip

  • Like 2
Link to comment
Share on other sites

Yes. Both drivers he uploaded are from you. One compiled with gcc 4.6 and the other with gcc 4.7. Somehow I still think the problem is somewhere else.

 

Here is the one compiled in Win with MS tools. Can you guys check if this makes any difference? We already had an issue once with GCC/MS compile.

OsxAptioFixDrv-64.efi.zip

 

Well for me this appears to boot marginally quicker, two seconds instead of three with ATI 6870.

 

Thanks Dmazar et al

Link to comment
Share on other sites

It may be somewhere here

for (Link = gMemoryMap.ForwardLink; Link != &gMemoryMap; Link = Link->ForwardLink) {
 Entry = CR(Link, MEMORY_MAP, Link, MEMORY_MAP_SIGNATURE);
 if ((Entry->Attribute & EFI_MEMORY_RUNTIME) != 0) {
 if (Entry->Type == EfiACPIReclaimMemory || Entry->Type == EfiACPIMemoryNVS) {
	 DEBUG((DEBUG_ERROR | DEBUG_PAGE, "ExitBootServices: ACPI memory entry has RUNTIME attribute set.\n"));
	 Status = EFI_INVALID_PARAMETER;
	 goto Done;
 }
 if ((Entry->Start & (EFI_ACPI_RUNTIME_PAGE_ALLOCATION_ALIGNMENT - 1)) != 0) {
	 DEBUG((DEBUG_ERROR | DEBUG_PAGE, "ExitBootServices: A RUNTIME memory entry is not on a proper alignment.\n"));
	 Status = EFI_INVALID_PARAMETER;
	 goto Done;
 }
 if (((Entry->End + 1) & (EFI_ACPI_RUNTIME_PAGE_ALLOCATION_ALIGNMENT - 1)) != 0) {
	 DEBUG((DEBUG_ERROR | DEBUG_PAGE, "ExitBootServices: A RUNTIME memory entry is not on a proper alignment.\n"));
	 Status = EFI_INVALID_PARAMETER;
	 goto Done;
 }
 }
}

We can't debug at this place because these codes from UEFI ROM.

 

I see, then it's beyond my control. Fortunately, it doesn't appear to cause any problems.

 

Edit: I was poking around in bios looking for settings that might be the cause and disabled Fast Boot - no longer get the invalid parameter :)

Link to comment
Share on other sites

Edit:

 

Could one of the devs please explain the following & how i can get rid of it

Right before GUI enteres i get a message printed on screen ( ~ 2s ) saying...

ASSERT /usr/local/UDK2010/MyWorkSpace/MdePkg/Library/BaseLib/String.c(166): String != ((void *) 0)

 

 

It's gone with r915

Link to comment
Share on other sites

Hi folks

 

I installed clover and I am happy with it. But I want to know something about Icloud fix. I followed the post #24 in the clover instructions and when I type this command in terminal (

ioreg -l -p IODeviceTree | grep \"system-id)

appears this: system-id" = <00000000000000000000000000000000>. Is it correct? In system profile I have the correct number of UUID.

Thanks

Link to comment
Share on other sites

Exactly. If you have kexts in /EFI/Kexts/10.8, then Clover will inject them by default, no extra parameters needed. It can inject into kernelcache also - it does this by patching loaded kernelcache on the fly (made by FrodoKenny). You can kextstat | grep -i FakeSMC in Terminal to check if it is loaded.

 

Another way of injecting kexts from /EFI/kexts is by using FSInject.efi driver and specifying WithKexts option in boot-args or selecting "Boot Mac OS X with extra kexts (skips cache)" in volume boot options in GUI. This one then blocks loading of kernelcache and forces boot.efi to load mach_kernel and drivers separately. It then injects kexts on a filesystem level, making boot.efi to see our kexts from /EFI/kexts/xxx like being in /S/L/E. This also means that this kind of injection can not boot InstallESD.dmg unmodified installer (starts with kernel cache only).

 

About /EFI/kexts/xxx:

- xxx can be OSX version like 10.6, 10.7, 10.8 - Clover will inject kexts from that subfolder for particular OSX version

- if there is no subfolder with the name equal to booted OSX version, then Clover will use /EFI/kexts/Other folder (if exists)

- meaning: having, for example, FakeSMC.kext in /EFI/kexts/Other and not having /EFI/kexts/<version> subfolders will result in injecting FakeSMC.kext from /EFI/kexts/Other for all OSX versions

 

I've never realized I was loading FakeSMC twice because in was in /EFI/Kexts/10.8 and also in /S/L/E

 

Were can I put a copy of FakeSMC on my Clover USB (This is also my 10.8.2 Installer) so I can load it only when needed? Like after a complete install of OSX and booting of the first time?

 

Thanks!

 

-Mrengles

Link to comment
Share on other sites

I know they (Devs) were talking about adding a path for install kexts, a quote from dmazar...

 

We do not know always which version we are booting. This is true for installers, for example. We currently even do not know if we are booting installer - if it is restored InstallESD.dmg. But, I guess we can add detection for that.

 

When Clover will know that it is booting installer (when mentioned detection is added) or recovery partition (we know that now), then I think the easier thing to do (and the most easier to explain to users) would be to just use /efi/kext/installer or similar. Without any additional versioning. One folder for all installers and recoveries - it will usually be just FakeSMC anyway. No fallback to /efi/kexts/other. And no additional FakeSMC detection, because I think it would just complicate the Clover functionality and options which are quite complicated now.

Link to comment
Share on other sites

You mean you've installed Clover on all volumes ? Why would you do that ?

I think at least 2 instances is realistic, in case of a broken local installed instance of clover which doesn't boot, a second installed instance of clover on a external USB or from the Clover ISO CD version must be able to do the re-install/fix of the internal volume. Of course I see no reason of having multiple instances of clover installed and active alltime, but at least in a recovery scenario it must work without conflict. Still no one? I have this problem on multiple systems.

 

Can't talk about Chimera here, but i have chameleon boot file + Extra folder on the same EFI partition like Clover, with other kexts aswell, but they never get loaded from Clover...

I think it does need the option "WithKexts" to conflict with /Extra/Extensions. ###### installes some ElliotRTC..kext installed in /Extra/Extensions while booting clover it shows :-D up in the console with yellow letters cannot load that kext. This patch was not in the /EFI/Kexts/ directory nor some where else in that volume.

 

Setup:

I use USB stick with MBR scheme, formated with HFS+ partition for external clover and internal disks are GUID scheme with clover as MBR install on the active HFS+ volume, the real EFI partition isn't used. I'm booting all the systems in BIOS mode.

 

Next week I will be able to test real MacPro1.1/2.1 again with clover(they gave black screen, I think because real refit was installed). I can also make some VIDEO bios dumps for Nvidia gtx 640 2GB versions, if there still needed for the high resolution bootscreen patch.

Link to comment
Share on other sites

I've never realized I was loading FakeSMC twice because in was in /EFI/Kexts/10.8 and also in /S/L/E

 

Were can I put a copy of FakeSMC on my Clover USB (This is also my 10.8.2 Installer) so I can load it only when needed? Like after a complete install of OSX and booting of the first time?

 

Thanks!

 

-Mrengles

 

 

Just create a folder named temp or anything you want in your USB, and save it there.

AFAIK, Clover doesn't care.

Link to comment
Share on other sites

I know this is a weird question? Can clover change or inject my wifi card regdomain somehow?

 

My Atheros AR9380 is using some type of world mode and the highest 5ghz channel available is 64. Mean while in windows 7 I have no problems and can get up to channel 191 (If I remember right, regardless it's much higher).

 

Thanks,

 

Mrengles

Link to comment
Share on other sites

I know this is a weird question? Can clover change or inject my wifi card regdomain somehow? Guess the location is input by Apple.

 

My Atheros AR9380 is using some type of world mode and the highest 5ghz channel available is 64. Mean while in windows 7 I have no problems and can get up to channel 191 (If I remember right, regardless it's much higher).

 

Thanks,

 

Mrengles

 

 

 

It has to be a driver issue. You would likely best go for and Apple Airport Extreme Card mounted on a PCie Card. Mine functions very well both in Win8 and OSX.

 

What does your OSX System info say about WiFi, as my location codes are input by Apple

 

 

en1:

Card Type: AirPort Extreme (0x14E4, 0x8E)

Firmware Version: Broadcom BCM43xx 1.0 (5.106.98.100.16)

MAC Address: xxxxxxxxxxx

Locale: APAC

Country Code: SG

Supported PHY Modes: 802.11 a/b/g/n

Supported Channels: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165

Wake On Wireless: Supported

AirDrop: Supported

Status: Connected

Current Network Information:

 

 

Guess Clover cannot work too many miracles ....

Link to comment
Share on other sites

Regarding Sleep/Wake with Z77X-UD5H and booting Clover in UEFI mode, I've found out that disabling xHCI or setting xHCI to Auto but disabling xHCI port 1/4 Switchable I can sleep and wake just fine.

But I get a new error on the system log:

 

Dec 7 23:44:25 localhost kernel[0]: IOHIDSystem cursor update overdue. Resending.

 

Which causes a little mouse pointer lag sometimes

 

Didn't test auto-sleep yet

 

ps. I'm using darkwake=no just like I had before in Chameleon

Link to comment
Share on other sites

Is it possible to add RealtekRTL81xx.kext to the install process so my LAN network works on install?

 

I should say I do have the file in /EFI/OEM/EP45-UD3P/Kexts/10.8 but it doesn't work until I run Kext Utility after install...

 

 

Oh and I assume ProjectOSX is down for everyone?

Link to comment
Share on other sites

Compiled version 926 and my system its automaticly become imac 13.1

Edit:

Booting stop after loading boot.efi with message "This version of OSX not supported on this platform" Reason : MAC-00b6............

 

My cpu its 3770k Ivy Bridge but its running on sandy bridge motherboard p67 chipset.

Link to comment
Share on other sites

Compiled version 926 and my system its automaticly become imac 13.1

Booting stop after loading boot.efi with message "OSX cannot run on this platform"

My cpu its 3770k Ivy Bridge but its running on sandy bridge motherboard p67 chipset.

 

You compile with clover grow ?

Link to comment
Share on other sites

×
×
  • Create New...