diff options
Diffstat (limited to 'drivers/infiniband/hw/ipath/ipath_iba6110.c')
-rw-r--r-- | drivers/infiniband/hw/ipath/ipath_iba6110.c | 44 |
1 files changed, 15 insertions, 29 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_iba6110.c b/drivers/infiniband/hw/ipath/ipath_iba6110.c index df42a1e3b6b7..ddbebe4bdb27 100644 --- a/drivers/infiniband/hw/ipath/ipath_iba6110.c +++ b/drivers/infiniband/hw/ipath/ipath_iba6110.c | |||
@@ -631,56 +631,35 @@ static int ipath_ht_boardname(struct ipath_devdata *dd, char *name, | |||
631 | { | 631 | { |
632 | char *n = NULL; | 632 | char *n = NULL; |
633 | u8 boardrev = dd->ipath_boardrev; | 633 | u8 boardrev = dd->ipath_boardrev; |
634 | int ret; | 634 | int ret = 0; |
635 | 635 | ||
636 | switch (boardrev) { | 636 | switch (boardrev) { |
637 | case 4: /* Ponderosa is one of the bringup boards */ | ||
638 | n = "Ponderosa"; | ||
639 | break; | ||
640 | case 5: | 637 | case 5: |
641 | /* | 638 | /* |
642 | * original production board; two production levels, with | 639 | * original production board; two production levels, with |
643 | * different serial number ranges. See ipath_ht_early_init() for | 640 | * different serial number ranges. See ipath_ht_early_init() for |
644 | * case where we enable IPATH_GPIO_INTR for later serial # range. | 641 | * case where we enable IPATH_GPIO_INTR for later serial # range. |
642 | * Original 112* serial number is no longer supported. | ||
645 | */ | 643 | */ |
646 | n = "InfiniPath_QHT7040"; | 644 | n = "InfiniPath_QHT7040"; |
647 | break; | 645 | break; |
648 | case 6: | ||
649 | n = "OEM_Board_3"; | ||
650 | break; | ||
651 | case 7: | 646 | case 7: |
652 | /* small form factor production board */ | 647 | /* small form factor production board */ |
653 | n = "InfiniPath_QHT7140"; | 648 | n = "InfiniPath_QHT7140"; |
654 | break; | 649 | break; |
655 | case 8: | ||
656 | n = "LS/X-1"; | ||
657 | break; | ||
658 | case 9: /* Comstock bringup test board */ | ||
659 | n = "Comstock"; | ||
660 | break; | ||
661 | case 10: | ||
662 | n = "OEM_Board_2"; | ||
663 | break; | ||
664 | case 11: | ||
665 | n = "InfiniPath_HT-470"; /* obsoleted */ | ||
666 | break; | ||
667 | case 12: | ||
668 | n = "OEM_Board_4"; | ||
669 | break; | ||
670 | default: /* don't know, just print the number */ | 650 | default: /* don't know, just print the number */ |
671 | ipath_dev_err(dd, "Don't yet know about board " | 651 | ipath_dev_err(dd, "Don't yet know about board " |
672 | "with ID %u\n", boardrev); | 652 | "with ID %u\n", boardrev); |
673 | snprintf(name, namelen, "Unknown_InfiniPath_QHT7xxx_%u", | 653 | snprintf(name, namelen, "Unknown_InfiniPath_QHT7xxx_%u", |
674 | boardrev); | 654 | boardrev); |
655 | ret = 1; | ||
675 | break; | 656 | break; |
676 | } | 657 | } |
677 | if (n) | 658 | if (n) |
678 | snprintf(name, namelen, "%s", n); | 659 | snprintf(name, namelen, "%s", n); |
679 | 660 | ||
680 | if (dd->ipath_boardrev != 6 && dd->ipath_boardrev != 7 && | 661 | if (ret) { |
681 | dd->ipath_boardrev != 11) { | ||
682 | ipath_dev_err(dd, "Unsupported InfiniPath board %s!\n", name); | 662 | ipath_dev_err(dd, "Unsupported InfiniPath board %s!\n", name); |
683 | ret = 1; | ||
684 | goto bail; | 663 | goto bail; |
685 | } | 664 | } |
686 | if (dd->ipath_majrev != 3 || (dd->ipath_minrev < 2 || | 665 | if (dd->ipath_majrev != 3 || (dd->ipath_minrev < 2 || |
@@ -1554,10 +1533,17 @@ static int ipath_ht_early_init(struct ipath_devdata *dd) | |||
1554 | * can use GPIO interrupts. They have serial #'s starting | 1533 | * can use GPIO interrupts. They have serial #'s starting |
1555 | * with 128, rather than 112. | 1534 | * with 128, rather than 112. |
1556 | */ | 1535 | */ |
1557 | dd->ipath_flags |= IPATH_GPIO_INTR; | 1536 | if (dd->ipath_serial[0] == '1' && |
1558 | } else | 1537 | dd->ipath_serial[1] == '2' && |
1559 | ipath_dev_err(dd, "Unsupported InfiniPath serial " | 1538 | dd->ipath_serial[2] == '8') |
1560 | "number %.16s!\n", dd->ipath_serial); | 1539 | dd->ipath_flags |= IPATH_GPIO_INTR; |
1540 | else { | ||
1541 | ipath_dev_err(dd, "Unsupported InfiniPath board " | ||
1542 | "(serial number %.16s)!\n", | ||
1543 | dd->ipath_serial); | ||
1544 | return 1; | ||
1545 | } | ||
1546 | } | ||
1561 | 1547 | ||
1562 | if (dd->ipath_minrev >= 4) { | 1548 | if (dd->ipath_minrev >= 4) { |
1563 | /* Rev4+ reports extra errors via internal GPIO pins */ | 1549 | /* Rev4+ reports extra errors via internal GPIO pins */ |