Dell Broadcom NetXtreme Family of Adapters Broadcom NetXtreme II Network Adapt - Page 35

Linux Driver Software: Broadcom NetXtreme II Network Adapter User Guide, int_mode, dropless_fc

Page 35 highlights

Linux Driver Software: Broadcom NetXtreme II Network Adapter User Guide modprobe bnx2x int_mode=2 Set the int_mode parameter to 3 to force using MSI-X mode on all NetXtreme II adapters in the system. dropless_fc The dropless_fc parameter can be used to enable a complementary flow control mechanism on BCM57711/BCM57712 adapters. The default flow control mechanism is to send pause frames when the on-chip buffer (BRB) is reaching a certain level of occupancy. This is a performance targeted flow control mechanism. On BCM57711/BCM57712 adapters, one can enable another flow control mechanism to send pause frames, where one of the host buffers (when in RSS mode) are exhausted. This is a "zero packet drop" targeted flow control mechanism. Set the dropless_fc parameter to 1 to enable the dropless flow control mechanism feature on all BCM57711/BCM57712 NetXtreme II adapters in the system. insmod bnx2x.ko dropless_fc=1 or modprobe bnx2x dropless_fc=1 disable_iscsi_ooo The disable_iscsi_ooo parameter is to disable the allocation of the iSCSI TCP Out-of-Order (OOO) reception resources, specifically for VMware for low-memory systems. multi_mode The optional parameter multi_mode is for use on systems that support multi-queue networking. Multi-queue networking on the receive side depends only on MSI-X cability of the system, multi-queue networking on the transmit side is supported only on kernels starting from 2.6.27. By default, multi_mode parameter is set to 1. Thus, on kernels up to 2.6.26, the driver will allocate on the receive side one queue per-CPU and on the transmit side only one queue. On kernels starting from 2.6.27, the driver will allocate on both receive and transmit sides, one queue per-CPU. In any case, the number of allocated queues will be limited by number of queues supported by hardware. The multi_mode optional parameter can also be used to enable SAFC (Service Aware Flow Control) by differentiating the traffic to up to 3 CoS (Class of Service) in the hardware according to the VLAN PRI value or according to the IP DSCP value (least 3 bits). num_queues The optional parameter num_queues may be used to set the number of queues when multi_mode is set to 1 and interrupt mode is MSI-X. If interrupt mode is different than MSI-X (see int_mode), the number of queues will be set to 1, discarding the value of this parameter. pri_map The optional parameter pri_map is used to map the VLAN PRI value or the IP DSCP value to a different or same CoS in the hardware. This 32-bit parameter is evaluated by the driver as an 8 value of 4 bits each. Each nibble sets the desired hardware queue number for that priority. For example, set pri_map to 0x11110000 to map priority 0 to 3 to CoS 0 and map priority 4 to 7 to CoS 1. qs_per_cos The optional parameter qs_per_cos is used to specify how many queues will share the same CoS. This parameter is evaluated by the driver up to 3 values of 8 bits each. Each byte sets the desired number of queues for that CoS. The total number of queues is limited by the hardware limit. For example, set qs_per_cos to 0x10101 to create a total of three queues, one per CoS. In another example, set qs_per_cos to 0x404 to create a total of 8 queues, divided into 2 CoS, 4 queues in each CoS. cos_min_rate The optional parameter cos_min_rate is used to determine the weight of each CoS for round-robin scheduling in transmission. This parameter is evaluated by the driver as up to 3 values of 8 bits each. Each byte sets the desired weight for that CoS. The weight ranges from 0 to 100. For example, set cos_min_rate to 0x101 for fair transmission rate between 2 CoS. In another example, set the cos_min_rate to 0x30201 to give CoS the higher rate of transmission. To avoid using the fairness algorithm, omit setting cos_min_rate or set it to 0. file:///T|/htdocs/NETWORK/BroadCom/71921/NetXtremeII/en/linux.htm[9/26/2012 3:28:46 PM]

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224

Linux Driver Software: Broadcom NetXtreme II Network Adapter User Guide
file:///T|/htdocs/NETWORK/BroadCom/71921/NetXtremeII/en/linux.htm[9/26/2012 3:28:46 PM]
modprobe bnx2x int_mode=2
Set the
int_mode
parameter to 3 to force using MSI-X mode on all NetXtreme II adapters in the system.
dropless_fc
The
dropless_fc
parameter can be used to enable a complementary flow control mechanism on BCM57711/BCM57712
adapters. The default flow control mechanism is to send pause frames when the on-chip buffer (BRB) is reaching a certain
level of occupancy. This is a performance targeted flow control mechanism. On BCM57711/BCM57712 adapters, one can
enable another flow control mechanism to send pause frames, where one of the host buffers (when in RSS mode) are
exhausted.
This is a "zero packet drop" targeted flow control mechanism.
Set the
dropless_fc
parameter to 1 to enable the dropless flow control mechanism feature on all BCM57711/BCM57712
NetXtreme II adapters in the system.
insmod bnx2x.ko dropless_fc=1
or
modprobe bnx2x dropless_fc=1
disable_iscsi_ooo
The
disable_iscsi_ooo
parameter
is to disable the allocation of the iSCSI TCP Out-of-Order (OOO) reception resources,
specifically for VMware for low-memory systems.
multi_mode
The optional parameter
multi_mode
is for use on systems that support multi-queue networking. Multi-queue networking on
the receive side depends only on MSI-X cability of the system, multi-queue networking on the transmit side is supported only
on kernels starting from 2.6.27. By default,
multi_mode
parameter is set to 1. Thus, on kernels up to 2.6.26, the driver will
allocate on the receive side one queue per-CPU and on the transmit side only one queue. On kernels starting from 2.6.27, the
driver will allocate on both receive and transmit sides, one queue per-CPU. In any case, the number of allocated queues will
be limited by number of queues supported by hardware.
The
multi_mode
optional parameter can also be used to enable SAFC (Service Aware Flow Control) by differentiating the
traffic to up to 3 CoS (Class of Service) in the hardware according to the VLAN PRI value or according to the IP DSCP value
(least 3 bits).
num_queues
The optional parameter
num_queues
may be used to set the number of queues when
multi_mode
is set to 1 and interrupt
mode is MSI-X. If interrupt mode is different than MSI-X (see
int_mode
), the number of queues will be set to 1, discarding
the value of this parameter.
pri_map
The optional parameter
pri_map
is used to map the VLAN PRI value or the IP DSCP value to a different or same CoS in the
hardware. This 32-bit parameter is evaluated by the driver as an 8 value of 4 bits each. Each nibble sets the desired hardware
queue number for that priority. For example, set
pri_map
to 0x11110000 to map priority 0 to 3 to CoS 0 and map priority 4
to 7 to CoS 1.
qs_per_cos
The optional parameter
qs_per_cos
is used to specify how many queues will share the same CoS. This parameter is
evaluated by the driver up to 3 values of 8 bits each. Each byte sets the desired number of queues for that CoS. The total
number of queues is limited by the hardware limit. For example, set
qs_per_cos
to 0x10101 to create a total of three
queues, one per CoS. In another example, set
qs_per_cos
to 0x404 to create a total of 8 queues, divided into 2 CoS, 4
queues in each CoS.
cos_min_rate
The optional parameter
cos_min_rate
is used to determine the weight of each CoS for round-robin scheduling in
transmission. This parameter is evaluated by the driver as up to 3 values of 8 bits each. Each byte sets the desired weight for
that CoS. The weight ranges from 0 to 100. For example, set
cos_min_rate
to 0x101 for fair transmission rate between 2
CoS. In another example, set the
cos_min_rate
to 0x30201 to give CoS the higher rate of transmission. To avoid using the
fairness algorithm, omit setting
cos_min_rate
or set it to 0.