vserver 1.9.3
[linux-2.6.git] / drivers / pci / hotplug / pciehp_hpc.c
index 2a68ace..b8ca99b 100644 (file)
@@ -237,8 +237,8 @@ struct php_ctlr_state_s {
 static spinlock_t hpc_event_lock;
 
 DEFINE_DBG_BUFFER              /* Debug string buffer for entire HPC defined here */
-static struct php_ctlr_state_s *php_ctlr_list_head = 0;        /* HPC state linked list */
-static int ctlr_seq_num = 0;   /* Controller sequence # */
+static struct php_ctlr_state_s *php_ctlr_list_head;    /* HPC state linked list */
+static int ctlr_seq_num;       /* Controller sequence # */
 static spinlock_t list_lock;
 
 static irqreturn_t pcie_isr(int IRQ, void *dev_id, struct pt_regs *regs);
@@ -349,7 +349,9 @@ static int hpc_check_lnk_status(struct controller *ctrl)
                return retval;
        }
 
-       if ( (lnk_status & (LNK_TRN | LNK_TRN_ERR)) == 0x0C00) {
+       dbg("%s: lnk_status = %x\n", __FUNCTION__, lnk_status);
+       if ( (lnk_status & LNK_TRN) || (lnk_status & LNK_TRN_ERR) || 
+               !(lnk_status & NEG_LINK_WD)) {
                err("%s : Link Training Error occurs \n", __FUNCTION__);
                retval = -1;
                return retval;
@@ -742,7 +744,7 @@ static void hpc_release_ctlr(struct controller *ctrl)
                }
        }
        if (php_ctlr->pci_dev) 
-               php_ctlr->pci_dev = 0;
+               php_ctlr->pci_dev = NULL;
 
        spin_lock(&list_lock);
        p = php_ctlr_list_head;
@@ -1015,7 +1017,7 @@ static irqreturn_t pcie_isr(int IRQ, void *dev_id, struct pt_regs *regs)
        return IRQ_HANDLED;
 }
 
-static int hpc_get_max_lnk_speed (struct slot *slot, enum pcie_link_speed *value)
+static int hpc_get_max_lnk_speed (struct slot *slot, enum pci_bus_speed *value)
 {
        struct php_ctlr_state_s *php_ctlr = slot->ctrl->hpc_ctlr_handle;
        enum pcie_link_speed lnk_speed;
@@ -1118,7 +1120,7 @@ static int hpc_get_max_lnk_width (struct slot *slot, enum pcie_link_width *value
        return retval;
 }
 
-static int hpc_get_cur_lnk_speed (struct slot *slot, enum pcie_link_speed *value)
+static int hpc_get_cur_lnk_speed (struct slot *slot, enum pci_bus_speed *value)
 {
        struct php_ctlr_state_s *php_ctlr = slot->ctrl->hpc_ctlr_handle;
        enum pcie_link_speed lnk_speed = PCI_SPEED_UNKNOWN;
@@ -1465,7 +1467,7 @@ int pcie_init(struct controller * ctrl,
        if (php_ctlr_list_head == 0) {
                php_ctlr_list_head = php_ctlr;
                p = php_ctlr_list_head;
-               p->pnext = 0;
+               p->pnext = NULL;
        } else {
                p = php_ctlr_list_head;