]> git.baikalelectronics.ru Git - kernel.git/commit
PCI: only save/restore existent registers in the PCIe capability
authorYu Zhao <yu.zhao@intel.com>
Thu, 9 Apr 2009 06:57:39 +0000 (14:57 +0800)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Wed, 22 Apr 2009 22:59:41 +0000 (15:59 -0700)
commit8958eca45fa963ff2d64c2a9315d0551bff17399
tree12a67c35d30ee626ca46d497c35f3a7d952034c5
parent9138914013a1b8e38f101eb2d629b519af92fb2c
PCI: only save/restore existent registers in the PCIe capability

PCIe 1.1 base neither requires the endpoint to implement the entire
PCIe capability structure nor specifies default values of registers
that are not implemented by the device. So we only save and restore
registers that must be implemented by different device types if the
device PCIe capability version is 1.

PCIe 1.1 Capability Structure Expansion ECN and PCIe 2.0 requires
all registers in the PCIe capability to be either implemented or
hardwired to 0. Their PCIe capability version is 2.

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pci.c
include/linux/pci_regs.h