|
@@ -777,17 +777,20 @@ int netxen_p3_nic_set_mac_addr(struct netxen_adapter *adapter, u8 *addr)
|
|
|
int netxen_config_intr_coalesce(struct netxen_adapter *adapter)
|
|
|
{
|
|
|
nx_nic_req_t req;
|
|
|
- u64 word;
|
|
|
- int rv;
|
|
|
+ u64 word[6];
|
|
|
+ int rv, i;
|
|
|
|
|
|
memset(&req, 0, sizeof(nx_nic_req_t));
|
|
|
+ memset(word, 0, sizeof(word));
|
|
|
|
|
|
req.qhdr = cpu_to_le64(NX_HOST_REQUEST << 23);
|
|
|
|
|
|
- word = NETXEN_CONFIG_INTR_COALESCE | ((u64)adapter->portnum << 16);
|
|
|
- req.req_hdr = cpu_to_le64(word);
|
|
|
+ word[0] = NETXEN_CONFIG_INTR_COALESCE | ((u64)adapter->portnum << 16);
|
|
|
+ req.req_hdr = cpu_to_le64(word[0]);
|
|
|
|
|
|
- memcpy(&req.words[0], &adapter->coal, sizeof(adapter->coal));
|
|
|
+ memcpy(&word[0], &adapter->coal, sizeof(adapter->coal));
|
|
|
+ for (i = 0; i < 6; i++)
|
|
|
+ req.words[i] = cpu_to_le64(word[i]);
|
|
|
|
|
|
rv = netxen_send_cmd_descs(adapter, (struct cmd_desc_type0 *)&req, 1);
|
|
|
if (rv != 0) {
|