Why doesn't the hpet show up in E820 map?

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
poby
Posts: 24
Joined: Wed Sep 21, 2016 9:39 am

Why doesn't the hpet show up in E820 map?

Post by poby »

.
.
0xFEC00000 Len: 0x1000 type 2
0xFEE00000 Len: 0x1000 type 2
0xFFFC0000 Len: 0x40000 type 2

Why doesn't 0xFED00000 show up? It's the address used by the HPET which is enabled and working.
Octocontrabass
Member
Member
Posts: 5587
Joined: Mon Mar 25, 2013 7:01 pm

Re: Why doesn't the hpet show up in E820 map?

Post by Octocontrabass »

Either the ACPI specification doesn't require the HPET MMIO to be listed in the E820 address map, or there's a bug in the BIOS you're using.

If you need to know which of those it is, you'll have to refer to the ACPI specification.
jnc100
Member
Member
Posts: 775
Joined: Mon Apr 09, 2007 12:10 pm
Location: London, UK
Contact:

Re: Why doesn't the hpet show up in E820 map?

Post by jnc100 »

poby wrote:Why doesn't 0xFED00000 show up? It's the address used by the HPET which is enabled and working.
There's no reason it should. All 'Type 2' means is that this region should not be assigned to a device enumerated by ACPI using the ACPI _SRS method. In particular, it usually represents the location of the BIOS, APICs and fixed location legacy devices.

If for some reason you do wish to relocate the devices enumerated by ACPI (e.g. the HPET) using _SRS then you also need to keep a track yourself of where all devices are and avoid conflicts. The easiest thing to do, however, is simply leave them where the firmware put them.

Regards,
John.
Post Reply