diff options
author | Arthur Jones <arthur.jones@qlogic.com> | 2008-04-17 00:01:12 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2008-04-17 00:01:12 -0400 |
commit | 6ca2abf4c02fb3e35247a985c2b6f5834e995033 (patch) | |
tree | cbf950decc213d2c5f05d72e0a2030dc7794f303 /drivers/infiniband/hw/ipath/ipath_iba6110.c | |
parent | f2ceb4929ab543e54efaadcad215a105df684f36 (diff) |
IB/ipath: Provide I/O bus speeds for diagnostic purposes
Modern I/O buses like PCIe and HT can be configured for multiple speeds
and widths. When an ipath HCA seems to have lower than expected
performance, it is very useful to be able to display what the driver
thinks the bus speed is.
Signed-off-by: Dave Olson <dave.olson@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/hw/ipath/ipath_iba6110.c')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_iba6110.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_iba6110.c b/drivers/infiniband/hw/ipath/ipath_iba6110.c index 684c27e42406..19e3955304c0 100644 --- a/drivers/infiniband/hw/ipath/ipath_iba6110.c +++ b/drivers/infiniband/hw/ipath/ipath_iba6110.c | |||
@@ -742,11 +742,10 @@ static int ipath_ht_boardname(struct ipath_devdata *dd, char *name, | |||
742 | */ | 742 | */ |
743 | dd->ipath_flags |= IPATH_32BITCOUNTERS; | 743 | dd->ipath_flags |= IPATH_32BITCOUNTERS; |
744 | dd->ipath_flags |= IPATH_GPIO_INTR; | 744 | dd->ipath_flags |= IPATH_GPIO_INTR; |
745 | if (dd->ipath_htspeed != 800) | 745 | if (dd->ipath_lbus_speed != 800) |
746 | ipath_dev_err(dd, | 746 | ipath_dev_err(dd, |
747 | "Incorrectly configured for HT @ %uMHz\n", | 747 | "Incorrectly configured for HT @ %uMHz\n", |
748 | dd->ipath_htspeed); | 748 | dd->ipath_lbus_speed); |
749 | ret = 0; | ||
750 | 749 | ||
751 | /* | 750 | /* |
752 | * set here, not in ipath_init_*_funcs because we have to do | 751 | * set here, not in ipath_init_*_funcs because we have to do |
@@ -911,7 +910,7 @@ static void slave_or_pri_blk(struct ipath_devdata *dd, struct pci_dev *pdev, | |||
911 | break; | 910 | break; |
912 | } | 911 | } |
913 | 912 | ||
914 | dd->ipath_htwidth = width; | 913 | dd->ipath_lbus_width = width; |
915 | 914 | ||
916 | if (linkwidth != 0x11) { | 915 | if (linkwidth != 0x11) { |
917 | ipath_dev_err(dd, "Not configured for 16 bit HT " | 916 | ipath_dev_err(dd, "Not configured for 16 bit HT " |
@@ -959,8 +958,13 @@ static void slave_or_pri_blk(struct ipath_devdata *dd, struct pci_dev *pdev, | |||
959 | speed = 200; | 958 | speed = 200; |
960 | break; | 959 | break; |
961 | } | 960 | } |
962 | dd->ipath_htspeed = speed; | 961 | dd->ipath_lbus_speed = speed; |
963 | } | 962 | } |
963 | |||
964 | snprintf(dd->ipath_lbus_info, sizeof(dd->ipath_lbus_info), | ||
965 | "HyperTransport,%uMHz,x%u\n", | ||
966 | dd->ipath_lbus_speed, | ||
967 | dd->ipath_lbus_width); | ||
964 | } | 968 | } |
965 | 969 | ||
966 | static int ipath_ht_intconfig(struct ipath_devdata *dd) | 970 | static int ipath_ht_intconfig(struct ipath_devdata *dd) |