diff options
| -rw-r--r-- | drivers/infiniband/hw/nes/nes.c | 16 | ||||
| -rw-r--r-- | drivers/infiniband/hw/nes/nes_hw.h | 1 |
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/nes/nes.c b/drivers/infiniband/hw/nes/nes.c index a2b04d62b1a4..aa1dc41f04c8 100644 --- a/drivers/infiniband/hw/nes/nes.c +++ b/drivers/infiniband/hw/nes/nes.c | |||
| @@ -95,6 +95,10 @@ unsigned int wqm_quanta = 0x10000; | |||
| 95 | module_param(wqm_quanta, int, 0644); | 95 | module_param(wqm_quanta, int, 0644); |
| 96 | MODULE_PARM_DESC(wqm_quanta, "WQM quanta"); | 96 | MODULE_PARM_DESC(wqm_quanta, "WQM quanta"); |
| 97 | 97 | ||
| 98 | static unsigned int limit_maxrdreqsz; | ||
| 99 | module_param(limit_maxrdreqsz, bool, 0644); | ||
| 100 | MODULE_PARM_DESC(limit_maxrdreqsz, "Limit max read request size to 256 Bytes"); | ||
| 101 | |||
| 98 | LIST_HEAD(nes_adapter_list); | 102 | LIST_HEAD(nes_adapter_list); |
| 99 | static LIST_HEAD(nes_dev_list); | 103 | static LIST_HEAD(nes_dev_list); |
| 100 | 104 | ||
| @@ -588,6 +592,18 @@ static int __devinit nes_probe(struct pci_dev *pcidev, const struct pci_device_i | |||
| 588 | nesdev->nesadapter->port_count; | 592 | nesdev->nesadapter->port_count; |
| 589 | } | 593 | } |
| 590 | 594 | ||
| 595 | if ((limit_maxrdreqsz || | ||
| 596 | ((nesdev->nesadapter->phy_type[0] == NES_PHY_TYPE_GLADIUS) && | ||
| 597 | (hw_rev == NE020_REV1))) && | ||
| 598 | (pcie_get_readrq(pcidev) > 256)) { | ||
| 599 | if (pcie_set_readrq(pcidev, 256)) | ||
| 600 | printk(KERN_ERR PFX "Unable to set max read request" | ||
| 601 | " to 256 bytes\n"); | ||
| 602 | else | ||
| 603 | nes_debug(NES_DBG_INIT, "Max read request size set" | ||
| 604 | " to 256 bytes\n"); | ||
| 605 | } | ||
| 606 | |||
| 591 | tasklet_init(&nesdev->dpc_tasklet, nes_dpc, (unsigned long)nesdev); | 607 | tasklet_init(&nesdev->dpc_tasklet, nes_dpc, (unsigned long)nesdev); |
| 592 | 608 | ||
| 593 | /* bring up the Control QP */ | 609 | /* bring up the Control QP */ |
diff --git a/drivers/infiniband/hw/nes/nes_hw.h b/drivers/infiniband/hw/nes/nes_hw.h index 610b9d859597..bc0b4de04450 100644 --- a/drivers/infiniband/hw/nes/nes_hw.h +++ b/drivers/infiniband/hw/nes/nes_hw.h | |||
| @@ -40,6 +40,7 @@ | |||
| 40 | #define NES_PHY_TYPE_ARGUS 4 | 40 | #define NES_PHY_TYPE_ARGUS 4 |
| 41 | #define NES_PHY_TYPE_PUMA_1G 5 | 41 | #define NES_PHY_TYPE_PUMA_1G 5 |
| 42 | #define NES_PHY_TYPE_PUMA_10G 6 | 42 | #define NES_PHY_TYPE_PUMA_10G 6 |
| 43 | #define NES_PHY_TYPE_GLADIUS 7 | ||
| 43 | 44 | ||
| 44 | #define NES_MULTICAST_PF_MAX 8 | 45 | #define NES_MULTICAST_PF_MAX 8 |
| 45 | 46 | ||
