diff options
author | Shaohua Li <shaohua.li@intel.com> | 2007-12-17 20:56:56 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-02-01 18:04:27 -0500 |
commit | ec0a3a27fbb5792980b8c3ce4a93bc2ee93d0b35 (patch) | |
tree | 3885a0355cb54a1f5bd17c2ccec616dc0a70279b | |
parent | f34303de9e0263b389a215483adddc7d918cf8c8 (diff) |
PCI: correctly initialize a structure for pcie_save_pcix_state()
save_state->cap_nr should be correctly set, otherwise we can't find the
saved cap at resume.
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/pci/pci.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index b01ed9a5ab43..342857c555de 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c | |||
@@ -587,6 +587,7 @@ static int pci_save_pcie_state(struct pci_dev *dev) | |||
587 | pci_read_config_word(dev, pos + PCI_EXP_LNKCTL, &cap[i++]); | 587 | pci_read_config_word(dev, pos + PCI_EXP_LNKCTL, &cap[i++]); |
588 | pci_read_config_word(dev, pos + PCI_EXP_SLTCTL, &cap[i++]); | 588 | pci_read_config_word(dev, pos + PCI_EXP_SLTCTL, &cap[i++]); |
589 | pci_read_config_word(dev, pos + PCI_EXP_RTCTL, &cap[i++]); | 589 | pci_read_config_word(dev, pos + PCI_EXP_RTCTL, &cap[i++]); |
590 | save_state->cap_nr = PCI_CAP_ID_EXP; | ||
590 | pci_add_saved_cap(dev, save_state); | 591 | pci_add_saved_cap(dev, save_state); |
591 | return 0; | 592 | return 0; |
592 | } | 593 | } |
@@ -630,6 +631,7 @@ static int pci_save_pcix_state(struct pci_dev *dev) | |||
630 | cap = (u16 *)&save_state->data[0]; | 631 | cap = (u16 *)&save_state->data[0]; |
631 | 632 | ||
632 | pci_read_config_word(dev, pos + PCI_X_CMD, &cap[i++]); | 633 | pci_read_config_word(dev, pos + PCI_X_CMD, &cap[i++]); |
634 | save_state->cap_nr = PCI_CAP_ID_PCIX; | ||
633 | pci_add_saved_cap(dev, save_state); | 635 | pci_add_saved_cap(dev, save_state); |
634 | return 0; | 636 | return 0; |
635 | } | 637 | } |