diff options
author | Konstantin Aladyshev <aladyshev22@gmail.com> | 2021-07-10 00:04:40 +0300 |
---|---|---|
committer | Konstantin Aladyshev <aladyshev22@gmail.com> | 2021-07-10 00:04:40 +0300 |
commit | 6064c1e48b622f53538f4df9bdd402c607a87d51 (patch) | |
tree | 93d3c937b9568568307fd2ff7053a30c538ad72a /Lesson_10/UefiLessonsPkg | |
parent | a9c375c80c3505be794ec2b5d5bb90de27ef0d42 (diff) | |
download | UEFI-Lessons-6064c1e48b622f53538f4df9bdd402c607a87d51.tar.gz UEFI-Lessons-6064c1e48b622f53538f4df9bdd402c607a87d51.tar.bz2 UEFI-Lessons-6064c1e48b622f53538f4df9bdd402c607a87d51.zip |
Move lessons to separate folder
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>
Diffstat (limited to 'Lesson_10/UefiLessonsPkg')
-rw-r--r-- | Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.c | 15 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.inf | 18 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.c | 105 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.inf | 18 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.c | 44 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.inf | 22 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.c | 10 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.inf | 16 | ||||
-rw-r--r-- | Lesson_10/UefiLessonsPkg/UefiLessonsPkg.dsc | 32 |
9 files changed, 0 insertions, 280 deletions
diff --git a/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.c b/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.c deleted file mode 100644 index 1f05899..0000000 --- a/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.c +++ /dev/null @@ -1,15 +0,0 @@ -#include <Library/UefiBootServicesTableLib.h> -#include <Library/UefiLib.h> - -EFI_STATUS -EFIAPI -UefiMain ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - SystemTable->ConOut->OutputString(SystemTable->ConOut, L"Hello World!\n"); - gST->ConOut->OutputString(gST->ConOut, L"Hello again!\n"); - Print(L"Bye!\n"); - return EFI_SUCCESS; -} diff --git a/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.inf b/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.inf deleted file mode 100644 index d65ca2e..0000000 --- a/Lesson_10/UefiLessonsPkg/HelloWorld/HelloWorld.inf +++ /dev/null @@ -1,18 +0,0 @@ -[Defines] - INF_VERSION = 1.25 - BASE_NAME = HelloWorld - FILE_GUID = 2e55fa38-f148-42d3-af90-1be247323e30 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -[Sources] - HelloWorld.c - -[Packages] - MdePkg/MdePkg.dec - -[LibraryClasses] - UefiApplicationEntryPoint - UefiLib - diff --git a/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.c b/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.c deleted file mode 100644 index 32e9c43..0000000 --- a/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.c +++ /dev/null @@ -1,105 +0,0 @@ -#include <Library/MemoryAllocationLib.h> -#include <Library/UefiBootServicesTableLib.h> -#include <Library/UefiLib.h> - -typedef struct { - UINTN Signature; - /// All handles list of IHANDLE - LIST_ENTRY AllHandles; - /// List of PROTOCOL_INTERFACE's for this handle - LIST_ENTRY Protocols; - UINTN LocateRequest; - /// The Handle Database Key value when this handle was last created or modified - UINT64 Key; -} IHANDLE; - -typedef struct { - UINTN Signature; - /// Link Entry inserted to mProtocolDatabase - LIST_ENTRY AllEntries; - /// ID of the protocol - EFI_GUID ProtocolID; - /// All protocol interfaces - LIST_ENTRY Protocols; - /// Registerd notification handlers - LIST_ENTRY Notify; -} PROTOCOL_ENTRY; - -typedef struct { - UINTN Signature; - /// Link on IHANDLE.Protocols - LIST_ENTRY Link; - /// Back pointer - IHANDLE *Handle; - /// Link on PROTOCOL_ENTRY.Protocols - LIST_ENTRY ByProtocol; - /// The protocol ID - PROTOCOL_ENTRY *Protocol; - /// The interface value - VOID *Interface; - /// OPEN_PROTOCOL_DATA list - LIST_ENTRY OpenList; - UINTN OpenListCount; - -} PROTOCOL_INTERFACE; - - -#define offsetof(a,b) ((INTN)(&(((a*)(0))->b))) - -#define container_of(ptr, type, member) ({ \ - const typeof( ((type *)0)->member ) *__mptr = (ptr); \ - (type *)( (char *)__mptr - offsetof(type,member) );}) - -EFI_STATUS -EFIAPI -UefiMain ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - IHANDLE* MyHandle = ImageHandle; - Print(L"Signature: %c %c %c %c\n", (MyHandle->Signature >> 0) & 0xff, - (MyHandle->Signature >> 8) & 0xff, - (MyHandle->Signature >> 16) & 0xff, - (MyHandle->Signature >> 24) & 0xff); - - Print(L"Back Protocol Interface Link: %p\n", MyHandle->Protocols.BackLink); - Print(L"Forward Protocol Interface Link: %p\n", MyHandle->Protocols.ForwardLink); - - LIST_ENTRY *FirstLink = MyHandle->Protocols.ForwardLink; - LIST_ENTRY *CurrentLink = FirstLink; - do { - PROTOCOL_INTERFACE* MyProtocolInterface = container_of(CurrentLink, PROTOCOL_INTERFACE, Link); - - Print(L"\n"); - Print(L"Current Link: %p\n", CurrentLink); - Print(L"Signature: %x %x %x %x\n", (MyProtocolInterface->Signature >> 0) & 0xff, - (MyProtocolInterface->Signature >> 8) & 0xff, - (MyProtocolInterface->Signature >> 16) & 0xff, - (MyProtocolInterface->Signature >> 24) & 0xff); - - Print(L"Back Link: %p\n", MyProtocolInterface->Link.BackLink); - Print(L"Forward Link: %p\n", MyProtocolInterface->Link.ForwardLink); - Print(L"GUID=%g\n", MyProtocolInterface->Protocol->ProtocolID); - CurrentLink = MyProtocolInterface->Link.ForwardLink; - } while (CurrentLink != FirstLink); - - Print(L"________\n"); - EFI_GUID **ProtocolGuidArray; - UINTN ArrayCount; - //EFI_STATUS Status = gBS->ProtocolsPerHandle(NULL, // Use this to test %r Print formatting option - EFI_STATUS Status = gBS->ProtocolsPerHandle(ImageHandle, - &ProtocolGuidArray, - &ArrayCount); - - if (!EFI_ERROR(Status)) { - for (int i=0; i<ArrayCount; i++) { - Print(L"%g\n", ProtocolGuidArray[i]); - } - FreePool(ProtocolGuidArray); - } else { - Print(L"ProtocolsPerHandle error: %r\n", Status); - } - - return EFI_SUCCESS; -} diff --git a/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.inf b/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.inf deleted file mode 100644 index 34256ee..0000000 --- a/Lesson_10/UefiLessonsPkg/ImageHandle/ImageHandle.inf +++ /dev/null @@ -1,18 +0,0 @@ -[Defines] - INF_VERSION = 1.25 - BASE_NAME = ImageHandle - FILE_GUID = b68d3472-70c7-4928-841b-6566032e0a23 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -[Sources] - ImageHandle.c - -[Packages] - MdePkg/MdePkg.dec - -[LibraryClasses] - UefiApplicationEntryPoint - UefiLib - diff --git a/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.c b/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.c deleted file mode 100644 index c45570e..0000000 --- a/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.c +++ /dev/null @@ -1,44 +0,0 @@ -#include <Library/UefiBootServicesTableLib.h> -#include <Library/UefiLib.h> - -#include <Protocol/LoadedImage.h> -#include <Library/DevicePathLib.h> - -EFI_STATUS -EFIAPI -UefiMain ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - EFI_STATUS Status; - EFI_LOADED_IMAGE_PROTOCOL* LoadedImage; - - Status = gBS->HandleProtocol( - ImageHandle, - &gEfiLoadedImageProtocolGuid, - (VOID **) &LoadedImage - ); - - if (Status == EFI_SUCCESS) { - EFI_DEVICE_PATH_PROTOCOL* DevicePath; - - Status = gBS->HandleProtocol( - ImageHandle, - &gEfiLoadedImageDevicePathProtocolGuid, - (VOID**) &DevicePath - ); - - if (Status == EFI_SUCCESS) { - Print(L"Image device: %s\n", ConvertDevicePathToText(DevicePath, FALSE, TRUE)); - Print(L"Image file: %s\n", ConvertDevicePathToText(LoadedImage->FilePath, FALSE, TRUE)); // EFI_DEVICE_PATH_PROTOCOL *FilePath - Print(L"Image Base: %X\n", LoadedImage->ImageBase); - Print(L"Image Size: %X\n", LoadedImage->ImageSize); - } else { - Print(L"Can't get EFI_LOADED_IMAGE_PROTOCOL, Status=%r\n", Status); - } - } else { - Print(L"Can't get EFI_DEVICE_PATH_PROTOCOL, Status=%r\n", Status); - } - return EFI_SUCCESS; -} diff --git a/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.inf b/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.inf deleted file mode 100644 index 0ce54a6..0000000 --- a/Lesson_10/UefiLessonsPkg/ImageInfo/ImageInfo.inf +++ /dev/null @@ -1,22 +0,0 @@ -[Defines] - INF_VERSION = 1.25 - BASE_NAME = ImageInfo - FILE_GUID = b68d3472-70c7-4928-841b-6566032e0a23 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -[Sources] - ImageInfo.c - -[Packages] - MdePkg/MdePkg.dec - -[LibraryClasses] - UefiApplicationEntryPoint - UefiLib - -[Protocols] - gEfiLoadedImageProtocolGuid - gEfiLoadedImageDevicePathProtocolGuid - diff --git a/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.c b/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.c deleted file mode 100644 index 8bdf500..0000000 --- a/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.c +++ /dev/null @@ -1,10 +0,0 @@ -EFI_STATUS -EFIAPI -UefiMain ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - return EFI_SUCCESS; -} - diff --git a/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.inf b/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.inf deleted file mode 100644 index 7d4bae2..0000000 --- a/Lesson_10/UefiLessonsPkg/SimplestApp/SimplestApp.inf +++ /dev/null @@ -1,16 +0,0 @@ -[Defines] - INF_VERSION = 1.25 - BASE_NAME = SimplestApp - FILE_GUID = 4a298956-fbe0-47fb-ae3a-2d5a0a959a26 - MODULE_TYPE = UEFI_APPLICATION - VERSION_STRING = 1.0 - ENTRY_POINT = UefiMain - -[Sources] - SimplestApp.c - -[Packages] - MdePkg/MdePkg.dec - -[LibraryClasses] - UefiApplicationEntryPoint diff --git a/Lesson_10/UefiLessonsPkg/UefiLessonsPkg.dsc b/Lesson_10/UefiLessonsPkg/UefiLessonsPkg.dsc deleted file mode 100644 index ff2edf6..0000000 --- a/Lesson_10/UefiLessonsPkg/UefiLessonsPkg.dsc +++ /dev/null @@ -1,32 +0,0 @@ -[Defines] - DSC_SPECIFICATION = 0x0001001C - PLATFORM_GUID = 3db7270f-ffac-4139-90a4-0ae68f3f8167 - PLATFORM_VERSION = 0.01 - PLATFORM_NAME = UefiLessonsPkg - SKUID_IDENTIFIER = DEFAULT - SUPPORTED_ARCHITECTURES = X64 - BUILD_TARGETS = RELEASE - - -[LibraryClasses] - UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf - UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf - DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf - BaseLib|MdePkg/Library/BaseLib/BaseLib.inf - PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf - BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf - RegisterFilterLib|MdePkg/Library/RegisterFilterLibNull/RegisterFilterLibNull.inf - PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf - DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf - UefiLib|MdePkg/Library/UefiLib/UefiLib.inf - MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf - DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf - UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf - -[Components] - UefiLessonsPkg/SimplestApp/SimplestApp.inf - UefiLessonsPkg/HelloWorld/HelloWorld.inf - UefiLessonsPkg/ImageHandle/ImageHandle.inf - UefiLessonsPkg/ImageInfo/ImageInfo.inf - - |