Cannot boot on new Intel i3 laptop

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
User avatar
zaval
Member
Member
Posts: 656
Joined: Fri Feb 17, 2017 4:01 pm
Location: Ukraine, Bachmut
Contact:

Re: Cannot boot on new Intel i3 laptop

Post by zaval »

I knew some smart 455 will stick up his nose and start telling about the built in UEFI shell command. what a surprise was to discover the name of the smart 455. :mrgreen: I do know about that command, the point of my suggestion was in an absolutely other thing, than just printing the memory map. rdos seems to believe, that laptop FW does some magic with the memory map, that only can be clear to the Windows loader. I believe, there is no magic and maybe my simple memory map dumper would convince him, that there is something wrong in his loader, not the FW. using it could be easier and more revealing, than modifying the rdos loader, inserting things there or there, possibly introducing new errors. that simple UEFI application uses GetMemoryMap() the way, an OSL is supposed to use, yet it does nothing else and if that app would work fine on the laptop, that would be 100% proof, some errors are inside the rdos UEFI loader.
ANT - NT-like OS for x64 and arm64.
efify - UEFI for a couple of boards (mips and arm). suspended due to lost of all the target park boards (russians destroyed our town).
rdos
Member
Member
Posts: 3297
Joined: Wed Oct 01, 2008 1:55 pm

Re: Cannot boot on new Intel i3 laptop

Post by rdos »

zaval wrote:
rdos wrote: I've managed to boot up the i3 with 1920x1080 resolution now, and the command shell works and so does the graphics demo. However, that's where the good news ends. The RTL8168 network chip doesn't work with my driver, and the SATA disc is in RAID mode and cannot be found. The USB stack seems to work, but the specification seems to be incorrect since it only has one XHCI (which would be fine). The VBE mode performance is horrible, just like it is on other newer Intel platforms. It performs in paritity with very old 486 or Pentium hardware.

So, I'm giving it away since it is worthless for running my OS on.
In UEFI mode? if so, what did you change, what was the problem?
No, it was in legacy mode using VBE to setup the native video mode.
zaval wrote: If it's about legacy mode, then you may try to check how GetMemoryMap() behaves just by creating a small UEFI memory map dumper. I have such, it just prints the memory map into ConOut (display, serial). if you want to try it, let me know.
Sure. Do you have it as a 64-bit EFI file? I can select to boot EFI files directly in the BIOS. If I have some bug in my EFI loader (other than unusual fixed requirements), I want to fix them.
rdos
Member
Member
Posts: 3297
Joined: Wed Oct 01, 2008 1:55 pm

Re: Cannot boot on new Intel i3 laptop

Post by rdos »

Octocontrabass wrote:
rdos wrote:According to the PAT table in the processor manual, PAT1 is write combining.
Did you program PAT1 to write-combining? By default, PAT1 is write-through.
OK, I missed that.

New code to setup PAT:

Code: Select all

IA32_PAT      = 277h

    mov eax,1
    cpuid
    mov ds:cpu_feature_flags,edx
;
    mov eax,ds:cpu_feature_flags
    test eax,10000h
    jz init_pat_done
;
    mov ecx,IA32_PAT
    rdmsr
    and ah,NOT 7
    or ah,1
    wrmsr

init_pat_done:

This changes the results marginally. On the AMD, there is no difference, while on Intel I3 operations increase to 6400. Thus, the difference remains at a factor 7.
rdos
Member
Member
Posts: 3297
Joined: Wed Oct 01, 2008 1:55 pm

Re: Cannot boot on new Intel i3 laptop

Post by rdos »

I fixed the issue with the memory map thanks to zavals code. The main problem was that 4k was too little for the memory map, and when I increased to 8k a reasonable memmap is constructed. I also set the size to sizeof() the memory structure.

So, now I can boot it from EFI too, but the issues are the same and the graphics performance is the same.
Post Reply