34277 Commits

Author SHA1 Message Date
Mikhail Krichanov
ad5f4944d6 Ring3: Removed -mcpu=cortex-a76 option from tools_def.template. 2025-04-14 11:54:25 +03:00
Mikhail Krichanov
cb3eea69af SysCall: Added sanity checks. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
12c9c0a53d SysCall: Made CoreSp STATIC, fixed UserRsp for AARCH64. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
538d1bbb8b SysCall: Fixed uninitialized variable. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
6bdf0c1acd Ring3: Defined CallInstallMultipleProtocolInterfaces() for AARCH64. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
8104e4543c Ring3: Refactored SysCallBootService() out of EFI_BOOT_SERVICES. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
f8c379de5f Ring3: Defined SysCallReturnToCore for AARCH64,
forbade ExceptionHanlders to use EL0 stack.
2025-04-14 11:52:51 +03:00
Mikhail Krichanov
1eac0a2ed3 Ring3: Fixed some page faults caused by wrong memory attribution. 2025-04-14 11:52:51 +03:00
Mikhail Krichanov
393298742c Ring3: Defined SysCallBootService() for AARCH64. 2025-04-14 11:52:48 +03:00
Mikhail Krichanov
e40c47a69c Ring3: Defined CallRing3() for AARCH64. 2025-04-14 11:49:21 +03:00
Mikhail Krichanov
9059d7330a Ring3: Defined CpuGetMemoryAttributes(), DisableSMAP(), EnableSMAP() for AARCH64. 2025-04-14 11:49:21 +03:00
Mikhail Krichanov
a60692fa72 Ring3: Initialized DxeRing3 with Supervisor privileges. 2025-04-14 11:49:21 +03:00
Mikhail Krichanov
57eb712768 Ring3: Added EL0 and PAN support for AARCH64. 2025-04-14 11:49:18 +03:00
Mikhail Krichanov
00df7fc81e Ring3: Added dummy functions for ARM, AARCH64. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
1fdcce93d4 SysCall: Some refactoring. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
755baf7951 Ring3: Fixed interrupts handling for IA32. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
accdbd58ec Ring3: Fixed bug in IA32 SetPosition() and Open(). 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
c5925f6508 Ring3: Fixed bug in Ring3LocateHandleBuffer(),
added SysCallNames.
2025-04-14 11:36:10 +03:00
Mikhail Krichanov
3055d657eb Ring3: Moved UINT64 arguments to the end of argument list to fix IA32 stack. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
c1fc70dc07 SysCall: Fixed bug in IA32 CallInstallMultipleProtocolInterfaces(). 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
02c24da832 SysCall: Replaced AllocatePool() with CoreAllocatePages(). 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
3107ac82d5 Ring3: Fixed TSS initialization. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
b6b786a626 Build: Fixed compilation of X86 Firmwares. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
89a87a3ae4 SysCall: Fixed memory corruption in IA32. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
276d098b43 SysCall: Added IA32 support. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
8ca773c920 Ring3: Moved platform dependant initialization to separate files. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
1cc7d21c40 SysCall: Fixed MdeModulePkg compilation for XCODE5. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
25a673e71b SysCall: Fixed MdeModulePkg compilation for VS2019. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
099a6e9e64 MdeModulePkg: Fixed MdeModulePkg compilation. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
58223eaab6 OvmfPkg: Added DxeRing3 driver, placed Fat driver into Ring3. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
507435e9f5 Ring3: Properly freed Ring3 resources. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
28221fe295 Ring3: Added FreeProtocolsList(). 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
cac7056c3e Ring3: Moved InitializeRing3() to SysCall directory. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
007abdd586 SysCall: Fixed UnicodeFatToStr wrapper. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
92521497b1 Ring3: Added SysCallCalculateCrc32 wrapper. 2025-04-14 11:36:10 +03:00
Mikhail Krichanov
fcafe43bc5 SysCall: Fixed UnicodeCollation wrappers. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
373b6d9dc8 SysCall: Refactored protocols handling. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
9cf5e32c3b Ring3: Fixed Ring3LocateHandleBuffer(). 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
e3f3d64eb5 Ring3: Added SysCallGetVariable wrapper. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
81e1df054f Ring3: Added UnicodeCollationProtocol wrappers. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
933262bed6 Ring3: Added Runtime Services wrappers. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
c19280858e Ring3: Added debug printings and some fixes for FAT wrappers. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
cf3bb4d68b Ring3: Refactored exception handling. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
eba7b947da SysCall: Refactored data segment selectors' switching. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
6c8b19286d Ring3: Forbade Ring3 accsess to all ports but for UART
to allow DEBUG printing.
2025-04-14 11:36:09 +03:00
Mikhail Krichanov
7ac6cf2738 SysCall: Added checks of user variables. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
0822b7e12a Ring3: Fixed interrrupts handling. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
b74f304832 SysCall: Refactored EFI_FILE_PROTOCOL wrappers. 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
20722176d3 Ring3: Refactored out AllocateRing3Copy(). 2025-04-14 11:36:09 +03:00
Mikhail Krichanov
1a1afc8ce7 Ring3: Added PrepareRing3Interface(). 2025-04-14 11:36:09 +03:00