remarkable-linux/drivers/pci/pcie
Bjorn Helgaas 93de690176 PCI: Check for PCI_HEADER_TYPE_BRIDGE equality, not bitmask
Bit 7 of the "Header Type" register indicates a multi-function device when
set.  Bits 0-6 contain encoded values, where 0x1 indicates a PCI-PCI
bridge.  It is incorrect to test this as though it were a mask.

For example, while the PCI 3.0 spec only defines values 0x0, 0x1, and 0x2,
it's conceivable that a future spec could define 0x3 to mean something
else; then tests for "(hdr_type & 0x7f) & PCI_HEADER_TYPE_BRIDGE" would
incorrectly succeed for this new 0x3 header type.

Test bits 0-6 of the Header Type for equality with PCI_HEADER_TYPE_BRIDGE.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-12-10 19:38:06 -06:00
..
aer PCI: Check for PCI_HEADER_TYPE_BRIDGE equality, not bitmask 2015-12-10 19:38:06 -06:00
aspm.c PCI/ASPM: Simplify Clock Power Management setting 2015-06-10 14:00:21 -05:00
Kconfig PCI / PM: Drop CONFIG_PM_RUNTIME from the PCI core 2014-12-04 00:50:33 +01:00
Makefile
pme.c PCI / PM: handle failure to enable wakeup on PCIe PME 2014-10-23 22:47:28 +02:00
portdrv.h PCI: Fix whitespace, capitalization, and spelling errors 2013-11-14 11:28:18 -07:00
portdrv_acpi.c
portdrv_bus.c PCI: Fix whitespace, capitalization, and spelling errors 2013-11-14 11:28:18 -07:00
portdrv_core.c PCI: Fix pcie_port_device_resume() comment 2015-07-14 13:41:04 -05:00
portdrv_pci.c PCI/PM: Drop unused runtime PM support code for PCIe ports 2014-09-02 17:12:15 -06:00