Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1448658

Re: Why does BIOS assign memory to 16 byte BAR

From Bjorn Helgaas <helgaas@kernel.org>
Newsgroups linux.kernel
Subject Re: Why does BIOS assign memory to 16 byte BAR
Date 2016-07-22 18:00 +0200
Message-ID <rXL1M-7Ib-29@gated-at.bofh.it> (permalink)
References <rXKp3-7uV-15@gated-at.bofh.it> <rXKp3-7uV-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Jul 22, 2016 at 10:15:46AM -0500, Bjorn Helgaas wrote:
> Hi Bharat,
> 
> On Fri, Jul 22, 2016 at 09:24:22AM +0000, Bharat Kumar Gogada wrote:
> > Hi,
> > 
> > I'm observing that on x86 BIOS successfully assigns memory if an End point requests
> > BAR of size 16byte.
> > 
> > But as per Spec:
> > The minimum memory address range requested by a BAR is 128 bytes.
> 
> Can you provide the spec reference for this?  I don't see it in PCI
> r3.0.
>
> PCI r3.0, sec 6.2.5.1, shows bits 4-31 of a memory BAR as writable,
> which would correspond to a minimum size of 16 bytes.

The reference above is to the conventional PCI spec.  I happened to
trip over a note in PCIe r3.0, sec 1.3.2.2, that for a PCI Express
endpoint, "the minimum memory address range requested by a BAR is 128
bytes."

I don't think linux currently enforces this minimum.

Bjorn

Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Re: Why does BIOS assign memory to 16 byte BAR Bjorn Helgaas <helgaas@kernel.org> - 2016-07-22 17:20 +0200
  Re: Why does BIOS assign memory to 16 byte BAR Bjorn Helgaas <helgaas@kernel.org> - 2016-07-22 18:00 +0200

csiph-web