diff options
| -rw-r--r-- | drivers/infiniband/hw/ehca/ehca_main.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/drivers/infiniband/hw/ehca/ehca_main.c b/drivers/infiniband/hw/ehca/ehca_main.c index 4379beff987f..ab02ac836f94 100644 --- a/drivers/infiniband/hw/ehca/ehca_main.c +++ b/drivers/infiniband/hw/ehca/ehca_main.c | |||
| @@ -60,7 +60,6 @@ MODULE_VERSION(HCAD_VERSION); | |||
| 60 | static int ehca_open_aqp1 = 0; | 60 | static int ehca_open_aqp1 = 0; |
| 61 | static int ehca_hw_level = 0; | 61 | static int ehca_hw_level = 0; |
| 62 | static int ehca_poll_all_eqs = 1; | 62 | static int ehca_poll_all_eqs = 1; |
| 63 | static int ehca_mr_largepage = 1; | ||
| 64 | 63 | ||
| 65 | int ehca_debug_level = 0; | 64 | int ehca_debug_level = 0; |
| 66 | int ehca_nr_ports = 2; | 65 | int ehca_nr_ports = 2; |
| @@ -79,7 +78,6 @@ module_param_named(port_act_time, ehca_port_act_time, int, S_IRUGO); | |||
| 79 | module_param_named(poll_all_eqs, ehca_poll_all_eqs, int, S_IRUGO); | 78 | module_param_named(poll_all_eqs, ehca_poll_all_eqs, int, S_IRUGO); |
| 80 | module_param_named(static_rate, ehca_static_rate, int, S_IRUGO); | 79 | module_param_named(static_rate, ehca_static_rate, int, S_IRUGO); |
| 81 | module_param_named(scaling_code, ehca_scaling_code, int, S_IRUGO); | 80 | module_param_named(scaling_code, ehca_scaling_code, int, S_IRUGO); |
| 82 | module_param_named(mr_largepage, ehca_mr_largepage, int, S_IRUGO); | ||
| 83 | module_param_named(lock_hcalls, ehca_lock_hcalls, bool, S_IRUGO); | 81 | module_param_named(lock_hcalls, ehca_lock_hcalls, bool, S_IRUGO); |
| 84 | 82 | ||
| 85 | MODULE_PARM_DESC(open_aqp1, | 83 | MODULE_PARM_DESC(open_aqp1, |
| @@ -104,9 +102,6 @@ MODULE_PARM_DESC(static_rate, | |||
| 104 | "set permanent static rate (default: disabled)"); | 102 | "set permanent static rate (default: disabled)"); |
| 105 | MODULE_PARM_DESC(scaling_code, | 103 | MODULE_PARM_DESC(scaling_code, |
| 106 | "set scaling code (0: disabled/default, 1: enabled)"); | 104 | "set scaling code (0: disabled/default, 1: enabled)"); |
| 107 | MODULE_PARM_DESC(mr_largepage, | ||
| 108 | "use large page for MR (0: use PAGE_SIZE (default), " | ||
| 109 | "1: use large page depending on MR size"); | ||
| 110 | MODULE_PARM_DESC(lock_hcalls, | 105 | MODULE_PARM_DESC(lock_hcalls, |
| 111 | "serialize all hCalls made by the driver " | 106 | "serialize all hCalls made by the driver " |
| 112 | "(default: autodetect)"); | 107 | "(default: autodetect)"); |
| @@ -357,11 +352,9 @@ static int ehca_sense_attributes(struct ehca_shca *shca) | |||
| 357 | 352 | ||
| 358 | /* translate supported MR page sizes; always support 4K */ | 353 | /* translate supported MR page sizes; always support 4K */ |
| 359 | shca->hca_cap_mr_pgsize = EHCA_PAGESIZE; | 354 | shca->hca_cap_mr_pgsize = EHCA_PAGESIZE; |
| 360 | if (ehca_mr_largepage) { /* support extra sizes only if enabled */ | 355 | for (i = 0; i < ARRAY_SIZE(pgsize_map); i += 2) |
| 361 | for (i = 0; i < ARRAY_SIZE(pgsize_map); i += 2) | 356 | if (rblock->memory_page_size_supported & pgsize_map[i]) |
| 362 | if (rblock->memory_page_size_supported & pgsize_map[i]) | 357 | shca->hca_cap_mr_pgsize |= pgsize_map[i + 1]; |
| 363 | shca->hca_cap_mr_pgsize |= pgsize_map[i + 1]; | ||
| 364 | } | ||
| 365 | 358 | ||
| 366 | /* query max MTU from first port -- it's the same for all ports */ | 359 | /* query max MTU from first port -- it's the same for all ports */ |
| 367 | port = (struct hipz_query_port *)rblock; | 360 | port = (struct hipz_query_port *)rblock; |
| @@ -663,14 +656,6 @@ static ssize_t ehca_show_adapter_handle(struct device *dev, | |||
| 663 | } | 656 | } |
| 664 | static DEVICE_ATTR(adapter_handle, S_IRUGO, ehca_show_adapter_handle, NULL); | 657 | static DEVICE_ATTR(adapter_handle, S_IRUGO, ehca_show_adapter_handle, NULL); |
| 665 | 658 | ||
| 666 | static ssize_t ehca_show_mr_largepage(struct device *dev, | ||
| 667 | struct device_attribute *attr, | ||
| 668 | char *buf) | ||
| 669 | { | ||
| 670 | return sprintf(buf, "%d\n", ehca_mr_largepage); | ||
| 671 | } | ||
| 672 | static DEVICE_ATTR(mr_largepage, S_IRUGO, ehca_show_mr_largepage, NULL); | ||
| 673 | |||
| 674 | static struct attribute *ehca_dev_attrs[] = { | 659 | static struct attribute *ehca_dev_attrs[] = { |
| 675 | &dev_attr_adapter_handle.attr, | 660 | &dev_attr_adapter_handle.attr, |
| 676 | &dev_attr_num_ports.attr, | 661 | &dev_attr_num_ports.attr, |
| @@ -687,7 +672,6 @@ static struct attribute *ehca_dev_attrs[] = { | |||
| 687 | &dev_attr_cur_mw.attr, | 672 | &dev_attr_cur_mw.attr, |
| 688 | &dev_attr_max_pd.attr, | 673 | &dev_attr_max_pd.attr, |
| 689 | &dev_attr_max_ah.attr, | 674 | &dev_attr_max_ah.attr, |
| 690 | &dev_attr_mr_largepage.attr, | ||
| 691 | NULL | 675 | NULL |
| 692 | }; | 676 | }; |
| 693 | 677 | ||
