Jump to content
30960 posts in this topic

Recommended Posts

55 minutes ago, Zenith432 said:

@Badruzeus: I think it's a typo.  Remove the offending line



diff a/rEFIt_UEFI/Platform/HdaCodecDump.c b/rEFIt_UEFI/Platform/HdaCodecDump.c --- a/rEFIt_UEFI/Platform/HdaCodecDump.c +++ b/rEFIt_UEFI/Platform/HdaCodecDump.c @@ -404,7 +404,6 @@ EFI_STATUS SaveHdaDumpBin() { } } - CodecAddress; Status = HdaIo->GetAddress(HdaIo, &CodecAddress); CopyMem(HdaCodec.Header, hdcID, 4);

It works, many thanks. Codec Dump'ed successfully either using "F8" > \efi\clover\misc.

Screenshot 23.png

EFI-r4886.zip

misc_r4886_preboot_CodecDump.zip

  • Like 1
2 hours ago, Zenith432 said:

@Badruzeus: I think it's a typo.  Remove the offending line


diff a/rEFIt_UEFI/Platform/HdaCodecDump.c b/rEFIt_UEFI/Platform/HdaCodecDump.c
--- a/rEFIt_UEFI/Platform/HdaCodecDump.c
+++ b/rEFIt_UEFI/Platform/HdaCodecDump.c
@@ -404,7 +404,6 @@ EFI_STATUS SaveHdaDumpBin() {
                        }
                }
                
-               CodecAddress;
                Status = HdaIo->GetAddress(HdaIo, &CodecAddress);
                
                CopyMem(HdaCodec.Header, hdcID, 4);

 

Really!

Before the commit I tested with VS2013 compilation and fix some warnings. This one is not a warning for VS!

  • Like 1
5 minutes ago, arsradu said:

Thanks @Slice for the fix on commit 4887. :) All good now building Clover. Also, implementing that functionality right inside Clover was an awesome idea! Well done!

Credits to headkaze as well as explanations from him.

  • Like 3

About my GT 520 HDMI "HdaCodec#0 (NVIDIA (Unknown))" is it because 0x10DE001C already taken by GT610?

Can a same Device ID used by 2 different Audio models? Thanks.

Edited by Badruzeus
47 minutes ago, Matgen84 said:

Commit r4887: my question may be stupid: audiodxe must be installed to press F8 and get  HdacodecDump in misc folder? Right.

No, it does not require any additional files.. Yes you require AudioDxe-64.efi installed in CLOVER/drivers64UEFI.

 

Note that there is some sort of bug with the filename creation. Hopefully it can be fixed soon.

Edited by headkaze
  • Like 3
2 minutes ago, headkaze said:

No, it does not require any additional files.

 

Note that there is some sort of bug with the filename creation. Hopefully it can be fixed soon.

 

Thanks for your reply. Actually, I don't use audiodxe, there is no HdacodecDump file when I press F8 on my system.

Has anyone been able to use clover to boot into Windows USB installer? On the selection screen, I can see the "Windows EFI" partition. Selecting this then displays "Press any key to continue booting from CD/DVD". Pressing any key just gives me a blank screen. If I boot into the Windows EFI directly instead of Clover, the installation process is normal.

 

Both Clover and Windows are UEFI boot.

 

The reason why I'm doing this is that I'm trying to install Windows to an NVMe card (connected to a PCIe slot) that's installed in a PC that doesn't support NVMe natively. I'm trying to use Clover as a frontend. I've also used Clover as a frontend to OSX that's installed on an NVMe card on a PC that also has no support for NVMe natively.

 

Thanks

Edited by mrjayviper
  • Like 1
4 hours ago, mrjayviper said:

Has anyone been able to use clover to boot into Windows USB installer? On the selection screen, I can see the "Windows EFI" partition. Selecting this then displays "Press any key to continue booting from CD/DVD". Pressing any key just gives me a blank screen. If I boot into the Windows EFI directly instead of Clover, the installation process is normal.

 

Both Clover and Windows are UEFI boot.

 

The reason why I'm doing this is that I'm trying to install Windows to an NVMe card (connected to a PCIe slot) that's installed in a PC that doesn't support NVMe natively. I'm trying to use Clover as a frontend. I've also used Clover as a frontend to OSX that's installed on an NVMe card on a PC that also has no support for NVMe natively.

 

Thanks

 

Do you try to boot directly into Windows USB Installer? and boot into Clover after Windows installation completed!

Hi guys,

 

Any idea what's up with this? Worked fine yesterday when building 4888. But now, I get this. And of course, no drivers for AptioMemoryFix and AppleUiSupport in the installer. I'm curious why unknown version though. I doubt this is somehow Clover related, since it worked yesterday, with revision 4888. And although now we're at 4889, I don't think the changes in HdaCodecDump.c would cause third party drivers to be skipped. Still, I'm wondering what could cause this.

 

1638646456_Screenshot2019-02-28at11_41_54.png.8850a4bc349a82bd828633f8430cb95e.png

Edited by arsradu
37 minutes ago, arsradu said:

Hi guys,

 

Any idea what's up with this? Worked fine yesterday when building 4888. But now, I get this. And of course, no drivers for AptioMemoryFix and AppleUiSupport in the installer. I'm curious why unknown version though. I doubt this is somehow Clover related, since it worked yesterday, with revision 4888. And although now we're at 4889, I don't think the changes in HdaCodecDump.c would cause third party drivers to be skipped. Still, I'm wondering what could cause this.



1638646456_Screenshot2019-02-28at11_41_54.png.8850a4bc349a82bd828633f8430cb95e.png

 

No issue here, I'm using UDK and build with ./ebuild.sh -fr or --ext-co -fr, both worked fine.

Spoiler

Last login: Thu Feb 28 17:14:53 on ttys000
MacBook-Pro:~ badruzeus$ cd ~/udk/UDK2018/
MacBook-Pro:UDK2018 badruzeus$ svn co svn://svn.code.sf.net/p/cloverefiboot/code/ Clover
U    Clover/rEFIt_UEFI/Platform/HdaCodecDump.c
Checked out revision 4889.
MacBook-Pro:UDK2018 badruzeus$ cd Clover
MacBook-Pro:Clover badruzeus$ ./ebuild.sh -fr
TOOLCHAIN_DIR: /Users/badruzeus/udk/UDK2018/Clover/../../opt/local
MTOC_PREFIX: /usr/local/bin/
NASM_PREFIX: /opt/local/bin/
NASM_VER: 2.14.02
Initializing workspace
Loading previous configuration from /Users/badruzeus/udk/UDK2018/Conf/BuildEnv.sh
WORKSPACE: /Users/badruzeus/udk/UDK2018
EDK_TOOLS_PATH: /Users/badruzeus/udk/UDK2018/BaseTools
CONF_PATH: /Users/badruzeus/udk/UDK2018/Conf

Running edk2 build for CloverX64 using the command:
build  -D USE_LOW_EBDA -D HAVE_LEGACY_EMURUNTIMEDXE -p Clover/Clover.dsc  -a X64 -b RELEASE -t XCODE8 -n 5 

Build environment: Darwin-15.6.0-x86_64-i386-64bit
Build start time: 17:16:55, Feb.28 2019

WORKSPACE        = /Users/badruzeus/udk/UDK2018
ECP_SOURCE       = /Users/badruzeus/udk/UDK2018/EdkCompatibilityPkg
EDK_SOURCE       = /Users/badruzeus/udk/UDK2018/EdkCompatibilityPkg
EFI_SOURCE       = /Users/badruzeus/udk/UDK2018/EdkCompatibilityPkg
EDK_TOOLS_PATH   = /Users/badruzeus/udk/UDK2018/BaseTools
CONF_PATH        = /Users/badruzeus/udk/UDK2018/Conf


Architecture(s)  = X64
Build target     = RELEASE
Toolchain        = XCODE8

Active Platform          = /Users/badruzeus/udk/UDK2018/Clover/Clover.dsc
Flash Image Definition   = /Users/badruzeus/udk/UDK2018/Clover/Clover.fdf

Processing meta-data ................ done!
...
(Cencored)
...
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/AppleImageCodec/AppleImageCodec.inf [X64]
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/AppleUITheme/AppleUITheme.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/HashServiceFix/HashServiceFix.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/AppleKeyAggregator/AppleKeyAggregator.inf [X64]
make: Nothing to be done for `tbuild'.
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/AppleKeyFeeder/AppleKeyFeeder.inf [X64]
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/DumpUefiCalls/DumpUefiCalls.inf [X64]
make: Nothing to be done for `tbuild'.
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/OsxFatBinaryDrv/OsxFatBinaryDrv.inf [X64]
Building ... /Users/badruzeus/udk/UDK2018/Clover/Protocols/EmuVariableUefi/EmuVariableRuntimeDxe.inf [X64]
make: Nothing to be done for `tbuild'.
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/Drivers/AudioDxe/AudioDxe.inf [X64]
Building ... /Users/badruzeus/udk/UDK2018/Clover/bdmesg_efi/bdmesg.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/ShellPkg/Application/Shell/Shell.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/rEFIt_UEFI/refit.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/OsxAptioFixDrv/OsxAptioFixDrv.inf [X64]
make: Nothing to be done for `tbuild'.
Building ... /Users/badruzeus/udk/UDK2018/Clover/OsxAptioFixDrv/OsxAptioFix3Drv.inf [X64]
[CC] EfiLoader
[CC] OsxAptioFix3Drv
[CC] BdsEntry
[CC] OsxAptioFixDrv
[CC] main
[SLINK] EfiLoader
[SLINK] OsxAptioFixDrv
[SLINK] OsxAptioFix3Drv
[SLINK] BdsDxe
[DLINK1] EfiLoader
[DLINK1] OsxAptioFix3Drv
[DLINK1] OsxAptioFixDrv
[DLINK1] BdsDxe
[MTOC] OsxAptioFix3Drv
[MTOC] OsxAptioFixDrv
[MTOC] EfiLoader
[MTOC] BdsDxe
[GENFW] EfiLoader
[GENFW] OsxAptioFixDrv
Building ... /Users/badruzeus/udk/UDK2018/Clover/OsxLowMemFixDrv/OsxLowMemFixDrv.inf [X64]
[GENFW] OsxAptioFix3Drv
[GENFW] BdsDxe
[CC] menu
[CC] OsxLowMemFixDrv
[SLINK] OsxLowMemFixDrv
[DLINK1] OsxLowMemFixDrv
[MTOC] OsxLowMemFixDrv
[GENFW] OsxLowMemFixDrv
[CC] HdaCodecDump
[SLINK] CLOVER
[DLINK1] CLOVER
[MTOC] CLOVER
[GENFW] CLOVER

Generating DUETEFIMAINFVX64 FV
###
GUID cross reference file can be found at /Users/badruzeus/udk/UDK2018/Build/Clover/RELEASE_XCODE8/FV/Guid.xref

FV Space Information
DUETEFIMAINFVX64 [42%Full] 2752512 total, 1181720 used, 1570792 free

- Done -
Build end time: 17:17:37, Feb.28 2019
Build total time: 00:00:42

Compressing DUETEFIMainFv.FV ...
Encoding
Compressing DxeCore.efi ...
Encoding
Compressing DxeIpl.efi ...
Encoding
Generate Loader Image ...
Created /Users/badruzeus/udk/UDK2018/Build/Clover/RELEASE_XCODE8/FV/Efildr64
warning: boot file bigger than low-ebda permits, switching to --std-ebda
943+0 records in
943+0 records out
482816 bytes transferred in 0.008226 secs (58694484 bytes/sec)
Copy CloverEFI:
  -> boot6
Changing byte at 0xa9 of boot6 to show 6 as init message:
1+0 records in
1+0 records out
1 bytes transferred in 0.000029 secs (34664 bytes/sec)
  -> BOOTX64.efi
  -> CLOVERX64.efi
Copy Mandatory drivers:
  -> FSInject-64.efi
  -> XhciDxe-64.efi
  -> SMCHelper-64.efi
  -> AudioDxe-64.efi
  -> AppleImageCodec-64.efi
  -> AppleKeyAggregator-64.efi
  -> AppleUITheme-64.efi
  -> FirmwareVolume-64.efi
  -> FSInject-64.efi
  -> DataHubDxe-64.efi
  -> SMCHelper-64.efi
  -> AudioDxe-64.efi
  -> AppleImageCodec-64.efi
  -> AppleUITheme-64.efi
  -> AppleKeyAggregator-64.efi
  -> FirmwareVolume-64.efi
  -> VBoxHfs-64.efi
  -> GrubEXFAT-64.efi
  -> GrubISO9660-64.efi
  -> GrubNTFS-64.efi
  -> GrubUDF-64.efi
  -> AptioMemoryFix-64.efi
  -> AptioInputFix-64.efi
  -> AppleUISupport-64.efi
  -> ApfsDriverLoader-64.efi
  -> ApfsDriverLoader-64.efi
  -> AppleImageLoader-64.efi
  -> AppleImageLoader-64.efi
  -> CsmVideoDxe-64.efi
  -> EnglishDxe-64.efi
  -> EmuVariableUefi-64.efi
  -> Fat-64.efi
  -> NvmExpressDxe-64.efi
  -> OsxAptioFix3Drv-64.efi
  -> OsxAptioFixDrv-64.efi
  -> OsxFatBinaryDrv-64.efi
  -> OsxLowMemFixDrv-64.efi
  -> PartitionDxe-64.efi
  -> Ps2MouseDxe-64.efi
  -> UsbKbDxe-64.efi
  -> UsbMouseDxe-64.efi
  -> VBoxExt2-64.efi
  -> VBoxExt4-64.efi
  -> VBoxIso9600-64.efi
  -> AppleKeyFeeder-64.efi
  -> HashServiceFix-64.efi
Copy Applications:
  -> bdmesg.efi
  -> Shell64U.efi
Done!

Generating BootSectors
make: Nothing to be done for `all'.
Done! 

 

 

  • Like 2

Thanks, @Slice and @Badruzeus for your quick feedback. Indeed, it seems there was a weird server issue, and it just failed to download the files. On a second attempt, it worked just fine.

Edited by arsradu
  • Like 1
22 minutes ago, Slice said:

It seems external server cancel to provide the files. So why I prefer to keep all sources in one repo.

 

I agree. At least if it fails, it fails for all. But, having some sources compile perfectly fine, while others are not, simply because they're not hosted in the same place...yeah, that can be problematic sometimes. Especially when there are important files that need to be compiled with those sources.

  • Like 1
Can anyone tell me what appleimageloader.kext is for ? Is it only for filevault ?

  For as far as I know AppleUiSupport is for FileVault. AppleImageLoader is something else.

 

According to the developer's description, it's a:

 

 

Secure AppleEfiFat binary driver with implementation of AppleLoadImage protocol with EfiBinary signature verification.

It provides secure loading of Apple EFI binary files into memory by pre-authenticating its signature.

  Also, it's been removed from AppleSupportPkg starting with version 2.0.5 until it gets Secure Boot compatibility.

 

1374496643_Screenshot2019-03-04at23_42_11.thumb.png.56928a5ecf3150a0272bfc5ba92b27b0.png

 

More info here.

 

 

Edited by arsradu
  • Thanks 1

Hi guys,

 

Whoever thought of making an EFI backup on the target disk was an absolute genius! That was a brilliant idea.

 

Now, I'm thinking of the following scenario:

Let's say you updated to the latest version of Clover and...for some reason, you can't boot anymore. And you don't have a USB drive with another version of Clover.

You still have access to the Clover UI, but you don't have access to the drivers folder for example (maybe that would be another useful feature), assuming you know that's where the issue resides. But regardless, you know you have a working backup on your target disk. So you can attempt to restore one of the previous versions.

 

Unfortunately...there is no easy way to do that. Or maybe there is and I'm making a total fool of myself writing this. :)) I mean, I guess you could boot in single-user mode and try to copy the content of your backup folder over the current one. Now, one thing I don't know...is whether or not, when you do this, it replaces everything...or adds to the current content. Cause that might cause more issues than it solves... Also, I don't know how many people know how to do this from command line in the first place.

 

So, the idea here is: would it be possible to have a feature to restore a backup of Clover (from the target partition) using the Clover UI itself (assuming you can boot into the UI of course)?

 

I mean, I'm thinking something like this:

  1. scan the target disk for available backups
  2. display the results
  3. let the user choose the one he thinks might be the most reliable one
  4. load that one and replace the current installation with that new/old one.

 

It's just an idea, but also an open discussion. And I would love to know your opinion on it. :) 

 

Alternatively...can we maybe just allow the user to select a backup to boot only that specific time? He can fix his current EFI installation once he gets back into the OS, I guess. Something similar to what we have right now for loading a backup config (another really useful feature). Only in this case, we're not loading only the config from EFI/Clover/Config, but loading the entire folder from EFI-Backups.

 

Maybe I'm missing something here and this idea won't work. Or at least in its current form. Nonetheless, I'd love to know your opinion.

 

Thanks guys!

 

Aaand keep up the good work. :)

Edited by arsradu
  • Like 2
×
×
  • Create New...