From: "Sean O. Stalley" <sean.stalley@intel.com>
To: Martin Mares <mj@ucw.cz>
Cc: David Daney <ddaney.cavm@gmail.com>,
Bjorn Helgaas <bhelgaas@google.com>,
linux-pci@vger.kernel.org, David Daney <david.daney@cavium.com>
Subject: Re: [PATCH v3] Add lspci support for Enhanced Allocation Capability.
Date: Tue, 22 Dec 2015 09:33:33 -0800 [thread overview]
Message-ID: <20151222173333.GA3301@sean.stalley.intel.com> (raw)
In-Reply-To: <mj+md-20151222.152501.98524.nikam@ucw.cz>
[-- Attachment #1: Type: text/plain, Size: 859 bytes --]
On Tue, Dec 22, 2015 at 04:26:02PM +0100, Martin Mares wrote:
>
> I will merge this soon.
>
> Could you please provide a hex dump of a config space with this
> capability? (See the test cases in pciutils/tests/.)
Attached is a hex dump from a QEMU model using EA entries in leiu of BARs.
I also attached the output of lspci, so you can see how the Region fields are displayed.
Note that EA memory regions get tagged as [virtual].
I attached 2 outputs to show the truncation case I was talking about [1].
lt_size is the output when (x < 1024) is used in show_size(),
whereas mod_size is the output when (x % 1024) is used.
Thanks for taking a look,
Sean
[1]
diff mod_size lt_size
8c8
< Region 0: [virtual] Memory at 80000000 (32-bit, non-prefetchable) [size=131076]
---
> Region 0: [virtual] Memory at 80000000 (32-bit, non-prefetchable) [size=128K]
[-- Attachment #2: mod_size --]
[-- Type: text/plain, Size: 1114 bytes --]
00:04.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 03)
Subsystem: Red Hat, Inc QEMU Virtual Machine
Physical Slot: 4
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 11
Region 0: [virtual] Memory at 80000000 (32-bit, non-prefetchable) [size=131076]
Region 1: I/O ports at 0a00 [size=68]
Capabilities: [40] Enhanced Allocation (EA): NumEntries=2
Entry 0: Enable+ Writable- EntrySize=2
BAR Equivalent Indicator: BAR 0
PrimaryProperties: memory space, non-prefetchable
SecondaryProperties: entry unavailable for use, PrimaryProperties should be used
Base: 80000000
MaxOffset: 00020003
Entry 1: Enable+ Writable- EntrySize=2
BAR Equivalent Indicator: BAR 1
PrimaryProperties: I/O space
SecondaryProperties: entry unavailable for use, PrimaryProperties should be used
Base: 00000a00
MaxOffset: 00000043
Kernel driver in use: e1000
[-- Attachment #3: lt_size --]
[-- Type: text/plain, Size: 1112 bytes --]
00:04.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 03)
Subsystem: Red Hat, Inc QEMU Virtual Machine
Physical Slot: 4
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 11
Region 0: [virtual] Memory at 80000000 (32-bit, non-prefetchable) [size=128K]
Region 1: I/O ports at 0a00 [size=68]
Capabilities: [40] Enhanced Allocation (EA): NumEntries=2
Entry 0: Enable+ Writable- EntrySize=2
BAR Equivalent Indicator: BAR 0
PrimaryProperties: memory space, non-prefetchable
SecondaryProperties: entry unavailable for use, PrimaryProperties should be used
Base: 80000000
MaxOffset: 00020003
Entry 1: Enable+ Writable- EntrySize=2
BAR Equivalent Indicator: BAR 1
PrimaryProperties: I/O space
SecondaryProperties: entry unavailable for use, PrimaryProperties should be used
Base: 00000a00
MaxOffset: 00000043
Kernel driver in use: e1000
[-- Attachment #4: cap-ea --]
[-- Type: text/plain, Size: 925 bytes --]
00:04.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 03)
00: 86 80 0e 10 07 01 10 00 03 00 00 02 00 00 00 00
10: 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 f4 1a 00 11
30: 00 00 00 00 40 00 00 00 00 00 00 00 0b 01 00 00
40: 14 00 02 00 02 00 ff 80 00 00 00 80 00 00 02 00
50: 12 02 ff 80 00 0a 00 00 40 00 00 00 00 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
prev parent reply other threads:[~2015-12-22 17:36 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-15 22:15 [PATCH v3] Add lspci support for Enhanced Allocation Capability David Daney
2015-12-17 0:55 ` Sean O. Stalley
2015-12-23 0:24 ` David Daney
2015-12-22 15:26 ` Martin Mares
2015-12-22 17:33 ` Sean O. Stalley [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151222173333.GA3301@sean.stalley.intel.com \
--to=sean.stalley@intel.com \
--cc=bhelgaas@google.com \
--cc=david.daney@cavium.com \
--cc=ddaney.cavm@gmail.com \
--cc=linux-pci@vger.kernel.org \
--cc=mj@ucw.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).