summaryrefslogblamecommitdiffstats
path: root/efi_memtest/README
blob: f720d98741cfab8bda352e912948d636909f6962 (plain) (tree)
1
      
















                                                                                         
 



                       
                               





                     
 


                                         
                                           


                       
 


                                                          

 


                
                                                              
 

                                                                                                                
 
                       

                  






                                                                                
                                

                                              





                                                                                          













                                                                                                
 



                                                                                                      
                                          


                                                                                                  


               

                                              
README
This is a Memtest version for UEFI, based on the code of memtest86+ for BIOS. (TODO Link)

>>Changelog<<

 -	Replace bootloader by UEFI application entry point - UefiMain()
 -	Libs and GenFW from edkII
 -	Assembly to 64 bit version
 -	Pointer to Int conversion
 -	Display
 		+ General
 		+ Config menu
 		+ Scrollbuffer (no text mode)
 -	Logger
 -	GetMemoryMap()
 -	SMBIOS Table
 -	Keyboard Input


TABLE OF CONTENTS
======================
	1) DEPENDENCIES
	2) DOWNLOAD
	3) HOW TO BUILD AND RUN
	4) OPEN TASKS
	5) CONTACT


1) DEPENDENCIES
====================

The build process is tested on
	- Ubuntu 18.04.5 LTS
	- Kernel version 5.4.0-80-generic
	- qemu-system-x86_64 version 2.11.1
	- Uefi Spec 2.8
	- gcc 7.5.0
	- GNU Make 4.1

	- System:
		Intel® Core™ i5-3470 CPU @ 3.20GHz × 4
		AMD ...


2) DOWNLOAD
================

	git clone git@git.openslx.org:openslx-ng/memtest86.git

	!! Note: If you want to make tests with Uefi's AllocatePages() function, switch to allocate-pages branch


3) HOW TO BUILD AND RUN
==================

	a) via QEMU:
		Open a Terminal, navigate into efi_memtest directory and execute

		-- sudo make
				to build and run in qemu


		-- sudo make run
				to run in qemu


		Inside QEMU:

			- type "fs0:" to switch into filesystems containing MemtestEfi.efi
			- type "MemtestEfi.efi" to run the application

	b) via USB:

		- Rename MemtestEfi.efi to BOOTX64.efi
		- Format USB drive to FAT32
		- copy the efi file into /efi/boot/BOOTX64.efi
		- If you want to use the logger, create a file "memtest_log" in efi/ directory

		I had to disable the Networkstack in BIOS,
		then enter the bootmenu via F12 during the boot process and choose the USB drive

	c) via PXE:

		Create a TFTP server, copy MemtestEfi.efi on this server
		Enable Networkboot on the test computer

4) OPEN TASKS
==================
	The MemtestEfi project is still in development so there are still a lot of open tasks.
	You can see a summary of known issues at https://lab.ks.uni-freiburg.de/projects/memtest86-efi
	with no guarantee of completeness.

	The entry point is UefiMain() in MemtestEfi.c.
	This function calls test_start() which is the entry point of the original Memtest86+ code.
	
5) CONTACT
===============
	Regina König <koenig_regina@arcor.de>