]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 22 May 2010 01:58:52 +0000 (18:58 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 22 May 2010 01:58:52 +0000 (18:58 -0700)
* 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (36 commits)
  PCI: hotplug: pciehp: Removed check for hotplug of display devices
  PCI: read memory ranges out of Broadcom CNB20LE host bridge
  PCI: Allow manual resource allocation for PCI hotplug bridges
  x86/PCI: make ACPI MCFG reserved error messages ACPI specific
  PCI hotplug: Use kmemdup
  PM/PCI: Update PCI power management documentation
  PCI: output FW warning in pci_read/write_vpd
  PCI: fix typos pci_device_dis/enable to pci_dis/enable_device in comments
  PCI quirks: disable msi on AMD rs4xx internal gfx bridges
  PCI: Disable MSI for MCP55 on P5N32-E SLI
  x86/PCI: irq and pci_ids patch for additional Intel Cougar Point DeviceIDs
  PCI: aerdrv: trivial cleanup for aerdrv_core.c
  PCI: aerdrv: trivial cleanup for aerdrv.c
  PCI: aerdrv: introduce default_downstream_reset_link
  PCI: aerdrv: rework find_aer_service
  PCI: aerdrv: remove is_downstream
  PCI: aerdrv: remove magical ROOT_ERR_STATUS_MASKS
  PCI: aerdrv: redefine PCI_ERR_ROOT_*_SRC
  PCI: aerdrv: rework do_recovery
  PCI: aerdrv: rework get_e_source()
  ...

1  2 
arch/x86/Kconfig
drivers/pci/hotplug/cpqphp_core.c
drivers/pci/pci-sysfs.c
drivers/pci/pci.c
include/linux/pci_regs.h

diff --combined arch/x86/Kconfig
index a2d3a5fbeeda02a7456fc21a843a70a15d9b1c14,677b87d60a366fcd1d24111cb8ffa95c99e21d11..e0c619c55b4e27149866cee2c932d8e2a6212f9b
@@@ -53,15 -53,11 +53,15 @@@ config X8
        select HAVE_KERNEL_LZMA
        select HAVE_KERNEL_LZO
        select HAVE_HW_BREAKPOINT
 +      select HAVE_MIXED_BREAKPOINTS_REGS
        select PERF_EVENTS
        select ANON_INODES
        select HAVE_ARCH_KMEMCHECK
        select HAVE_USER_RETURN_NOTIFIER
  
 +config INSTRUCTION_DECODER
 +      def_bool (KPROBES || PERF_EVENTS)
 +
  config OUTPUT_FORMAT
        string
        default "elf32-i386" if X86_32
@@@ -201,17 -197,20 +201,17 @@@ config HAVE_INTEL_TX
  
  # Use the generic interrupt handling code in kernel/irq/:
  config GENERIC_HARDIRQS
 -      bool
 -      default y
 +      def_bool y
  
  config GENERIC_HARDIRQS_NO__DO_IRQ
         def_bool y
  
  config GENERIC_IRQ_PROBE
 -      bool
 -      default y
 +      def_bool y
  
  config GENERIC_PENDING_IRQ
 -      bool
 +      def_bool y
        depends on GENERIC_HARDIRQS && SMP
 -      default y
  
  config USE_GENERIC_SMP_HELPERS
        def_bool y
@@@ -226,22 -225,19 +226,22 @@@ config X86_64_SM
        depends on X86_64 && SMP
  
  config X86_HT
 -      bool
 +      def_bool y
        depends on SMP
 -      default y
  
  config X86_TRAMPOLINE
 -      bool
 +      def_bool y
        depends on SMP || (64BIT && ACPI_SLEEP)
 -      default y
  
  config X86_32_LAZY_GS
        def_bool y
        depends on X86_32 && !CC_STACKPROTECTOR
  
 +config ARCH_HWEIGHT_CFLAGS
 +      string
 +      default "-fcall-saved-ecx -fcall-saved-edx" if X86_32
 +      default "-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11" if X86_64
 +
  config KTIME_SCALAR
        def_bool X86_32
  source "init/Kconfig"
@@@ -451,7 -447,7 +451,7 @@@ config X86_NUMA
          firmware with - send email to <Martin.Bligh@us.ibm.com>.
  
  config X86_SUPPORTS_MEMORY_FAILURE
 -      bool
 +      def_bool y
        # MCE code calls memory_failure():
        depends on X86_MCE
        # On 32-bit this adds too big of NODES_SHIFT and we run out of page flags:
        # On 32-bit SPARSEMEM adds too big of SECTIONS_WIDTH:
        depends on X86_64 || !SPARSEMEM
        select ARCH_SUPPORTS_MEMORY_FAILURE
 -      default y
  
  config X86_VISWS
        bool "SGI 320/540 (Visual Workstation)"
@@@ -573,6 -570,7 +573,6 @@@ config PARAVIRT_SPINLOCK
  
  config PARAVIRT_CLOCK
        bool
 -      default n
  
  endif
  
@@@ -751,6 -749,7 +751,6 @@@ config MAXSM
        bool "Configure Maximum number of SMP Processors and NUMA Nodes"
        depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL
        select CPUMASK_OFFSTACK
 -      default n
        ---help---
          Configure maximum number of CPUS and NUMA Nodes for this architecture.
          If unsure, say N.
@@@ -830,6 -829,7 +830,6 @@@ config X86_VISWS_API
  
  config X86_REROUTE_FOR_BROKEN_BOOT_IRQS
        bool "Reroute for broken boot IRQs"
 -      default n
        depends on X86_IO_APIC
        ---help---
          This option enables a workaround that fixes a source of
@@@ -876,8 -876,9 +876,8 @@@ config X86_MCE_AM
           the DRAM Error Threshold.
  
  config X86_ANCIENT_MCE
 -      def_bool n
 +      bool "Support for old Pentium 5 / WinChip machine checks"
        depends on X86_32 && X86_MCE
 -      prompt "Support for old Pentium 5 / WinChip machine checks"
        ---help---
          Include support for machine check handling on old Pentium 5 or WinChip
          systems. These typically need to be enabled explicitely on the command
  
  config X86_MCE_THRESHOLD
        depends on X86_MCE_AMD || X86_MCE_INTEL
 -      bool
 -      default y
 +      def_bool y
  
  config X86_MCE_INJECT
        depends on X86_MCE
@@@ -1024,8 -1026,8 +1024,8 @@@ config X86_CPUI
  
  choice
        prompt "High Memory Support"
 -      default HIGHMEM4G if !X86_NUMAQ
        default HIGHMEM64G if X86_NUMAQ
 +      default HIGHMEM4G
        depends on X86_32
  
  config NOHIGHMEM
@@@ -1283,7 -1285,7 +1283,7 @@@ source "mm/Kconfig
  
  config HIGHPTE
        bool "Allocate 3rd-level pagetables from highmem"
 -      depends on X86_32 && (HIGHMEM4G || HIGHMEM64G)
 +      depends on HIGHMEM
        ---help---
          The VM uses one page table entry for each page of physical memory.
          For systems with a lot of RAM, this can be wasteful of precious
@@@ -1367,7 -1369,8 +1367,7 @@@ config MATH_EMULATIO
          kernel, it won't hurt.
  
  config MTRR
 -      bool
 -      default y
 +      def_bool y
        prompt "MTRR (Memory Type Range Register) support" if EMBEDDED
        ---help---
          On Intel P6 family processors (Pentium Pro, Pentium II and later)
@@@ -1433,7 -1436,8 +1433,7 @@@ config MTRR_SANITIZER_SPARE_REG_NR_DEFA
          mtrr_spare_reg_nr=N on the kernel command line.
  
  config X86_PAT
 -      bool
 -      default y
 +      def_bool y
        prompt "x86 PAT support" if EMBEDDED
        depends on MTRR
        ---help---
@@@ -1601,7 -1605,8 +1601,7 @@@ config X86_NEED_RELOC
        depends on X86_32 && RELOCATABLE
  
  config PHYSICAL_ALIGN
 -      hex
 -      prompt "Alignment value to which kernel should be aligned" if X86_32
 +      hex "Alignment value to which kernel should be aligned" if X86_32
        default "0x1000000"
        range 0x2000 0x1000000
        ---help---
@@@ -1648,6 -1653,7 +1648,6 @@@ config COMPAT_VDS
  
  config CMDLINE_BOOL
        bool "Built-in kernel command line"
 -      default n
        ---help---
          Allow for specifying boot arguments to the kernel at
          build time.  On some systems (e.g. embedded ones), it is
@@@ -1681,6 -1687,7 +1681,6 @@@ config CMDLIN
  
  config CMDLINE_OVERRIDE
        bool "Built-in command line overrides boot loader arguments"
 -      default n
        depends on CMDLINE_BOOL
        ---help---
          Set this option to 'Y' to have the kernel ignore the boot loader
@@@ -1716,7 -1723,8 +1716,7 @@@ source "drivers/acpi/Kconfig
  source "drivers/sfi/Kconfig"
  
  config X86_APM_BOOT
 -      bool
 -      default y
 +      def_bool y
        depends on APM || APM_MODULE
  
  menuconfig APM
@@@ -1923,6 -1931,14 +1923,14 @@@ config PCI_MMCONFI
        bool "Support mmconfig PCI config space access"
        depends on X86_64 && PCI && ACPI
  
+ config PCI_CNB20LE_QUIRK
+       bool "Read CNB20LE Host Bridge Windows"
+       depends on PCI
+       help
+         Read the PCI windows out of the CNB20LE host bridge. This allows
+         PCI hotplug to work on systems with the CNB20LE chipset which do
+         not have ACPI.
  config DMAR
        bool "Support for DMA Remapping Devices (EXPERIMENTAL)"
        depends on PCI_MSI && ACPI && EXPERIMENTAL
@@@ -1945,7 -1961,8 +1953,7 @@@ config DMAR_DEFAULT_O
          experimental.
  
  config DMAR_BROKEN_GFX_WA
 -      def_bool n
 -      prompt "Workaround broken graphics drivers (going away soon)"
 +      bool "Workaround broken graphics drivers (going away soon)"
        depends on DMAR && BROKEN
        ---help---
          Current Graphics drivers tend to use physical address
@@@ -2043,6 -2060,7 +2051,6 @@@ config SCx200HR_TIME
  config OLPC
        bool "One Laptop Per Child support"
        select GPIOLIB
 -      default n
        ---help---
          Add support for detecting the unique features of the OLPC
          XO hardware.
index 6644337d63d68249b1bca0241e188db08dbabe5e,cb7818ffd5cf4a0bb655785dff3a3ff1c8be6b1c..b3e5580c837b782ed3cf86108b82ee3e4c5473e6
@@@ -848,7 -848,7 +848,7 @@@ static int cpqhpc_probe(struct pci_dev 
                goto err_disable_device;
        }
  
 -      /* Check for the proper subsytem ID's
 +      /* Check for the proper subsystem ID's
         * Intel uses a different SSID programming model than Compaq.
         * For Intel, each SSID bit identifies a PHP capability.
         * Also Intel HPC's may have RID=0.
  
        /* make our own copy of the pci bus structure,
         * as we like tweaking it a lot */
-       ctrl->pci_bus = kmalloc(sizeof(*ctrl->pci_bus), GFP_KERNEL);
+       ctrl->pci_bus = kmemdup(pdev->bus, sizeof(*ctrl->pci_bus), GFP_KERNEL);
        if (!ctrl->pci_bus) {
                err("out of memory\n");
                rc = -ENOMEM;
                goto err_free_ctrl;
        }
-       memcpy(ctrl->pci_bus, pdev->bus, sizeof(*ctrl->pci_bus));
  
        ctrl->bus = pdev->bus->number;
        ctrl->rev = pdev->revision;
diff --combined drivers/pci/pci-sysfs.c
index 6309c5a2528f1912bddabaabc6b870ed271a54e7,89a08ed39c94959ce1e67c7c4cfe9253b2b235db..afd2fbf7d797185f9e645ff85f7450edc7039889
@@@ -21,7 -21,6 +21,7 @@@
  #include <linux/stat.h>
  #include <linux/topology.h>
  #include <linux/mm.h>
 +#include <linux/fs.h>
  #include <linux/capability.h>
  #include <linux/pci-aspm.h>
  #include <linux/slab.h>
@@@ -358,8 -357,7 +358,8 @@@ boot_vga_show(struct device *dev, struc
  struct device_attribute vga_attr = __ATTR_RO(boot_vga);
  
  static ssize_t
 -pci_read_config(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_read_config(struct file *filp, struct kobject *kobj,
 +              struct bin_attribute *bin_attr,
                char *buf, loff_t off, size_t count)
  {
        struct pci_dev *dev = to_pci_dev(container_of(kobj,struct device,kobj));
        u8 *data = (u8*) buf;
  
        /* Several chips lock up trying to read undefined config space */
 -      if (capable(CAP_SYS_ADMIN)) {
 +      if (cap_raised(filp->f_cred->cap_effective, CAP_SYS_ADMIN)) {
                size = dev->cfg_size;
        } else if (dev->hdr_type == PCI_HEADER_TYPE_CARDBUS) {
                size = 128;
  }
  
  static ssize_t
 -pci_write_config(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_write_config(struct file* filp, struct kobject *kobj,
 +               struct bin_attribute *bin_attr,
                 char *buf, loff_t off, size_t count)
  {
        struct pci_dev *dev = to_pci_dev(container_of(kobj,struct device,kobj));
  }
  
  static ssize_t
 -read_vpd_attr(struct kobject *kobj, struct bin_attribute *bin_attr,
 +read_vpd_attr(struct file *filp, struct kobject *kobj,
 +            struct bin_attribute *bin_attr,
              char *buf, loff_t off, size_t count)
  {
        struct pci_dev *dev =
  }
  
  static ssize_t
 -write_vpd_attr(struct kobject *kobj, struct bin_attribute *bin_attr,
 +write_vpd_attr(struct file *filp, struct kobject *kobj,
 +             struct bin_attribute *bin_attr,
               char *buf, loff_t off, size_t count)
  {
        struct pci_dev *dev =
  #ifdef HAVE_PCI_LEGACY
  /**
   * pci_read_legacy_io - read byte(s) from legacy I/O port space
 + * @filp: open sysfs file
   * @kobj: kobject corresponding to file to read from
   * @bin_attr: struct bin_attribute for this file
   * @buf: buffer to store results
   * callback routine (pci_legacy_read).
   */
  static ssize_t
 -pci_read_legacy_io(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_read_legacy_io(struct file *filp, struct kobject *kobj,
 +                 struct bin_attribute *bin_attr,
                   char *buf, loff_t off, size_t count)
  {
          struct pci_bus *bus = to_pci_bus(container_of(kobj,
  
  /**
   * pci_write_legacy_io - write byte(s) to legacy I/O port space
 + * @filp: open sysfs file
   * @kobj: kobject corresponding to file to read from
   * @bin_attr: struct bin_attribute for this file
   * @buf: buffer containing value to be written
   * callback routine (pci_legacy_write).
   */
  static ssize_t
 -pci_write_legacy_io(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_write_legacy_io(struct file *filp, struct kobject *kobj,
 +                  struct bin_attribute *bin_attr,
                    char *buf, loff_t off, size_t count)
  {
          struct pci_bus *bus = to_pci_bus(container_of(kobj,
  
  /**
   * pci_mmap_legacy_mem - map legacy PCI memory into user memory space
 + * @filp: open sysfs file
   * @kobj: kobject corresponding to device to be mapped
   * @attr: struct bin_attribute for this file
   * @vma: struct vm_area_struct passed to mmap
   * memory space.
   */
  static int
 -pci_mmap_legacy_mem(struct kobject *kobj, struct bin_attribute *attr,
 +pci_mmap_legacy_mem(struct file *filp, struct kobject *kobj,
 +                  struct bin_attribute *attr,
                      struct vm_area_struct *vma)
  {
          struct pci_bus *bus = to_pci_bus(container_of(kobj,
  
  /**
   * pci_mmap_legacy_io - map legacy PCI IO into user memory space
 + * @filp: open sysfs file
   * @kobj: kobject corresponding to device to be mapped
   * @attr: struct bin_attribute for this file
   * @vma: struct vm_area_struct passed to mmap
   * memory space. Returns -ENOSYS if the operation isn't supported
   */
  static int
 -pci_mmap_legacy_io(struct kobject *kobj, struct bin_attribute *attr,
 +pci_mmap_legacy_io(struct file *filp, struct kobject *kobj,
 +                 struct bin_attribute *attr,
                   struct vm_area_struct *vma)
  {
          struct pci_bus *bus = to_pci_bus(container_of(kobj,
@@@ -763,16 -750,14 +763,16 @@@ pci_mmap_resource(struct kobject *kobj
  }
  
  static int
 -pci_mmap_resource_uc(struct kobject *kobj, struct bin_attribute *attr,
 +pci_mmap_resource_uc(struct file *filp, struct kobject *kobj,
 +                   struct bin_attribute *attr,
                     struct vm_area_struct *vma)
  {
        return pci_mmap_resource(kobj, attr, vma, 0);
  }
  
  static int
 -pci_mmap_resource_wc(struct kobject *kobj, struct bin_attribute *attr,
 +pci_mmap_resource_wc(struct file *filp, struct kobject *kobj,
 +                   struct bin_attribute *attr,
                     struct vm_area_struct *vma)
  {
        return pci_mmap_resource(kobj, attr, vma, 1);
@@@ -876,7 -861,6 +876,7 @@@ void __weak pci_remove_resource_files(s
  
  /**
   * pci_write_rom - used to enable access to the PCI ROM display
 + * @filp: sysfs file
   * @kobj: kernel object handle
   * @bin_attr: struct bin_attribute for this file
   * @buf: user input
   * writing anything except 0 enables it
   */
  static ssize_t
 -pci_write_rom(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_write_rom(struct file *filp, struct kobject *kobj,
 +            struct bin_attribute *bin_attr,
              char *buf, loff_t off, size_t count)
  {
        struct pci_dev *pdev = to_pci_dev(container_of(kobj, struct device, kobj));
  
  /**
   * pci_read_rom - read a PCI ROM
 + * @filp: sysfs file
   * @kobj: kernel object handle
   * @bin_attr: struct bin_attribute for this file
   * @buf: where to put the data we read from the ROM
   * device corresponding to @kobj.
   */
  static ssize_t
 -pci_read_rom(struct kobject *kobj, struct bin_attribute *bin_attr,
 +pci_read_rom(struct file *filp, struct kobject *kobj,
 +           struct bin_attribute *bin_attr,
             char *buf, loff_t off, size_t count)
  {
        struct pci_dev *pdev = to_pci_dev(container_of(kobj, struct device, kobj));
@@@ -979,7 -960,12 +979,12 @@@ static ssize_t reset_store(struct devic
  
        if (val != 1)
                return -EINVAL;
-       return pci_reset_function(pdev);
+       result = pci_reset_function(pdev);
+       if (result < 0)
+               return result;
+       return count;
  }
  
  static struct device_attribute reset_attr = __ATTR(reset, 0200, NULL, reset_store);
@@@ -1030,6 -1016,39 +1035,39 @@@ error
        return retval;
  }
  
+ static void pci_remove_slot_links(struct pci_dev *dev)
+ {
+       char func[10];
+       struct pci_slot *slot;
+       sysfs_remove_link(&dev->dev.kobj, "slot");
+       list_for_each_entry(slot, &dev->bus->slots, list) {
+               if (slot->number != PCI_SLOT(dev->devfn))
+                       continue;
+               snprintf(func, 10, "function%d", PCI_FUNC(dev->devfn));
+               sysfs_remove_link(&slot->kobj, func);
+       }
+ }
+ static int pci_create_slot_links(struct pci_dev *dev)
+ {
+       int result = 0;
+       char func[10];
+       struct pci_slot *slot;
+       list_for_each_entry(slot, &dev->bus->slots, list) {
+               if (slot->number != PCI_SLOT(dev->devfn))
+                       continue;
+               result = sysfs_create_link(&dev->dev.kobj, &slot->kobj, "slot");
+               if (result)
+                       goto out;
+               snprintf(func, 10, "function%d", PCI_FUNC(dev->devfn));
+               result = sysfs_create_link(&slot->kobj, &dev->dev.kobj, func);
+       }
+ out:
+       return result;
+ }
  int __must_check pci_create_sysfs_dev_files (struct pci_dev *pdev)
  {
        int retval;
        if (retval)
                goto err_vga_file;
  
+       pci_create_slot_links(pdev);
        return 0;
  
  err_vga_file:
@@@ -1141,6 -1162,8 +1181,8 @@@ void pci_remove_sysfs_dev_files(struct 
        if (!sysfs_initialized)
                return;
  
+       pci_remove_slot_links(pdev);
        pci_remove_capabilities_sysfs(pdev);
  
        if (pdev->cfg_size < PCI_CFG_SPACE_EXP_SIZE)
diff --combined drivers/pci/pci.c
index 1df7c508814ecb596685e8e8c27fcda2282006cc,264c3f6b84767ffdc631319ddc70e8f803eec26b..60f30e7f1c8c1c81d874204103b58443d63c3416
@@@ -1193,7 -1193,7 +1193,7 @@@ void pci_disable_enabled_device(struct 
   * anymore.  This only involves disabling PCI bus-mastering, if active.
   *
   * Note we don't actually disable the device until all callers of
-  * pci_device_enable() have called pci_device_disable().
+  * pci_enable_device() have called pci_disable_device().
   */
  void
  pci_disable_device(struct pci_dev *dev)
@@@ -1503,7 -1503,7 +1503,7 @@@ int pci_prepare_to_sleep(struct pci_de
   * pci_back_from_sleep - turn PCI device on during system-wide transition into working state
   * @dev: Device to handle.
   *
 - * Disable device's sytem wake-up capability and put it into D0.
 + * Disable device's system wake-up capability and put it into D0.
   */
  int pci_back_from_sleep(struct pci_dev *dev)
  {
@@@ -1631,7 -1631,6 +1631,6 @@@ void pci_pm_init(struct pci_dev *dev
                 * let the user space enable it to wake up the system as needed.
                 */
                device_set_wakeup_capable(&dev->dev, true);
-               device_set_wakeup_enable(&dev->dev, false);
                /* Disable the PME# generation functionality */
                pci_pme_active(dev, false);
        } else {
@@@ -1655,7 -1654,6 +1654,6 @@@ void platform_pci_wakeup_init(struct pc
                return;
  
        device_set_wakeup_capable(&dev->dev, true);
-       device_set_wakeup_enable(&dev->dev, false);
        platform_pci_sleep_wake(dev, false);
  }
  
diff --combined include/linux/pci_regs.h
index c4c3d68be19ad150561d9e885bd35cb0d0825993,dd0dd873f63741e6fc704fbd2628c3ad0387e13a..455b9ccdfca7679349dc4786d3de6ed6493e3c1e
  #define  PCI_EXP_LNKCTL_LABIE 0x0800  /* Lnk Autonomous Bandwidth Interrupt Enable */
  #define PCI_EXP_LNKSTA                18      /* Link Status */
  #define  PCI_EXP_LNKSTA_CLS   0x000f  /* Current Link Speed */
 +#define  PCI_EXP_LNKSTA_CLS_2_5GB 0x01        /* Current Link Speed 2.5GT/s */
 +#define  PCI_EXP_LNKSTA_CLS_5_0GB 0x02        /* Current Link Speed 5.0GT/s */
  #define  PCI_EXP_LNKSTA_NLW   0x03f0  /* Nogotiated Link Width */
 +#define  PCI_EXP_LNKSTA_NLW_SHIFT 4   /* start of NLW mask in link status */
  #define  PCI_EXP_LNKSTA_LT    0x0800  /* Link Training */
  #define  PCI_EXP_LNKSTA_SLC   0x1000  /* Slot Clock Configuration */
  #define  PCI_EXP_LNKSTA_DLLLA 0x2000  /* Data Link Layer Link Active */
  #define PCI_ERR_ROOT_FIRST_FATAL      0x00000010      /* First Fatal */
  #define PCI_ERR_ROOT_NONFATAL_RCV     0x00000020      /* Non-Fatal Received */
  #define PCI_ERR_ROOT_FATAL_RCV                0x00000040      /* Fatal Received */
- #define PCI_ERR_ROOT_COR_SRC  52
- #define PCI_ERR_ROOT_SRC      54
+ #define PCI_ERR_ROOT_ERR_SRC  52      /* Error Source Identification */
  
  /* Virtual Channel */
  #define PCI_VC_PORT_REG1      4