Skip to content

Commit 2fa933e

Browse files
author
jief
committed
Debug code. No change.
1 parent a13caff commit 2fa933e

3 files changed

Lines changed: 63 additions & 52 deletions

File tree

rEFIt_UEFI/cpp_lib/MemoryTracker.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#define CPP_LIB_MEMORYTRACKER_H_
1010

1111
#ifdef JIEF_DEBUG
12-
#define MEMORY_TRACKER_ENABLED
12+
//#define MEMORY_TRACKER_ENABLED
1313
#endif
1414

1515

rEFIt_UEFI/refit/main.cpp

Lines changed: 61 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,22 @@
119119
#define PCAT_RTC_ADDRESS_REGISTER 0x70
120120
#define PCAT_RTC_DATA_REGISTER 0x71
121121

122+
#ifdef JIEF_DEBUG
123+
/*
124+
* Define READ_FROM_OC to have mOpenCoreConfiguration initialized from config-oc.plist
125+
* The boot should work.
126+
* Next, comment out the next lines one by one. Once the boot failed, we got the section that
127+
* holds the setting that makes a difference.
128+
*/
129+
//#define USE_OC_SECTION_Acpi
130+
//#define USE_OC_SECTION_Booter
131+
//#define USE_OC_SECTION_DeviceProperties
132+
//#define USE_OC_SECTION_Kernel
133+
//#define USE_OC_SECTION_Misc
134+
//#define USE_OC_SECTION_Nvram
135+
//#define USE_OC_SECTION_PlatformInfo
136+
//#define USE_OC_SECTION_Uefi
137+
#endif
122138

123139
// variables
124140

@@ -291,13 +307,14 @@ OcMain (
291307
EFI_STATUS Status;
292308
// OC_PRIVILEGE_CONTEXT *Privilege;
293309

294-
DEBUG ((DEBUG_INFO, "OC: OcMiscEarlyInit...\n"));
310+
DBG("OC: OcMiscEarlyInit...\n");
295311
Status = OcMiscEarlyInit (
296312
Storage,
297313
&mOpenCoreConfiguration,
298314
mOpenCoreVaultKey
299315
);
300316

317+
DBG("OC: OcMiscEarlyInit=%s\n", efiStrError(Status));
301318
if (EFI_ERROR (Status)) {
302319
return;
303320
}
@@ -306,7 +323,7 @@ OcMain (
306323

307324
// DEBUG ((DEBUG_INFO, "OC: OcLoadNvramSupport...\n"));
308325
// OcLoadNvramSupport (Storage, &mOpenCoreConfiguration);
309-
DEBUG ((DEBUG_INFO, "OC: OcMiscMiddleInit...\n"));
326+
DBG("OC: OcMiscMiddleInit...\n");
310327
OcMiscMiddleInit (
311328
Storage,
312329
&mOpenCoreConfiguration,
@@ -315,21 +332,19 @@ OcMain (
315332
mStorageHandle,
316333
mOpenCoreConfiguration.Booter.Quirks.ForceBooterSignature ? mOpenCoreBooterHash : NULL
317334
);
318-
DEBUG ((DEBUG_INFO, "OC: OcLoadUefiSupport...\n"));
335+
DBG("OC: OcLoadUefiSupport...\n");
319336
OcLoadUefiSupport (Storage, &mOpenCoreConfiguration, &mOpenCoreCpuInfo, mOpenCoreBooterHash);
320-
// DEBUG_CODE_BEGIN ();
321-
// DEBUG ((DEBUG_INFO, "OC: OcMiscLoadSystemReport...\n"));
322-
// OcMiscLoadSystemReport (&mOpenCoreConfiguration, mStorageHandle);
323-
// DEBUG_CODE_END ();
324-
// DEBUG ((DEBUG_INFO, "OC: OcLoadAcpiSupport...\n"));
325-
// OcLoadAcpiSupport (&mOpenCoreStorage, &mOpenCoreConfiguration);
326-
// DEBUG ((DEBUG_INFO, "OC: OcLoadPlatformSupport...\n"));
337+
#ifdef USE_OC_SECTION_Acpi
338+
DBG("OC: OcLoadAcpiSupport...\n");
339+
OcLoadAcpiSupport (&mOpenCoreStorage, &mOpenCoreConfiguration);
340+
#endif
341+
// DBG("OC: OcLoadPlatformSupport...\n"));
327342
// OcLoadPlatformSupport (&mOpenCoreConfiguration, &mOpenCoreCpuInfo);
328-
// DEBUG ((DEBUG_INFO, "OC: OcLoadDevPropsSupport...\n"));
343+
// DBG("OC: OcLoadDevPropsSupport...\n"));
329344
// OcLoadDevPropsSupport (&mOpenCoreConfiguration);
330-
DEBUG ((DEBUG_INFO, "OC: OcMiscLateInit...\n"));
345+
DBG("OC: OcMiscLateInit...\n");
331346
OcMiscLateInit (Storage, &mOpenCoreConfiguration);
332-
DEBUG ((DEBUG_INFO, "OC: OcLoadKernelSupport...\n"));
347+
DBG("OC: OcLoadKernelSupport...\n");
333348
OcLoadKernelSupport (&mOpenCoreStorage, &mOpenCoreConfiguration, &mOpenCoreCpuInfo);
334349

335350
if (mOpenCoreConfiguration.Misc.Security.EnablePassword) {
@@ -343,7 +358,7 @@ OcMain (
343358
// Privilege = NULL;
344359
}
345360

346-
DEBUG ((DEBUG_INFO, "OC: All green, starting boot management...\n"));
361+
DBG("OC: All green, starting boot management...\n");
347362

348363
// OcMiscBoot (
349364
// &mOpenCoreStorage,
@@ -964,20 +979,6 @@ void LOADER_ENTRY::StartLoader()
964979
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL* FileSystem = OcLocateFileSystem(OcLoadedImage->DeviceHandle, OcLoadedImage->FilePath);
965980
Status = OcStorageInitFromFs(&mOpenCoreStorage, FileSystem, NULL, NULL, self.getCloverDirFullPath().wc_str(), NULL);
966981

967-
/*
968-
* Define READ_FROM_OC to have mOpenCoreConfiguration initialized from config-oc.plist
969-
* The boot should work.
970-
* Next, comment out the next lines one by one. Once the boot failed, we got the section that
971-
* holds the setting that makes a difference.
972-
*/
973-
//#define USE_OC_SECTION_Acpi
974-
//#define USE_OC_SECTION_Booter
975-
//#define USE_OC_SECTION_DeviceProperties
976-
//#define USE_OC_SECTION_Kernel
977-
//#define USE_OC_SECTION_Misc
978-
//#define USE_OC_SECTION_Nvram
979-
//#define USE_OC_SECTION_PlatformInfo
980-
//#define USE_OC_SECTION_Uefi
981982

982983
#if !defined(USE_OC_SECTION_Acpi) && !defined(USE_OC_SECTION_Booter) && !defined(USE_OC_SECTION_DeviceProperties) && !defined(USE_OC_SECTION_Kernel) && !defined(USE_OC_SECTION_Misc) && \
983984
!defined(USE_OC_SECTION_Nvram) && !defined(USE_OC_SECTION_PlatformInfo) && !defined(USE_OC_SECTION_Uefi)
@@ -1012,18 +1013,6 @@ void LOADER_ENTRY::StartLoader()
10121013
DBG("Erase mOpenCoreConfiguration.Kernel\n");
10131014
#else
10141015
DBG("Keep mOpenCoreConfiguration.Kernel\n");
1015-
for ( size_t i = 0 ; i < mOpenCoreConfiguration.Kernel.Add.Count ; i ++ ) {
1016-
OC_KERNEL_ADD_ENTRY* entry = mOpenCoreConfiguration.Kernel.Add.Values[i];
1017-
OC_STRING_ASSIGN(entry->BundlePath, S8Printf("Kexts\\%s", OC_BLOB_GET(&entry->BundlePath)).c_str());
1018-
}
1019-
1020-
// DBG("mOpenCoreConfiguration.Kernel.Add.Count=%d\n", mOpenCoreConfiguration.Kernel.Add.Count);
1021-
// for ( size_t i = 0 ; i < mOpenCoreConfiguration.Kernel.Add.Count ; i++ )
1022-
// {
1023-
// DBG("mOpenCoreConfiguration.Kernel.Add.Values[%zd]->Identifier=%s\n", i, OC_BLOB_GET(&mOpenCoreConfiguration.Kernel.Add.Values[i]->Identifier));
1024-
// DBG("mOpenCoreConfiguration.Kernel.Add.Values[%zd]->BundlePath=%s\n", i, OC_BLOB_GET(&mOpenCoreConfiguration.Kernel.Add.Values[i]->BundlePath));
1025-
// DBG("mOpenCoreConfiguration.Kernel.Add.Values[%zd]->PlistPath=%s\n", i, OC_BLOB_GET(&mOpenCoreConfiguration.Kernel.Add.Values[i]->PlistPath));
1026-
// }
10271016
#endif
10281017
#ifndef USE_OC_SECTION_Misc
10291018
memset(&mOpenCoreConfiguration.Misc, 0, sizeof(mOpenCoreConfiguration.Misc));
@@ -1048,15 +1037,6 @@ void LOADER_ENTRY::StartLoader()
10481037
DBG("Erase mOpenCoreConfiguration.Uefi\n");
10491038
#else
10501039
DBG("Keep mOpenCoreConfiguration.Uefi\n");
1051-
// memset(&mOpenCoreConfiguration.Uefi.Apfs, 0, sizeof(mOpenCoreConfiguration.Uefi.Apfs));
1052-
// memset(&mOpenCoreConfiguration.Uefi.Audio, 0, sizeof(mOpenCoreConfiguration.Uefi.Audio));
1053-
// memset(&mOpenCoreConfiguration.Uefi.ConnectDrivers, 0, sizeof(mOpenCoreConfiguration.Uefi.ConnectDrivers));
1054-
// memset(&mOpenCoreConfiguration.Uefi.Drivers, 0, sizeof(mOpenCoreConfiguration.Uefi.Drivers));
1055-
// memset(&mOpenCoreConfiguration.Uefi.Input, 0, sizeof(mOpenCoreConfiguration.Uefi.Input));
1056-
// memset(&mOpenCoreConfiguration.Uefi.Output, 0, sizeof(mOpenCoreConfiguration.Uefi.Output));
1057-
// memset(&mOpenCoreConfiguration.Uefi.ProtocolOverrides, 0, sizeof(mOpenCoreConfiguration.Uefi.ProtocolOverrides));
1058-
// memset(&mOpenCoreConfiguration.Uefi.Quirks, 0, sizeof(mOpenCoreConfiguration.Uefi.Quirks));
1059-
// memset(&mOpenCoreConfiguration.Uefi.ReservedMemory, 0, sizeof(mOpenCoreConfiguration.Uefi.ReservedMemory)); // doesn't matter
10601040
#endif
10611041

10621042
#endif
@@ -1066,6 +1046,9 @@ void LOADER_ENTRY::StartLoader()
10661046
if ( gSettings.Boot.DebugLog ) {
10671047
mOpenCoreConfiguration.Misc.Debug.AppleDebug = true;
10681048
mOpenCoreConfiguration.Misc.Debug.ApplePanic = true;
1049+
#ifdef JIEF_DEBUG
1050+
mOpenCoreConfiguration.Misc.Debug.SysReport = true;
1051+
#endif
10691052

10701053
#ifndef LESS_DEBUG
10711054
mOpenCoreConfiguration.Misc.Debug.DisplayLevel = 0x80400042;
@@ -1078,7 +1061,7 @@ void LOADER_ENTRY::StartLoader()
10781061
egSetGraphicsModeEnabled(false);
10791062
mOpenCoreConfiguration.Misc.Debug.ApplePanic = true;
10801063
mOpenCoreConfiguration.Misc.Debug.DisplayLevel = 0x80000042;
1081-
mOpenCoreConfiguration.Misc.Debug.Target = 0x3;
1064+
mOpenCoreConfiguration.Misc.Debug.Target = 0x41;
10821065
#endif
10831066
}
10841067

@@ -1409,8 +1392,13 @@ void LOADER_ENTRY::StartLoader()
14091392
}
14101393
#endif
14111394

1395+
#ifdef USE_OC_SECTION_Uefi
1396+
gSettings.Devices.USB.USBFixOwnership = false; // Use OC FixUsbOwnership
1397+
mOpenCoreConfiguration.Uefi.Quirks.ReleaseUsbOwnership = false; // Clover has it's own FixUsbOwnership
1398+
#else
14121399
mOpenCoreConfiguration.Uefi.Output.ProvideConsoleGop = gSettings.GUI.ProvideConsoleGop;
14131400
OC_STRING_ASSIGN(mOpenCoreConfiguration.Uefi.Output.Resolution, XString8(gSettings.GUI.ScreenResolution).c_str());
1401+
#endif
14141402

14151403
if ( OpenRuntimeEfiName.notEmpty() ) {
14161404
XStringW FileName = SWPrintf("%ls\\%ls\\%ls", self.getCloverDirFullPath().wc_str(), getDriversPath().wc_str(), OpenRuntimeEfiName.wc_str());
@@ -1653,6 +1641,10 @@ void LOADER_ENTRY::StartLoader()
16531641

16541642
#ifdef JIEF_DEBUG
16551643
//SaveOemTables();
1644+
if ( mOpenCoreConfiguration.Misc.Debug.SysReport ) {
1645+
DBG("OC: OcMiscLoadSystemReport\n");
1646+
OcMiscLoadSystemReport (&mOpenCoreConfiguration, self.getSelfDeviceHandle());
1647+
}
16561648
#endif
16571649
//
16581650

@@ -1837,6 +1829,25 @@ void LOADER_ENTRY::StartLoader()
18371829
LoadedImage->LoadOptions = (void*)LoadOptionsAsXStringW.wc_str();
18381830
LoadedImage->LoadOptionsSize = (UINT32)LoadOptionsAsXStringW.sizeInBytesIncludingTerminator();
18391831

1832+
DBG("UEFI Quirks\n");
1833+
DBG("EBSD %d TST %d AHS %d DSP %d EVA %d EV %d FUS %d IIFR %d RGB %d RUPR %d RUO %d ROR %d RBVR %d SRP %d UFC %d FOWF %d",
1834+
mOpenCoreConfiguration.Uefi.Quirks.ExitBootServicesDelay,
1835+
mOpenCoreConfiguration.Uefi.Quirks.TscSyncTimeout,
1836+
mOpenCoreConfiguration.Uefi.Quirks.ActivateHpetSupport,
1837+
mOpenCoreConfiguration.Uefi.Quirks.DisableSecurityPolicy,
1838+
mOpenCoreConfiguration.Uefi.Quirks.EnableVectorAcceleration,
1839+
mOpenCoreConfiguration.Uefi.Quirks.EnableVmx,
1840+
mOpenCoreConfiguration.Uefi.Quirks.ForgeUefiSupport,
1841+
mOpenCoreConfiguration.Uefi.Quirks.IgnoreInvalidFlexRatio,
1842+
mOpenCoreConfiguration.Uefi.Quirks.ResizeGpuBars,
1843+
mOpenCoreConfiguration.Uefi.Quirks.ResizeUsePciRbIo,
1844+
mOpenCoreConfiguration.Uefi.Quirks.ReleaseUsbOwnership,
1845+
mOpenCoreConfiguration.Uefi.Quirks.ReloadOptionRoms,
1846+
mOpenCoreConfiguration.Uefi.Quirks.RequestBootVarRouting,
1847+
mOpenCoreConfiguration.Uefi.Quirks.ShimRetainProtocol,
1848+
mOpenCoreConfiguration.Uefi.Quirks.UnblockFsConnect,
1849+
mOpenCoreConfiguration.Uefi.Quirks.ForceOcWriteFlash);
1850+
18401851
DBG("Kernel quirks\n");
18411852
DBG("ACPCL %d AXCL %d AXEM %d AXFB %d CSG %d DIM %d DLJ %d DRC %d DPM %d EBTFF %d EDI %d FAI %d IPBS %d LKP %d PNKD %d PTKP %d TPD %d XPL %d PCC %d\n",
18421853
mOpenCoreConfiguration.Kernel.Quirks.AppleCpuPmCfgLock,

0 commit comments

Comments
 (0)