svn commit: r263828 - in projects/uefi/sys: amd64/amd64 amd64/include boot/amd64/efi

Ed Maste emaste at FreeBSD.org
Thu Mar 27 19:59:34 UTC 2014


Author: emaste
Date: Thu Mar 27 19:59:33 2014
New Revision: 263828
URL: http://svnweb.freebsd.org/changeset/base/263828

Log:
  Update for r263815 and r263826
  
  Sponsored by:	The FreeBSD Foundation

Deleted:
  projects/uefi/sys/amd64/include/efi.h
Modified:
  projects/uefi/sys/amd64/amd64/machdep.c
  projects/uefi/sys/boot/amd64/efi/bootinfo.c
  projects/uefi/sys/boot/amd64/efi/framebuffer.c
  projects/uefi/sys/boot/amd64/efi/framebuffer.h

Modified: projects/uefi/sys/amd64/amd64/machdep.c
==============================================================================
--- projects/uefi/sys/amd64/amd64/machdep.c	Thu Mar 27 19:53:37 2014	(r263827)
+++ projects/uefi/sys/amd64/amd64/machdep.c	Thu Mar 27 19:59:33 2014	(r263828)
@@ -114,7 +114,6 @@ __FBSDID("$FreeBSD$");
 #include <machine/clock.h>
 #include <machine/cpu.h>
 #include <machine/cputypes.h>
-#include <machine/efi.h>
 #include <machine/intr_machdep.h>
 #include <x86/mca.h>
 #include <machine/md_var.h>
@@ -147,39 +146,6 @@ __FBSDID("$FreeBSD$");
 #include <isa/rtc.h>
 #include <x86/init.h>
 
-enum EFI_MEMORY_TYPE {
-    EfiReservedMemoryType,
-    EfiLoaderCode,
-    EfiLoaderData,
-    EfiBootServicesCode,
-    EfiBootServicesData,
-    EfiRuntimeServicesCode,
-    EfiRuntimeServicesData,
-    EfiConventionalMemory,
-    EfiUnusableMemory,
-    EfiACPIReclaimMemory,
-    EfiACPIMemoryNVS,
-    EfiMemoryMappedIO,
-    EfiMemoryMappedIOPortSpace,
-    EfiPalCode,
-    EfiMaxMemoryType
-};
-
-// possible caching types for the memory range
-#define EFI_MEMORY_UC           0x0000000000000001
-#define EFI_MEMORY_WC           0x0000000000000002
-#define EFI_MEMORY_WT           0x0000000000000004
-#define EFI_MEMORY_WB           0x0000000000000008
-#define EFI_MEMORY_UCE          0x0000000000000010  
-
-// physical memory protection on range 
-#define EFI_MEMORY_WP           0x0000000000001000
-#define EFI_MEMORY_RP           0x0000000000002000
-#define EFI_MEMORY_XP           0x0000000000004000
-
-// range requires a runtime mapping
-#define EFI_MEMORY_RUNTIME      0x8000000000000000
-
 /* Sanity check for __curthread() */
 CTASSERT(offsetof(struct pcpu, pc_curthread) == 0);
 
@@ -1605,7 +1571,6 @@ parsememmap(caddr_t kmdp, u_int64_t firs
 {
 	int i, physmap_idx;
 	u_long physmem_tunable;
-	struct efi_header *efihdr;
 
 	bzero(physmap, sizeof(physmap));
 	basemem = 0;

Modified: projects/uefi/sys/boot/amd64/efi/bootinfo.c
==============================================================================
--- projects/uefi/sys/boot/amd64/efi/bootinfo.c	Thu Mar 27 19:53:37 2014	(r263827)
+++ projects/uefi/sys/boot/amd64/efi/bootinfo.c	Thu Mar 27 19:59:33 2014	(r263828)
@@ -225,8 +225,8 @@ bi_load_efi_data(struct preloaded_file *
 	struct efi_header *efihdr;
 	struct efi_fb efifb;
 
-	efi_find_framebuffer(&efifb);
-	file_addmetadata(kfp, MODINFOMD_EFI_FB, sizeof(efifb), &efifb);
+	if (efi_find_framebuffer(&efifb) == 0)
+		file_addmetadata(kfp, MODINFOMD_EFI_FB, sizeof(efifb), &efifb);
 
         efisz = (sizeof(struct efi_header) + 0xf) & ~0xf;
 

Modified: projects/uefi/sys/boot/amd64/efi/framebuffer.c
==============================================================================
--- projects/uefi/sys/boot/amd64/efi/framebuffer.c	Thu Mar 27 19:53:37 2014	(r263827)
+++ projects/uefi/sys/boot/amd64/efi/framebuffer.c	Thu Mar 27 19:59:33 2014	(r263828)
@@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$");
 
 static EFI_GUID gop_guid = EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID;
 
-void
+int
 efi_find_framebuffer(struct efi_fb *efifb)
 {
 	EFI_GRAPHICS_OUTPUT			*gop;
@@ -47,15 +47,12 @@ efi_find_framebuffer(struct efi_fb *efif
 	EFI_GRAPHICS_OUTPUT_MODE_INFORMATION	*info;
 
 	status = BS->LocateProtocol(&gop_guid, NULL, (VOID **)&gop);
-	if (EFI_ERROR(status)) {
-		efifb->fb_present = 0;
-		return;
-	}
+	if (EFI_ERROR(status))
+		return (1);
 
 	mode = gop->Mode;
 	info = gop->Mode->Info;
 
-	efifb->fb_present = 1;
 	efifb->fb_addr = mode->FrameBufferBase;
 	efifb->fb_size = mode->FrameBufferSize;
 	efifb->fb_height = info->VerticalResolution;
@@ -83,6 +80,7 @@ efi_find_framebuffer(struct efi_fb *efif
 		    info->PixelInformation.ReservedMask;
 		break;
 	default:
-		efifb->fb_present = 0;
+		return (1);
 	}
+	return (0);
 }

Modified: projects/uefi/sys/boot/amd64/efi/framebuffer.h
==============================================================================
--- projects/uefi/sys/boot/amd64/efi/framebuffer.h	Thu Mar 27 19:53:37 2014	(r263827)
+++ projects/uefi/sys/boot/amd64/efi/framebuffer.h	Thu Mar 27 19:59:33 2014	(r263828)
@@ -1,6 +1,6 @@
 #ifndef	_EFIFB_H_
 #define	_EFIFB_H_
 
-void	efi_find_framebuffer(struct efi_fb *efifb);
+int	efi_find_framebuffer(struct efi_fb *efifb);
 
 #endif /* _EFIFB_H_ */


More information about the svn-src-projects mailing list