Add Intel MCHBAR read module#54
Conversation
|
Looks fine, just one thing: |
|
I noticed that I also have another concern about mapping the whole MCHBAR region once. On Intel Comet Lake and earlier CPUs, the MCHBAR size is 64 KB or smaller, not 128 KB. If 128 KB is mapped unconditionally, it may map beyond the valid MCHBAR range on those platforms. Would it be better to determine the actual MCHBAR size based on the CPU family/model, map only that range once, and then unmap it during unload? |
That one should be updated at some point as well. The oldest PawnIO release had a bug where
Yes |
|
I have updated the PR according to your suggestion. The MCHBAR size is selected based on the CPU family/model, instead of always mapping 128 KB: 32 KB for pre-IceLake microarchitectures I also removed the server and some special-platform model entries for now, because I could not find public documentation for their MCHBAR register layout. Tested on:
|
This PR adds a read-only Intel MCHBAR module for PawnIO.
Supported Hardware : Intel Sandy Bridge (Core 2nd Gen) - Nova Lake
This module is read-only and does not expose any write operation to the MCHBAR region.
It rejects unsupported platforms, out-of-range offsets, and unaligned accesses.
Tested on:
References: