[coreboot] How to understand register address on x86?
Zoran Stojsavljevic
zoran.stojsavljevic at gmail.com
Sat Jan 14 07:02:45 CET 2017
Hello 김유석,
Here is the alghoritm how you'll calculate the address: SLOTCAP
address (B0:D1-4:F0:Offset 0x54[31:19]).
There are 16 bits for PCIe space:
[1] 8 most significant bits for buses (256 maximum);
[2] 5 bits for device ids (32 maximum) per bus;
[3] 3 bits for functions (8 maximum) per device!
Gives maximum number od 2^16 (65536) different functions, each
function has 2^12 (4096 Bytes) configuration space. In total, 256MB
space near TOM for PCIe configuration space.
Now, you can calculate your physical address as such: BASE address +
bus0 + devices 1 to 4 + Function 0 => Physical BASE PCIe address
holding config space (4 most significant bits) + 0x00080054.
I strongly advise you to execute the following command: lspci --help
and review the options (this is very helpful command).
Interesting options for you are:
-xxx Show hex-dump of the whole config space (dangerous; root only)
-xxxx Show hex-dump of the 4096-byte extended config space (root only)
You can also do: lspci -xxx and see what are the BAR addresses for
00:01.0, 00:02.0, 00:03.0 and 00:04.0 (where the data memory is
physically mapped for the device, per function).
You can also use the following options:
-xxx Show hex-dump of the whole config space (dangerous; root only)
-xxxx Show hex-dump of the 4096-byte extended config space (root only)
Interesting pointer to read (for clarification):
https://forums.xilinx.com/t5/PCI-Express/PCI-express-Base-Address-Register/td-p/685289
Good Luck,
Zoran
_______
On 1/13/17, Alexander Böcken <Alexander.Boecken at junger-audio.com> wrote:
> Hello,
>
> this is a PCI related notation. It means Bus 0, Device 1-4, Function 0 of
> your board’s PCI bus. Then register offset 0x54, bits 31 to 19.
>
> Regards,
> Alex
>
> Von: coreboot [mailto:coreboot-bounces at coreboot.org] Im Auftrag von ???
> Gesendet: Freitag, 13. Januar 2017 07:35
> An: coreboot
> Betreff: [coreboot] How to understand register address on x86?
>
>
> Dear Sir.
>
>
>
> This time, I try to read the "V2_Avoton_BWG_Rev1_6_review.pdf" Page 169. Is
> see below.
>
> [cid:image001.jpg at 01D26D74.F2F9B250]
>
> But I don't understand the SLOTCAP address (B0:D1-4:F0:Offset 0x54[31:19]).
>
>
>
> Could you explain this mean to me?
>
>
>
> Thank you.
>
>
>
More information about the coreboot
mailing list