forked from xt-sys/exectos
		
	Rewrite core of the XTLDR boot loader
Reviewed-on: xt-sys/exectos#7 Reviewed-by: Piotr Likoski <likoski@noreply.codingworkshop.git> Co-authored-by: Rafal Kupiec <belliash@codingworkshop.eu.org> Co-committed-by: Rafal Kupiec <belliash@codingworkshop.eu.org>
This commit is contained in:
		
				
					committed by
					
						
						CodingWorkshop Signing Team
					
				
			
			
				
	
				
						parent
						
							44905bb71d
						
					
				
				
					commit
					4412d4fc98
				
			
							
								
								
									
										79
									
								
								xtldr/modules/fb_o/includes/framebuf.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								xtldr/modules/fb_o/includes/framebuf.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,79 @@
 | 
			
		||||
/**
 | 
			
		||||
 * PROJECT:         ExectOS
 | 
			
		||||
 * COPYRIGHT:       See COPYING.md in the top level directory
 | 
			
		||||
 * FILE:            xtldr/modules/fb_o/includes/framebuf.h
 | 
			
		||||
 * DESCRIPTION:     Framebuffer support module header file
 | 
			
		||||
 * DEVELOPERS:      Rafal Kupiec <belliash@codingworkshop.eu.org>
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#ifndef __XTLDR_MODULES_FRAMEBUF_H
 | 
			
		||||
#define __XTLDR_MODULES_FRAMEBUF_H
 | 
			
		||||
 | 
			
		||||
#include <xtblapi.h>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
typedef VOID (*PXT_FRAMEBUFFER_GET_DISPLAY_DRIVER)(OUT PWCHAR DriverName);
 | 
			
		||||
typedef VOID (*PXT_FRAMEBUFFER_GET_DISPLAY_INFORMATION)(OUT PLOADER_GRAPHICS_INFORMATION_BLOCK InformationBlock);
 | 
			
		||||
typedef EFI_STATUS (*PXT_FRAMEBUFFER_INITIALIZE)();
 | 
			
		||||
typedef VOID (*PXT_FRAMEBUFFER_PRINT_DISPLAY_INFORMATION)();
 | 
			
		||||
 | 
			
		||||
/* XT framebuffer support protocol */
 | 
			
		||||
typedef struct _XT_FRAMEBUFFER_PROTOCOL
 | 
			
		||||
{
 | 
			
		||||
    PXT_FRAMEBUFFER_GET_DISPLAY_DRIVER GetDisplayDriver;
 | 
			
		||||
    PXT_FRAMEBUFFER_GET_DISPLAY_INFORMATION GetDisplayInformation;
 | 
			
		||||
    PXT_FRAMEBUFFER_INITIALIZE Initialize;
 | 
			
		||||
    PXT_FRAMEBUFFER_PRINT_DISPLAY_INFORMATION PrintDisplayInformation;
 | 
			
		||||
} XT_FRAMEBUFFER_PROTOCOL, *PXT_FRAMEBUFFER_PROTOCOL;
 | 
			
		||||
 | 
			
		||||
/* XT framebuffer information structure definition */
 | 
			
		||||
typedef struct _XT_FRAMEBUFFER_INFORMATION
 | 
			
		||||
{
 | 
			
		||||
    BOOLEAN Initialized;
 | 
			
		||||
    EFI_GRAPHICS_PROTOCOL Protocol;
 | 
			
		||||
    union
 | 
			
		||||
    {
 | 
			
		||||
        PEFI_GRAPHICS_OUTPUT_PROTOCOL GOP;
 | 
			
		||||
        PEFI_UNIVERSAL_GRAPHICS_ADAPTER_PROTOCOL UGA;
 | 
			
		||||
    } Adapter;
 | 
			
		||||
    UINT HorizontalResolution;
 | 
			
		||||
    UINT VerticalResolution;
 | 
			
		||||
    UINT BitsPerPixel;
 | 
			
		||||
    UINT BytesPerPixel;
 | 
			
		||||
    UINT PixelsPerScanLine;
 | 
			
		||||
    UINT Pitch;
 | 
			
		||||
    EFI_GRAPHICS_PIXEL_FORMAT PixelFormat;
 | 
			
		||||
    EFI_PHYSICAL_ADDRESS FrameBufferBase;
 | 
			
		||||
    ULONG_PTR FrameBufferSize;
 | 
			
		||||
} XT_FRAMEBUFFER_INFORMATION, *PXT_FRAMEBUFFER_INFORMATION;
 | 
			
		||||
 | 
			
		||||
/* XT FrameBuffer Information */
 | 
			
		||||
EXTERN XT_FRAMEBUFFER_INFORMATION FrameBufferInfo;
 | 
			
		||||
 | 
			
		||||
/* FrameBuffer support protocol related routines forward references */
 | 
			
		||||
XTCDECL
 | 
			
		||||
VOID
 | 
			
		||||
FbGetDisplayDriver(OUT PWCHAR DriverName);
 | 
			
		||||
 | 
			
		||||
XTCDECL
 | 
			
		||||
VOID
 | 
			
		||||
FbGetDisplayInformation(OUT PLOADER_GRAPHICS_INFORMATION_BLOCK InformationBlock);
 | 
			
		||||
 | 
			
		||||
XTCDECL
 | 
			
		||||
EFI_STATUS
 | 
			
		||||
FbInitializeDisplay();
 | 
			
		||||
 | 
			
		||||
XTCDECL
 | 
			
		||||
VOID
 | 
			
		||||
FbPrintDisplayInformation();
 | 
			
		||||
 | 
			
		||||
XTCDECL
 | 
			
		||||
UINT32
 | 
			
		||||
GoppGetBitsPerPixel();
 | 
			
		||||
 | 
			
		||||
XTCDECL
 | 
			
		||||
EFI_STATUS
 | 
			
		||||
BlXtLdrModuleMain(IN EFI_HANDLE ImageHandle,
 | 
			
		||||
                  IN PEFI_SYSTEM_TABLE SystemTable);
 | 
			
		||||
 | 
			
		||||
#endif /* __XTLDR_MODULES_FRAMEBUF_H */
 | 
			
		||||
		Reference in New Issue
	
	Block a user