Commit Graph

708 Commits

Author SHA1 Message Date
SergeySlice
76bf6321a6 release compilation should never panic on bad user input, use DEBUG for testing
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-21 16:49:09 +03:00
SergeySlice
f17e66cf8b print nvram values into log
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-21 09:57:43 +03:00
SergeySlice
3b1f57ba86 RenameDevices can be an array
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-21 08:48:07 +03:00
SergeySlice
e1a49a85b9 repair RenameDevices
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-20 21:33:09 +03:00
SergeySlice
b13a1e5112 remove unused variable
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-20 19:32:23 +03:00
SergeySlice
3fbfaf07eb fix nvram.plist reading
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-19 23:07:24 +03:00
SergeySlice
93196411ad change defaults for SSDT generation because it is done before
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-11 22:27:03 +03:00
jief666
8209394af9 Continuing to refactor SETTINGS_DATA. 2021-02-11 14:41:59 +03:00
jief666
95be95c531 Reactivate warnings.
Clean warnings reactivated.
Clean build flags in the 4 configurations to make RELEASE_XCODE8 works
in QEMU.
2021-02-10 15:32:07 +03:00
jief666
b346d25c32 Align and clean GCC and Xcode build flags.
Removed some warnings.
2021-02-09 14:50:23 +03:00
SergeySlice
05dd5ca7ce add missing files
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-07 18:56:01 +03:00
SergeySlice
09d1ee044f Merge branch 'master' of https://github.com/CloverHackyColor/CloverBootloader 2021-02-07 17:59:23 +03:00
SergeySlice
5d75cb7c69 embedded DataHubDxe and default for ARTFrequency
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-07 17:59:15 +03:00
jief666
534c5e3397 Merge branch 'master' of https://github.com/CloverHackyColor/CloverBootloader 2021-02-07 17:39:55 +03:00
jief666
75097bd304 Remove include <Platform.h> from headers. Keep them in sources. 2021-02-07 17:39:03 +03:00
SergeySlice
d5f0ca741c add platform features for new models
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-07 09:26:40 +03:00
jief666
7b4edb280c Fix version number unknown. 2021-02-07 09:15:09 +03:00
jief666
1a02f530db Refactoring to allow Clover to be compiled as a macOs app. 2021-02-06 20:16:46 +03:00
SergeySlice
a17071034c take into account tiger lake
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-06 19:18:48 +03:00
SergeySlice
e24ceaa470 set default settings must follow get cpu properties
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-05 22:17:48 +03:00
jief666
333b6ce1ca Hide dead installer prebooter.
Do not hide installer if there is a main partition.
2021-02-04 17:04:31 +03:00
SergeySlice
3142593e38 update model data
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-03 21:04:33 +03:00
SergeySlice
0a2e29d47d fix a misprint with ProtecSecureBoot
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-02-02 21:06:35 +03:00
jief666
fa0bdcd181 Starting to refactor settings. 2021-02-02 12:02:21 +03:00
jief666
16c627596f Rename OSVersion to macOSVersion.
Fixed some icons ordering in main menu.
Fixed macOs version detection for custom entries.
Fixed main Big Sur partition appearing in menu.
Refactor IsValidGuidAsciiString.
2021-01-31 12:50:23 +03:00
SergeySlice
5de09acb3f correct config-plist
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-01-27 19:49:58 +03:00
SergeySlice
ee5e05cc14 dontuse legacy plugintype
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-01-18 20:02:51 +03:00
SergeySlice
a9778cd8d9 text formatting and project ordering
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2021-01-06 11:51:02 +03:00
SergeySlice
f5ae33896c fix capitalization of SMC
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-21 20:59:04 +03:00
SergeySlice
2eb79d33a5 correct comment
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-20 08:50:31 +03:00
SergeySlice
0f12a7e424 add model MBP16,4
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-19 21:00:37 +03:00
SergeySlice
b1aaed5567 fix previous commit
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-15 20:03:49 +03:00
SergeySlice
d68d53a416 can use <data> when <integer> asked
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-14 22:46:00 +03:00
SergeySlice
7327d95aba adding data for iMac20
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-13 11:51:50 +03:00
SergeySlice
349e56a68a take into account custom entry may point to apfs partition
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-01 22:09:30 +03:00
SergeySlice
357e8cf39e find recovery for bigsur
not working yet

Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-11-28 16:48:31 +03:00
SergeySlice
e08a686e13 account all 11.x.y system will be BigSur
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-11-26 21:42:33 +03:00
jief666
c9cfc183d9 Keep "Bootx64" for debug log name if booted on /EFI/Boot/BootX64.efi 2020-11-24 16:14:48 +03:00
jief666
8a561576cd Add IC when checking drivers name at loading. 2020-11-24 16:01:32 +03:00
jief666
2f90c9702a debug.log name contains efi file name and timestamp. 2020-11-24 15:41:47 +03:00
SergeySlice
569a2fbe94 set log position
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-11-22 14:32:03 +03:00
jief666
f28e8a2244 Fix DellSmbiosPatch. 2020-11-19 00:49:02 +03:00
jief666
7f1b87c92f Create object MacOsVersion. 2020-11-13 00:25:56 +03:00
SergeySlice
fd93022f92 exclude newyer theme
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-11-09 19:56:18 +03:00
SergeySlice
30f4fd2d64 recheck DSDT length
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-11-06 10:31:30 +03:00
jief666
5d91bbe253 Restore USBFixOwnership feature. 2020-11-05 09:29:56 +03:00
jief666
e314f72e59 MSVC compilation (forgotten in last commit). 2020-11-02 23:26:41 +03:00
jief666
dcfa6bb6a2 MSVC compilation (forgotten in last commit). 2020-11-02 22:36:36 +03:00
Jief L
da8ad5c0eb MSVC compilation. 2020-11-02 16:45:11 +03:00
jief666
9e7b4311cb Make gcc10 thinks it should keep gBuildIdGrepTag symbol. 2020-10-28 20:11:50 +03:00
SergeySlice
d0388ee7a7 define defaults when gruop is absent
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-27 21:51:28 +03:00
jief666
c458db4acd Typo 2020-10-26 18:02:54 +03:00
jief666
d540f76b54 Handle Skip in patches. 2020-10-23 21:52:01 +03:00
SergeySlice
fc3fa0de26 reduce debug.log
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-23 21:48:31 +03:00
jief666
109746ca82 Re-implement ordering partition with a no-loop guard.
selfOem.unInitialize()
2020-10-23 09:04:01 +03:00
jief666
6a96d48330 Better name for Preboot.
Ordering of Preboot Main Recovery
2020-10-22 16:55:30 +03:00
jief666
18038055ab Put back "Allow 11 11.x in IsOSValid()". 2020-10-21 17:20:59 +03:00
jief666
d4afee825b Keep path independant symbol. 2020-10-20 22:50:30 +03:00
jief666
e80852a82f Allow 11 11.x in IsOSValid().
No timing in JIEF_DEBUG.
2020-10-20 10:55:46 +03:00
jief666
2d124e41e3 Improve GetDebugLogFile() and SaveMessageToDebugLogFile(). 2020-10-19 15:04:03 +03:00
jief666
7ac3952a92 Add \ before Clover path if it's missing, instead of Panic. 2020-10-18 16:54:55 +03:00
SergeySlice
259ebbbf08 make path_independant used
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-18 06:04:08 +03:00
jief666
70988228c4 Refactor selfOem. Created getConfigDir... methods.
Enclose access to getOemDir... by if (selfOem.oemDirExists()).
Enclose access to getKextsDir... by if (selfOem.isKextsDirFound()).
closeDebugLog() in UninitRefitLib().
Prevent DBG loop.
2020-10-17 16:01:33 +03:00
SergeySlice
11e2e38420 several optimisations
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-15 10:05:37 +03:00
SergeySlice
92bf401d7c fix full path for kexts
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-14 21:54:18 +03:00
SergeySlice
22f694d2da search info and exec pathes
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-14 19:08:32 +03:00
jief666
1bb8b0dd34 "DriveImageData" typo. 2020-10-14 16:40:07 +03:00
SergeySlice
c7c079e0fb avoid memory leak with ACPI patching
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-14 10:32:36 +03:00
SergeySlice
086e5682ae change KernelPM correspondence to old Clover
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-13 14:28:47 +03:00
jief666
a2ffdf8642 Add Find/Replace with mask tests.
Improve unit test framework.
2020-10-12 17:49:43 +03:00
jief666
0ab6d8a994 First unit test for memory Find-Replace. 2020-10-12 14:51:08 +03:00
jief666
4d5ccc026f Quick hack to load OpneRuntime.efi.
UINTN to uintptr_t.
Conditionnal code in OpenCorePkg.
2020-10-11 09:06:50 +03:00
SergeySlice
743b036202 change format printing
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-10 18:15:54 +03:00
SergeySlice
914349ec14 take into account enable-disable patches in menu
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-10 16:31:14 +03:00
SergeySlice
641b75e9eb exclude double settings
implement Skip for OC compatibility

Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-08 23:03:41 +03:00
jief666
881796039f Build id in log and in About menu. 2020-10-07 20:25:31 +03:00
jief666
446cec5ede Add a build_id in Version.h
Rename, copy to 'Build' and zip CloverX64.efi.
2020-10-07 19:57:34 +03:00
jief666
941ff0b3a3 Fix TgtBridge. 2020-10-07 12:15:21 +03:00
SergeySlice
8e0f4ad249 correspondence of kext patches clover and oc
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-06 23:02:14 +03:00
jief666
72f4ddd9a6 Fix DSDT oem path.
Test : using OC OSInfo protocol.
2020-10-06 17:24:34 +03:00
jief666
2bc776d63e ReinitRefitLib after Starting an efi image. 2020-10-05 23:45:14 +03:00
jief666
53645a4240 Use Clover implementation of gEfiOSInfoProtocolGuid. 2020-10-05 13:32:23 +03:00
jief666
d12acc1ec5 Remove panic at start if there is no kexts dir. 2020-10-05 12:14:35 +03:00
jief666
dcd17ca8cd Display full path of acpi files in debug log. 2020-10-05 10:25:53 +03:00
jief666
f312117030
Merge pull request #245 from CloverHackyColor/opencore_integration
Opencore integration
2020-10-04 00:06:31 +03:00
jief666
458d071ec9 Fix kext path when in an OEM folder. 2020-10-03 23:56:50 +03:00
jief666
b8a188382c Make Clover path independent. 2020-10-03 20:02:31 +03:00
SergeySlice
2286f19503 join kext and kernel patches
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-03 17:16:11 +03:00
SergeySlice
53b163c57c provide config-sample with full quirk list
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-03 15:17:46 +03:00
jief666
08add49958 remove CustomSmbiosGuid quirks. Force it to false. 2020-09-30 22:03:13 +03:00
jief666
804dd26599 Fix kext path in LoadKexts()
Remove StartLoader11(). StartLoader() starts all macOs with OC.
Merge Quirks sections.
2020-09-30 21:56:55 +03:00
jief666
bd8d3140b2 ProvideConsoleGop setting in GUI. 2020-09-29 15:15:11 +03:00
jief666
48cdadb0b2 Fix bug where StartLoader cannot find kexts.
First implementation of Self object.
2020-09-28 18:57:50 +03:00
jief666
6ed566e98c Const missing. 2020-09-28 12:05:37 +03:00
jief666
588bd4f342 mOpenCoreConfiguration.Nvram.WriteFlash = true; 2020-09-27 14:52:38 +03:00
jief666
e48ae97c60 Avoid GetDefaultSettings scratching SmUUID read from smbios. 2020-09-24 15:06:10 +03:00
jief666
29bdb1bdcd SmUUID wasn't injected if smbios info were in smbios.plist. 2020-09-23 16:47:47 +03:00
jief666
b592a62d6f Restore Device properties injection.
Uncomment SetCPUProperties() SetupDataForOSX()
2020-09-23 08:20:06 +03:00
jief666
d440b5a7f1 Comment out gAppleDevicePropertyProtocolGuid
Rename gAppleDevicePropertyProtocolGuid to
gEfiDevicePathPropertyDatabaseProtocolGuid
Rename gDevicePropertiesGuid to
gEfiDevicePathPropertyDatabaseProtocolGuid
Debug message for USE_OC_SECTION_xxx
2020-09-21 08:53:36 +03:00
jief666
648f5c3d3b Enforce plist correctness. 2020-09-19 23:32:46 +03:00
jief666
f745d8b0b3 Implement scratching the debug.log at start. 2020-09-18 13:50:49 +03:00
jief666
28a0dc1e8b Uncomment call to SetDevices(this) and SetVariablesForOSX(this)
Temporary panic is OcQuirks not found.
2020-09-18 13:04:07 +03:00
jief666
3877d988f3 OcKernelCache Auto if empty string. 2020-09-18 12:12:15 +03:00
jief666
73f29eb538 Redirect OC log to Clover.
Keep log file handle opened.
Put back -DMDEPKG_NDEBUG.
2020-09-18 11:55:44 +03:00
jief666
1476a8662b Remove OcBooter, just call it Quirks. 2020-09-17 02:01:36 +03:00
jief666
887136a381 Use OcMain, continuation. 2020-09-16 20:50:16 +03:00
jief666
346661efd2 Use OcMain to init OC.
Remove -DMDEPKG_NDEBUG to get OC debug messages.
Refactor InjectKextList as XObjArray<SIDELOAD_KEXT>.
2020-09-16 02:01:53 +03:00
jief666
acc2fea810 Use kext from correct folder for version < 11.0
Use OpenCore OS_INFO_PROTOCOL.
2020-09-14 16:01:30 +03:00
jief666
232f94f00c Handle booter quircks. 2020-09-09 20:06:34 +03:00
jief666
389ec9d17c Debug messages. 2020-09-09 14:19:32 +03:00
jief666
dfac7119f6 Hardcode order of some kexts.
Improve test in USBFix to avoid crash.
2020-09-09 00:25:26 +03:00
jief666
9681c6292d Menu disable kext for version 11. 2020-09-08 14:00:17 +03:00
jief666
7e31ca1319 Implement OC FuzzyMatch, KernelCache and Quirks. 2020-09-07 20:33:38 +03:00
jief666
257667f2f1 Get version for installer.
OcLog initialisation.
2020-09-07 17:44:24 +03:00
jief666
8ccee7054f 1st experiment to use OpenCore to boot Big Sur installer. 2020-09-07 01:19:48 +03:00
jief666
f4e10b1a2a Base64DecodeClover cannot return not-NULL and DecodedSize=0 anymore. 2020-09-04 13:52:05 +03:00
jief666
87bc06495c Panic message goes in log over serial port.
Qemu launch script.
2020-09-04 00:35:36 +03:00
jief666
efb3c44b0f Tag panic instead of silently fail when wrong get[type] is called.
Handle Prop </false> in InjectKexts.
Replace FreePool by delete.
2020-09-04 00:34:44 +03:00
jief666
8276e8b4f9 Wrong test of Prop instead of arrayProp. 2020-09-03 23:05:11 +03:00
SergeySlice
1fe7cc1cfc Merge branch 'master' of https://github.com/CloverHackyColor/CloverBootloader 2020-09-02 20:32:47 +03:00
SergeySlice
9f74f728b6 exclude extra u
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-09-02 20:32:40 +03:00
jief666
734f292a3d Comment out debug message. 2020-09-02 18:21:32 +03:00
SergeySlice
67d332ce14 somehow resolve conflict between c++ and swift
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-09-01 20:58:59 +03:00
jief666
1963d37ef1 Fix SortedOrderArray test. 2020-08-31 12:43:18 +03:00
jief666
2447e1fea7 Refactor BlackList as XStringWArray and rename to DisabledDriverArray. 2020-08-31 12:00:52 +03:00
jief666
da29292e22 refactor ThemesList as XStringWArray and rename to ThemeNameArray. 2020-08-31 10:22:11 +03:00
jief666
e7d14cc70e Refactor HDA_OUTPUTS as a class and AudioList as a XObjArray. 2020-08-31 10:07:36 +03:00
jief666
823e0efc9f Refactor RT_VARIABLES as a class and RtVariables as a XObjArray.
Renamed RtVariables to BlockRtVariableArray.
2020-08-31 09:22:21 +03:00
jief666
babba4de6e make TagData::setDataValue accept NULL value for data. 2020-08-30 22:53:40 +03:00
SergeySlice
352c75c711 Merge branch 'master' of https://github.com/CloverHackyColor/CloverBootloader 2020-08-30 20:25:30 +03:00
SergeySlice
6dd178030b more informative print
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-08-30 20:25:16 +03:00
Sergey Isakov
493aa8f946 some dangerous misprints
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-08-30 17:21:54 +03:00
Sergey Isakov
b58f4bbbd3 allow empty data in plist
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-08-30 14:12:46 +03:00
Sergey Isakov
3493015cf2 fix DSDT patching
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-08-30 11:02:55 +03:00
jief666
e9f0f8ccd8 DSDT Patches refactor as an array of object.
Entry->VolName renamed Entry->DisplayedVolName because VolName already
exits in the hierarchie.
2020-08-27 21:47:56 +03:00
jief666
a721bb0a29 ROM setting can now be string or data, like it was before. 2020-08-27 16:02:25 +03:00
jief666
5779130ea5 MemLogfVA now use only printf_lite which has better handling of
timestamp at the beginning of lines.
2020-08-26 21:49:49 +03:00
jief666
c7cc003809 Xcode project.
printf_lite. Add test guard.
2020-08-25 19:08:05 +03:00
jief666
9cb4016bc5 Final refactoring of plist : now each tag is a class.
Rename strerror to efiStrError because of conflict when run cpp_tests on
Mac.
Switch base64_decode_block to long to avoid warning and cast.
Correct GetTableType4(). Size was used without being initialized.
2020-08-25 18:35:19 +03:00
jief666
d8c912e420 Fix debug message "patch disabled at config" 2020-08-23 14:54:35 +03:00
jief666
b6d578fe06 int value are 4 bytes like it was before in
gSettings.ArbProperties->Child
2020-08-23 14:47:58 +03:00
jief666
3684ef21a1 wrong return value in TagStruct::getTypeAsXString8() 2020-08-23 14:19:49 +03:00
jief666
85716960f9 Further refactor of plist. 2020-08-22 16:39:24 +03:00
jief666
2607bd4fbb Wrong cast in GetBootFromOption(). 2020-08-19 22:29:26 +03:00
jief666
8b6f19f2c6 Bug in GetDataSetting.
Bug near "GetProperty(DictPointer, "KextsToPatch")"
2020-08-19 16:56:19 +03:00
jief666
95d477c9a3 Refactor tagNext in tagSruct as a XObjArray<TagStruct> 2020-08-19 15:50:26 +03:00
jief666
2ef2b9df0d Allow empty dict 2020-08-19 10:52:07 +03:00
jief666
5b1eea4df0 PutNvramPlistToRtVars buf after plist refactoring 2020-08-18 22:30:14 +03:00
jief666
8dcf25dc6d Hardened plist. 2020-08-18 19:45:44 +03:00
jief666
2961827dce Correct some refactoring bugs. 2020-08-17 22:40:52 +03:00