aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/netxen/netxen_nic_ctx.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/netxen/netxen_nic_ctx.c')
-rw-r--r--drivers/net/netxen/netxen_nic_ctx.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/drivers/net/netxen/netxen_nic_ctx.c b/drivers/net/netxen/netxen_nic_ctx.c
index 8ab5773e47d6..33f82db01293 100644
--- a/drivers/net/netxen/netxen_nic_ctx.c
+++ b/drivers/net/netxen/netxen_nic_ctx.c
@@ -229,7 +229,8 @@ nx_fw_cmd_create_rx_ctx(struct netxen_adapter *adapter)
229 rds_ring = &recv_ctx->rds_rings[i]; 229 rds_ring = &recv_ctx->rds_rings[i];
230 230
231 reg = le32_to_cpu(prsp_rds[i].host_producer_crb); 231 reg = le32_to_cpu(prsp_rds[i].host_producer_crb);
232 rds_ring->crb_rcv_producer = NETXEN_NIC_REG(reg - 0x200); 232 rds_ring->crb_rcv_producer = netxen_get_ioaddr(adapter,
233 NETXEN_NIC_REG(reg - 0x200));
233 } 234 }
234 235
235 prsp_sds = ((nx_cardrsp_sds_ring_t *) 236 prsp_sds = ((nx_cardrsp_sds_ring_t *)
@@ -239,10 +240,12 @@ nx_fw_cmd_create_rx_ctx(struct netxen_adapter *adapter)
239 sds_ring = &recv_ctx->sds_rings[i]; 240 sds_ring = &recv_ctx->sds_rings[i];
240 241
241 reg = le32_to_cpu(prsp_sds[i].host_consumer_crb); 242 reg = le32_to_cpu(prsp_sds[i].host_consumer_crb);
242 sds_ring->crb_sts_consumer = NETXEN_NIC_REG(reg - 0x200); 243 sds_ring->crb_sts_consumer = netxen_get_ioaddr(adapter,
244 NETXEN_NIC_REG(reg - 0x200));
243 245
244 reg = le32_to_cpu(prsp_sds[i].interrupt_crb); 246 reg = le32_to_cpu(prsp_sds[i].interrupt_crb);
245 sds_ring->crb_intr_mask = NETXEN_NIC_REG(reg - 0x200); 247 sds_ring->crb_intr_mask = netxen_get_ioaddr(adapter,
248 NETXEN_NIC_REG(reg - 0x200));
246 } 249 }
247 250
248 recv_ctx->state = le32_to_cpu(prsp->host_ctx_state); 251 recv_ctx->state = le32_to_cpu(prsp->host_ctx_state);
@@ -342,7 +345,8 @@ nx_fw_cmd_create_tx_ctx(struct netxen_adapter *adapter)
342 345
343 if (err == NX_RCODE_SUCCESS) { 346 if (err == NX_RCODE_SUCCESS) {
344 temp = le32_to_cpu(prsp->cds_ring.host_producer_crb); 347 temp = le32_to_cpu(prsp->cds_ring.host_producer_crb);
345 tx_ring->crb_cmd_producer = NETXEN_NIC_REG(temp - 0x200); 348 tx_ring->crb_cmd_producer = netxen_get_ioaddr(adapter,
349 NETXEN_NIC_REG(temp - 0x200));
346#if 0 350#if 0
347 adapter->tx_state = 351 adapter->tx_state =
348 le32_to_cpu(prsp->host_ctx_state); 352 le32_to_cpu(prsp->host_ctx_state);
@@ -651,7 +655,8 @@ int netxen_alloc_hw_resources(struct netxen_adapter *adapter)
651 655
652 if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) 656 if (NX_IS_REVISION_P2(adapter->ahw.revision_id))
653 rds_ring->crb_rcv_producer = 657 rds_ring->crb_rcv_producer =
654 recv_crb_registers[port].crb_rcv_producer[ring]; 658 netxen_get_ioaddr(adapter,
659 recv_crb_registers[port].crb_rcv_producer[ring]);
655 } 660 }
656 661
657 for (ring = 0; ring < adapter->max_sds_rings; ring++) { 662 for (ring = 0; ring < adapter->max_sds_rings; ring++) {
@@ -670,10 +675,12 @@ int netxen_alloc_hw_resources(struct netxen_adapter *adapter)
670 sds_ring->desc_head = (struct status_desc *)addr; 675 sds_ring->desc_head = (struct status_desc *)addr;
671 676
672 sds_ring->crb_sts_consumer = 677 sds_ring->crb_sts_consumer =
673 recv_crb_registers[port].crb_sts_consumer[ring]; 678 netxen_get_ioaddr(adapter,
679 recv_crb_registers[port].crb_sts_consumer[ring]);
674 680
675 sds_ring->crb_intr_mask = 681 sds_ring->crb_intr_mask =
676 recv_crb_registers[port].sw_int_mask[ring]; 682 netxen_get_ioaddr(adapter,
683 recv_crb_registers[port].sw_int_mask[ring]);
677 } 684 }
678 685
679 686