PCI: Extending pci=resource_alignment to specify device/vendor IDs
authorKoehrer Mathias (ETAS/ESW5) <mathias.koehrer@etas.com>
Tue, 7 Jun 2016 14:24:17 +0000 (14:24 +0000)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 21 Jun 2016 22:00:34 +0000 (17:00 -0500)
commit644a544fd9bcd65f524768b85ab22f62ed08e107
tree26ed01e3044c8186b603fd0aae0fbf4d5db03c28
parent3b146b24a40096d1a42f288e237e24352c93269e
PCI: Extending pci=resource_alignment to specify device/vendor IDs

Some uio-based PCI drivers, e.g., uio_cif do not work if the assigned PCI
memory resources are not page aligned.

By using the kernel option "pci=resource_alignment" it is possible to force
single PCI boards to use page alignment for their memory resources.
However, this is fairly cumbersome if several of these boards are in use
as the specification of the cards has to be done via PCI bus/slot/function
number which might change, e.g., by adding another board.

Extend the kernel option "pci=resource_alignment" to allow specification of
relevant devices via PCI device/vendor (and subdevice/subvendor) IDs.  The
specification of the devices via device/vendor is indicated by a leading
string "pci:" as argument to "pci=resource_alignment".  The format of the
specification is pci:<vendor>:<device>[:<subvendor>:<subdevice>]

Signed-off-by: Mathias Koehrer <mathias.koehrer@etas.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Documentation/kernel-parameters.txt
drivers/pci/pci.c