diff options
author | Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> | 2009-07-29 01:39:58 -0400 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-09-09 16:29:50 -0400 |
commit | 825c423a35a80a8fd66398a3f9bde7f0b0187a76 (patch) | |
tree | 581b7f199a5fe0543a78139e18f05520964f2488 | |
parent | 6ed6a8dc83dc37d30c8a7ff2eae2ed054e34c91b (diff) |
PCI hotplug: add support for 5.0G link speed
Add support for PCI-E 5.0 GT/s in max_bus_speed and cur_bus_speed.
Reviewed-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
-rw-r--r-- | drivers/pci/hotplug/pci_hotplug_core.c | 1 | ||||
-rw-r--r-- | drivers/pci/hotplug/pciehp_hpc.c | 10 | ||||
-rw-r--r-- | include/linux/pci_hotplug.h | 3 |
3 files changed, 11 insertions, 3 deletions
diff --git a/drivers/pci/hotplug/pci_hotplug_core.c b/drivers/pci/hotplug/pci_hotplug_core.c index 9d44669bf098..0325d989bb46 100644 --- a/drivers/pci/hotplug/pci_hotplug_core.c +++ b/drivers/pci/hotplug/pci_hotplug_core.c | |||
@@ -87,6 +87,7 @@ static char *pci_bus_speed_strings[] = { | |||
87 | "100 MHz PCIX 533", /* 0x12 */ | 87 | "100 MHz PCIX 533", /* 0x12 */ |
88 | "133 MHz PCIX 533", /* 0x13 */ | 88 | "133 MHz PCIX 533", /* 0x13 */ |
89 | "2.5 GT/s PCI-E", /* 0x14 */ | 89 | "2.5 GT/s PCI-E", /* 0x14 */ |
90 | "5.0 GT/s PCI-E", /* 0x15 */ | ||
90 | }; | 91 | }; |
91 | 92 | ||
92 | #ifdef CONFIG_HOTPLUG_PCI_CPCI | 93 | #ifdef CONFIG_HOTPLUG_PCI_CPCI |
diff --git a/drivers/pci/hotplug/pciehp_hpc.c b/drivers/pci/hotplug/pciehp_hpc.c index 52813257e5bf..271f917b6f2c 100644 --- a/drivers/pci/hotplug/pciehp_hpc.c +++ b/drivers/pci/hotplug/pciehp_hpc.c | |||
@@ -693,7 +693,10 @@ static int hpc_get_max_lnk_speed(struct slot *slot, enum pci_bus_speed *value) | |||
693 | 693 | ||
694 | switch (lnk_cap & 0x000F) { | 694 | switch (lnk_cap & 0x000F) { |
695 | case 1: | 695 | case 1: |
696 | lnk_speed = PCIE_2PT5GB; | 696 | lnk_speed = PCIE_2_5GB; |
697 | break; | ||
698 | case 2: | ||
699 | lnk_speed = PCIE_5_0GB; | ||
697 | break; | 700 | break; |
698 | default: | 701 | default: |
699 | lnk_speed = PCIE_LNK_SPEED_UNKNOWN; | 702 | lnk_speed = PCIE_LNK_SPEED_UNKNOWN; |
@@ -772,7 +775,10 @@ static int hpc_get_cur_lnk_speed(struct slot *slot, enum pci_bus_speed *value) | |||
772 | 775 | ||
773 | switch (lnk_status & PCI_EXP_LNKSTA_CLS) { | 776 | switch (lnk_status & PCI_EXP_LNKSTA_CLS) { |
774 | case 1: | 777 | case 1: |
775 | lnk_speed = PCIE_2PT5GB; | 778 | lnk_speed = PCIE_2_5GB; |
779 | break; | ||
780 | case 2: | ||
781 | lnk_speed = PCIE_5_0GB; | ||
776 | break; | 782 | break; |
777 | default: | 783 | default: |
778 | lnk_speed = PCIE_LNK_SPEED_UNKNOWN; | 784 | lnk_speed = PCIE_LNK_SPEED_UNKNOWN; |
diff --git a/include/linux/pci_hotplug.h b/include/linux/pci_hotplug.h index 4391741b99dc..1b00cc3177fc 100644 --- a/include/linux/pci_hotplug.h +++ b/include/linux/pci_hotplug.h | |||
@@ -62,7 +62,8 @@ enum pcie_link_width { | |||
62 | }; | 62 | }; |
63 | 63 | ||
64 | enum pcie_link_speed { | 64 | enum pcie_link_speed { |
65 | PCIE_2PT5GB = 0x14, | 65 | PCIE_2_5GB = 0x14, |
66 | PCIE_5_0GB = 0x15, | ||
66 | PCIE_LNK_SPEED_UNKNOWN = 0xFF, | 67 | PCIE_LNK_SPEED_UNKNOWN = 0xFF, |
67 | }; | 68 | }; |
68 | 69 | ||