cbid@tut.by

Expanded Configuration Space

Discussion created by cbid@tut.by on May 11, 2008
How to read ECS?

Hi!

I’m trying to read an expanded configuration space (from 100h to 1FFh) of Device 24 of Phenom processor. I use the following function for that purpose

function GetPCRD(Bus, Dev, Func, Reg : word): dword;
begin
SetPortLong($0CF8, $80000000 or ((Reg and $F00) shl 16) or (dword(Bus) shl 16) or ((dword(Dev) and
$1f) shl 11) or ((dword(Func) and $07) shl 8) or (Reg and $fc));
GetPCRD:=GetPortLong($0CFC);
end;

Unfortunately, the ECS is the same as base configuration space (00h – FFh). I have checked the EnableCf8ExtCfg bit of the NB_CFG MSR and it is set! Can someone help me please?

Outcomes