From: Masahiro Yamada Date: Wed, 8 Jan 2020 11:08:44 +0000 (+0900) Subject: x86: use invd instead of wbinvd in real mode start code X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=0d67fac29f3187e67f4fd3ef15f73e91be2fad12;p=u-boot.git x86: use invd instead of wbinvd in real mode start code I do not know why the boot code immediately after the system reset should write-back the cache content. I think the cache invalidation should be enough. I tested this commit with qemu-x86_defconfig, and it worked for me. Signed-off-by: Masahiro Yamada Reviewed-by: Simon Glass Reviewed-by: Bin Meng Tested-by: Bin Meng --- diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S index 01524635e9..26cf995db2 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -50,7 +50,7 @@ _x86boot_start: movl %cr0, %eax orl $(X86_CR0_NW | X86_CR0_CD), %eax movl %eax, %cr0 - wbinvd + invd /* * Zero the BIST (Built-In Self Test) value since we don't have it. diff --git a/arch/x86/cpu/start16.S b/arch/x86/cpu/start16.S index 54f4ff6662..292e750508 100644 --- a/arch/x86/cpu/start16.S +++ b/arch/x86/cpu/start16.S @@ -28,7 +28,7 @@ start16: movl %cr0, %eax orl $(X86_CR0_NW | X86_CR0_CD), %eax movl %eax, %cr0 - wbinvd + invd /* load the temporary Global Descriptor Table */ data32 cs lidt idt_ptr