summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRegia König2021-08-09 14:38:13 +0200
committerRegia König2021-08-09 14:38:13 +0200
commit624ae6022c856593dfd579f9323b7ceb86e96f4a (patch)
tree03e13c5791563e1114cea51dfcc43114af674c99
parentProvide source code of GenFW in __JustForReference__Unused__ directory (diff)
downloadmemtest86-624ae6022c856593dfd579f9323b7ceb86e96f4a.tar.gz
memtest86-624ae6022c856593dfd579f9323b7ceb86e96f4a.tar.xz
memtest86-624ae6022c856593dfd579f9323b7ceb86e96f4a.zip
Make some corrections
-rw-r--r--efi_memtest/README27
-rw-r--r--efi_memtest/memtest86+/efi/test_cache.h8
2 files changed, 26 insertions, 9 deletions
diff --git a/efi_memtest/README b/efi_memtest/README
index e2c3330..f720d98 100644
--- a/efi_memtest/README
+++ b/efi_memtest/README
@@ -1,12 +1,27 @@
README
-This is a Memtest version for UEFI, based on the code of memtest86+ for BIOS...
-TODO: what is done?
+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 RUN
+ 3) HOW TO BUILD AND RUN
4) OPEN TASKS
5) CONTACT
@@ -32,8 +47,10 @@ The build process is tested on
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 RUN
+3) HOW TO BUILD AND RUN
==================
a) via QEMU:
@@ -71,7 +88,7 @@ The build process is tested on
==================
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
- No guarantee of completeness.
+ 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.
diff --git a/efi_memtest/memtest86+/efi/test_cache.h b/efi_memtest/memtest86+/efi/test_cache.h
index a6ea496..221030f 100644
--- a/efi_memtest/memtest86+/efi/test_cache.h
+++ b/efi_memtest/memtest86+/efi/test_cache.h
@@ -2,9 +2,9 @@ static inline void cache_off(void)
{
asm(
"push %rax\n\t"
- "movq %cr0,%eax\n\t"
+ "movq %cr0,%rax\n\t"
"orl $0x40000000,%eax\n\t" /* Set CD */
- "movq %eax,%cr0\n\t"
+ "movq %rax,%cr0\n\t"
"wbinvd\n\t"
"pop %rax\n\t");
}
@@ -13,8 +13,8 @@ static inline void cache_on(void)
{
asm(
"push %rax\n\t"
- "movq %cr0,%eax\n\t"
+ "movq %cr0,%rax\n\t"
"andl $0x9fffffff,%eax\n\t" /* Clear CD and NW */
- "movq %eax,%cr0\n\t"
+ "movq %rax,%cr0\n\t"
"pop %rax\n\t");
}