PCI BIOS and compatibility mode

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.
Post Reply
Occam
Posts: 6
Joined: Fri May 15, 2009 5:26 am

PCI BIOS and compatibility mode

Post by Occam »

Hi guys,
Have any of you ever tried to invoke the PCI BIOS while running in compatibility (IA-32e) mode?
In my system I'm able to query the BIOS32 service directory for the entry point of the PCI BIOS (in IA-32e mode), but calls to the PCI BIOS fail.

Occ
Occam
Posts: 6
Joined: Fri May 15, 2009 5:26 am

Re: PCI BIOS and compatibility mode

Post by Occam »

To clarify. I'm just interested in whether anyone has successfully invoked the PCI BIOS in IA-32e mode. How the calls fail is rather amusing, but not relevant if the PCI BIOS does not support IA-32e mode calls.

thx,
Occ
Occam
Posts: 6
Joined: Fri May 15, 2009 5:26 am

Re: PCI BIOS and compatibility mode

Post by Occam »

As a followup question. Have any of you guys successfully managed to switch from 64 bit mode and down to protected mode using the Intel manual recipe?

Occ
Occam
Posts: 6
Joined: Fri May 15, 2009 5:26 am

Re: PCI BIOS and compatibility mode

Post by Occam »

For future reference:

At least on my system (Dell PowerEdge M600, PCI BIOS major version 3, minor version 0), the PCI BIOS can be invoked in 32-bit compatibility mode.

Regarding switching back to protected/real mode from 64-bit mode and the recipe in the Intel manual:
32- and 16-bit compatibility mode both works for step 1.
VMX must be turned off or you will get a general protection fault in step 2 (when clearing CR0.PG).


Occ
Post Reply