diff options
| -rw-r--r-- | drivers/net/netxen/netxen_nic.h | 2 | ||||
| -rw-r--r-- | drivers/net/netxen/netxen_nic_ethtool.c | 6 | ||||
| -rw-r--r-- | drivers/net/netxen/netxen_nic_hw.c | 8 | ||||
| -rw-r--r-- | drivers/net/netxen/netxen_nic_isr.c | 4 | ||||
| -rw-r--r-- | drivers/net/netxen/netxen_nic_main.c | 4 | ||||
| -rw-r--r-- | drivers/net/netxen/netxen_nic_niu.c | 22 |
6 files changed, 22 insertions, 24 deletions
diff --git a/drivers/net/netxen/netxen_nic.h b/drivers/net/netxen/netxen_nic.h index 8cb29f5b1038..ec2ed89a0828 100644 --- a/drivers/net/netxen/netxen_nic.h +++ b/drivers/net/netxen/netxen_nic.h | |||
| @@ -863,6 +863,7 @@ struct netxen_adapter { | |||
| 863 | unsigned char mac_addr[ETH_ALEN]; | 863 | unsigned char mac_addr[ETH_ALEN]; |
| 864 | int mtu; | 864 | int mtu; |
| 865 | int portnum; | 865 | int portnum; |
| 866 | u8 physical_port; | ||
| 866 | 867 | ||
| 867 | struct work_struct watchdog_task; | 868 | struct work_struct watchdog_task; |
| 868 | struct timer_list watchdog_timer; | 869 | struct timer_list watchdog_timer; |
| @@ -1169,5 +1170,4 @@ extern int netxen_rom_fast_read(struct netxen_adapter *adapter, int addr, | |||
| 1169 | 1170 | ||
| 1170 | extern struct ethtool_ops netxen_nic_ethtool_ops; | 1171 | extern struct ethtool_ops netxen_nic_ethtool_ops; |
| 1171 | 1172 | ||
| 1172 | extern int physical_port[]; /* physical port # from virtual port.*/ | ||
| 1173 | #endif /* __NETXEN_NIC_H_ */ | 1173 | #endif /* __NETXEN_NIC_H_ */ |
diff --git a/drivers/net/netxen/netxen_nic_ethtool.c b/drivers/net/netxen/netxen_nic_ethtool.c index 6e98d830eefb..723487bf200c 100644 --- a/drivers/net/netxen/netxen_nic_ethtool.c +++ b/drivers/net/netxen/netxen_nic_ethtool.c | |||
| @@ -369,7 +369,7 @@ netxen_nic_get_regs(struct net_device *dev, struct ethtool_regs *regs, void *p) | |||
| 369 | for (i = 3; niu_registers[mode].reg[i - 3] != -1; i++) { | 369 | for (i = 3; niu_registers[mode].reg[i - 3] != -1; i++) { |
| 370 | /* GB: port specific registers */ | 370 | /* GB: port specific registers */ |
| 371 | if (mode == 0 && i >= 19) | 371 | if (mode == 0 && i >= 19) |
| 372 | window = physical_port[adapter->portnum] * | 372 | window = adapter->physical_port * |
| 373 | NETXEN_NIC_PORT_WINDOW; | 373 | NETXEN_NIC_PORT_WINDOW; |
| 374 | 374 | ||
| 375 | NETXEN_NIC_LOCKED_READ_REG(niu_registers[mode]. | 375 | NETXEN_NIC_LOCKED_READ_REG(niu_registers[mode]. |
| @@ -527,7 +527,7 @@ netxen_nic_get_pauseparam(struct net_device *dev, | |||
| 527 | { | 527 | { |
| 528 | struct netxen_adapter *adapter = netdev_priv(dev); | 528 | struct netxen_adapter *adapter = netdev_priv(dev); |
| 529 | __u32 val; | 529 | __u32 val; |
| 530 | int port = physical_port[adapter->portnum]; | 530 | int port = adapter->physical_port; |
| 531 | 531 | ||
| 532 | if (adapter->ahw.board_type == NETXEN_NIC_GBE) { | 532 | if (adapter->ahw.board_type == NETXEN_NIC_GBE) { |
| 533 | if ((port < 0) || (port > NETXEN_NIU_MAX_GBE_PORTS)) | 533 | if ((port < 0) || (port > NETXEN_NIU_MAX_GBE_PORTS)) |
| @@ -573,7 +573,7 @@ netxen_nic_set_pauseparam(struct net_device *dev, | |||
| 573 | { | 573 | { |
| 574 | struct netxen_adapter *adapter = netdev_priv(dev); | 574 | struct netxen_adapter *adapter = netdev_priv(dev); |
| 575 | __u32 val; | 575 | __u32 val; |
| 576 | int port = physical_port[adapter->portnum]; | 576 | int port = adapter->physical_port; |
| 577 | /* read mode */ | 577 | /* read mode */ |
| 578 | if (adapter->ahw.board_type == NETXEN_NIC_GBE) { | 578 | if (adapter->ahw.board_type == NETXEN_NIC_GBE) { |
| 579 | if ((port < 0) || (port > NETXEN_NIU_MAX_GBE_PORTS)) | 579 | if ((port < 0) || (port > NETXEN_NIU_MAX_GBE_PORTS)) |
diff --git a/drivers/net/netxen/netxen_nic_hw.c b/drivers/net/netxen/netxen_nic_hw.c index af7356468251..30316a847dd8 100644 --- a/drivers/net/netxen/netxen_nic_hw.c +++ b/drivers/net/netxen/netxen_nic_hw.c | |||
| @@ -1032,15 +1032,15 @@ int netxen_nic_get_board_info(struct netxen_adapter *adapter) | |||
| 1032 | int netxen_nic_set_mtu_gb(struct netxen_adapter *adapter, int new_mtu) | 1032 | int netxen_nic_set_mtu_gb(struct netxen_adapter *adapter, int new_mtu) |
| 1033 | { | 1033 | { |
| 1034 | netxen_nic_write_w0(adapter, | 1034 | netxen_nic_write_w0(adapter, |
| 1035 | NETXEN_NIU_GB_MAX_FRAME_SIZE( | 1035 | NETXEN_NIU_GB_MAX_FRAME_SIZE(adapter->physical_port), |
| 1036 | physical_port[adapter->portnum]), new_mtu); | 1036 | new_mtu); |
| 1037 | return 0; | 1037 | return 0; |
| 1038 | } | 1038 | } |
| 1039 | 1039 | ||
| 1040 | int netxen_nic_set_mtu_xgb(struct netxen_adapter *adapter, int new_mtu) | 1040 | int netxen_nic_set_mtu_xgb(struct netxen_adapter *adapter, int new_mtu) |
| 1041 | { | 1041 | { |
| 1042 | new_mtu += NETXEN_NIU_HDRSIZE + NETXEN_NIU_TLRSIZE; | 1042 | new_mtu += NETXEN_NIU_HDRSIZE + NETXEN_NIU_TLRSIZE; |
| 1043 | if (physical_port[adapter->portnum] == 0) | 1043 | if (adapter->physical_port == 0) |
| 1044 | netxen_nic_write_w0(adapter, NETXEN_NIU_XGE_MAX_FRAME_SIZE, | 1044 | netxen_nic_write_w0(adapter, NETXEN_NIU_XGE_MAX_FRAME_SIZE, |
| 1045 | new_mtu); | 1045 | new_mtu); |
| 1046 | else | 1046 | else |
| @@ -1051,7 +1051,7 @@ int netxen_nic_set_mtu_xgb(struct netxen_adapter *adapter, int new_mtu) | |||
| 1051 | 1051 | ||
| 1052 | void netxen_nic_init_niu_gb(struct netxen_adapter *adapter) | 1052 | void netxen_nic_init_niu_gb(struct netxen_adapter *adapter) |
| 1053 | { | 1053 | { |
| 1054 | netxen_niu_gbe_init_port(adapter, physical_port[adapter->portnum]); | 1054 | netxen_niu_gbe_init_port(adapter, adapter->physical_port); |
| 1055 | } | 1055 | } |
| 1056 | 1056 | ||
| 1057 | void | 1057 | void |
diff --git a/drivers/net/netxen/netxen_nic_isr.c b/drivers/net/netxen/netxen_nic_isr.c index f487615f4063..96cec41f9019 100644 --- a/drivers/net/netxen/netxen_nic_isr.c +++ b/drivers/net/netxen/netxen_nic_isr.c | |||
| @@ -145,7 +145,7 @@ static void netxen_nic_isr_other(struct netxen_adapter *adapter) | |||
| 145 | 145 | ||
| 146 | /* verify the offset */ | 146 | /* verify the offset */ |
| 147 | val = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_XG_STATE)); | 147 | val = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_XG_STATE)); |
| 148 | val = val >> physical_port[adapter->portnum]; | 148 | val = val >> adapter->physical_port; |
| 149 | if (val == adapter->ahw.qg_linksup) | 149 | if (val == adapter->ahw.qg_linksup) |
| 150 | return; | 150 | return; |
| 151 | 151 | ||
| @@ -199,7 +199,7 @@ void netxen_nic_xgbe_handle_phy_intr(struct netxen_adapter *adapter) | |||
| 199 | 199 | ||
| 200 | /* WINDOW = 1 */ | 200 | /* WINDOW = 1 */ |
| 201 | val = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_XG_STATE)); | 201 | val = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_XG_STATE)); |
| 202 | val >>= (physical_port[adapter->portnum] * 8); | 202 | val >>= (adapter->physical_port * 8); |
| 203 | val &= 0xff; | 203 | val &= 0xff; |
| 204 | 204 | ||
| 205 | if (adapter->ahw.xg_linkup == 1 && val != XG_LINK_UP) { | 205 | if (adapter->ahw.xg_linkup == 1 && val != XG_LINK_UP) { |
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index 5a2fd214fefe..f903de0fe9ea 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c | |||
| @@ -70,8 +70,6 @@ static void netxen_nic_poll_controller(struct net_device *netdev); | |||
| 70 | static irqreturn_t netxen_intr(int irq, void *data); | 70 | static irqreturn_t netxen_intr(int irq, void *data); |
| 71 | static irqreturn_t netxen_msi_intr(int irq, void *data); | 71 | static irqreturn_t netxen_msi_intr(int irq, void *data); |
| 72 | 72 | ||
| 73 | int physical_port[] = {0, 1, 2, 3}; | ||
| 74 | |||
| 75 | /* PCI Device ID Table */ | 73 | /* PCI Device ID Table */ |
| 76 | static struct pci_device_id netxen_pci_tbl[] __devinitdata = { | 74 | static struct pci_device_id netxen_pci_tbl[] __devinitdata = { |
| 77 | {PCI_DEVICE(0x4040, 0x0001)}, | 75 | {PCI_DEVICE(0x4040, 0x0001)}, |
| @@ -647,7 +645,7 @@ netxen_nic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
| 647 | */ | 645 | */ |
| 648 | i = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_V2P(adapter->portnum))); | 646 | i = readl(NETXEN_CRB_NORMALIZE(adapter, CRB_V2P(adapter->portnum))); |
| 649 | if (i != 0x55555555) | 647 | if (i != 0x55555555) |
| 650 | physical_port[adapter->portnum] = i; | 648 | adapter->physical_port = i; |
| 651 | 649 | ||
| 652 | netif_carrier_off(netdev); | 650 | netif_carrier_off(netdev); |
| 653 | netif_stop_queue(netdev); | 651 | netif_stop_queue(netdev); |
diff --git a/drivers/net/netxen/netxen_nic_niu.c b/drivers/net/netxen/netxen_nic_niu.c index 1c852a76c80d..a3bc7cc67a6f 100644 --- a/drivers/net/netxen/netxen_nic_niu.c +++ b/drivers/net/netxen/netxen_nic_niu.c | |||
| @@ -94,7 +94,7 @@ int netxen_niu_gbe_phy_read(struct netxen_adapter *adapter, long reg, | |||
| 94 | long timeout = 0; | 94 | long timeout = 0; |
| 95 | long result = 0; | 95 | long result = 0; |
| 96 | long restore = 0; | 96 | long restore = 0; |
| 97 | long phy = physical_port[adapter->portnum]; | 97 | long phy = adapter->physical_port; |
| 98 | __u32 address; | 98 | __u32 address; |
| 99 | __u32 command; | 99 | __u32 command; |
| 100 | __u32 status; | 100 | __u32 status; |
| @@ -190,7 +190,7 @@ int netxen_niu_gbe_phy_write(struct netxen_adapter *adapter, long reg, | |||
| 190 | long timeout = 0; | 190 | long timeout = 0; |
| 191 | long result = 0; | 191 | long result = 0; |
| 192 | long restore = 0; | 192 | long restore = 0; |
| 193 | long phy = physical_port[adapter->portnum]; | 193 | long phy = adapter->physical_port; |
| 194 | __u32 address; | 194 | __u32 address; |
| 195 | __u32 command; | 195 | __u32 command; |
| 196 | __u32 status; | 196 | __u32 status; |
| @@ -456,7 +456,7 @@ int netxen_niu_gbe_init_port(struct netxen_adapter *adapter, int port) | |||
| 456 | 456 | ||
| 457 | int netxen_niu_xg_init_port(struct netxen_adapter *adapter, int port) | 457 | int netxen_niu_xg_init_port(struct netxen_adapter *adapter, int port) |
| 458 | { | 458 | { |
| 459 | u32 portnum = physical_port[adapter->portnum]; | 459 | u32 portnum = adapter->physical_port; |
| 460 | 460 | ||
| 461 | netxen_crb_writelit_adapter(adapter, | 461 | netxen_crb_writelit_adapter(adapter, |
| 462 | NETXEN_NIU_XGE_CONFIG_1+(0x10000*portnum), 0x1447); | 462 | NETXEN_NIU_XGE_CONFIG_1+(0x10000*portnum), 0x1447); |
| @@ -573,7 +573,7 @@ static int netxen_niu_macaddr_get(struct netxen_adapter *adapter, | |||
| 573 | { | 573 | { |
| 574 | u32 stationhigh; | 574 | u32 stationhigh; |
| 575 | u32 stationlow; | 575 | u32 stationlow; |
| 576 | int phy = physical_port[adapter->portnum]; | 576 | int phy = adapter->physical_port; |
| 577 | u8 val[8]; | 577 | u8 val[8]; |
| 578 | 578 | ||
| 579 | if (addr == NULL) | 579 | if (addr == NULL) |
| @@ -604,7 +604,7 @@ int netxen_niu_macaddr_set(struct netxen_adapter *adapter, | |||
| 604 | { | 604 | { |
| 605 | u8 temp[4]; | 605 | u8 temp[4]; |
| 606 | u32 val; | 606 | u32 val; |
| 607 | int phy = physical_port[adapter->portnum]; | 607 | int phy = adapter->physical_port; |
| 608 | unsigned char mac_addr[6]; | 608 | unsigned char mac_addr[6]; |
| 609 | int i; | 609 | int i; |
| 610 | DECLARE_MAC_BUF(mac); | 610 | DECLARE_MAC_BUF(mac); |
| @@ -724,7 +724,7 @@ int netxen_niu_enable_gbe_port(struct netxen_adapter *adapter, | |||
| 724 | int netxen_niu_disable_gbe_port(struct netxen_adapter *adapter) | 724 | int netxen_niu_disable_gbe_port(struct netxen_adapter *adapter) |
| 725 | { | 725 | { |
| 726 | __u32 mac_cfg0; | 726 | __u32 mac_cfg0; |
| 727 | u32 port = physical_port[adapter->portnum]; | 727 | u32 port = adapter->physical_port; |
| 728 | 728 | ||
| 729 | if (port > NETXEN_NIU_MAX_GBE_PORTS) | 729 | if (port > NETXEN_NIU_MAX_GBE_PORTS) |
| 730 | return -EINVAL; | 730 | return -EINVAL; |
| @@ -740,7 +740,7 @@ int netxen_niu_disable_gbe_port(struct netxen_adapter *adapter) | |||
| 740 | int netxen_niu_disable_xg_port(struct netxen_adapter *adapter) | 740 | int netxen_niu_disable_xg_port(struct netxen_adapter *adapter) |
| 741 | { | 741 | { |
| 742 | __u32 mac_cfg; | 742 | __u32 mac_cfg; |
| 743 | u32 port = physical_port[adapter->portnum]; | 743 | u32 port = adapter->physical_port; |
| 744 | 744 | ||
| 745 | if (port > NETXEN_NIU_MAX_XG_PORTS) | 745 | if (port > NETXEN_NIU_MAX_XG_PORTS) |
| 746 | return -EINVAL; | 746 | return -EINVAL; |
| @@ -757,7 +757,7 @@ int netxen_niu_set_promiscuous_mode(struct netxen_adapter *adapter, | |||
| 757 | netxen_niu_prom_mode_t mode) | 757 | netxen_niu_prom_mode_t mode) |
| 758 | { | 758 | { |
| 759 | __u32 reg; | 759 | __u32 reg; |
| 760 | u32 port = physical_port[adapter->portnum]; | 760 | u32 port = adapter->physical_port; |
| 761 | 761 | ||
| 762 | if (port > NETXEN_NIU_MAX_GBE_PORTS) | 762 | if (port > NETXEN_NIU_MAX_GBE_PORTS) |
| 763 | return -EINVAL; | 763 | return -EINVAL; |
| @@ -814,7 +814,7 @@ int netxen_niu_set_promiscuous_mode(struct netxen_adapter *adapter, | |||
| 814 | int netxen_niu_xg_macaddr_set(struct netxen_adapter *adapter, | 814 | int netxen_niu_xg_macaddr_set(struct netxen_adapter *adapter, |
| 815 | netxen_ethernet_macaddr_t addr) | 815 | netxen_ethernet_macaddr_t addr) |
| 816 | { | 816 | { |
| 817 | int phy = physical_port[adapter->portnum]; | 817 | int phy = adapter->physical_port; |
| 818 | u8 temp[4]; | 818 | u8 temp[4]; |
| 819 | u32 val; | 819 | u32 val; |
| 820 | 820 | ||
| @@ -867,7 +867,7 @@ int netxen_niu_xg_macaddr_set(struct netxen_adapter *adapter, | |||
| 867 | int netxen_niu_xg_macaddr_get(struct netxen_adapter *adapter, | 867 | int netxen_niu_xg_macaddr_get(struct netxen_adapter *adapter, |
| 868 | netxen_ethernet_macaddr_t * addr) | 868 | netxen_ethernet_macaddr_t * addr) |
| 869 | { | 869 | { |
| 870 | int phy = physical_port[adapter->portnum]; | 870 | int phy = adapter->physical_port; |
| 871 | u32 stationhigh; | 871 | u32 stationhigh; |
| 872 | u32 stationlow; | 872 | u32 stationlow; |
| 873 | u8 val[8]; | 873 | u8 val[8]; |
| @@ -896,7 +896,7 @@ int netxen_niu_xg_set_promiscuous_mode(struct netxen_adapter *adapter, | |||
| 896 | netxen_niu_prom_mode_t mode) | 896 | netxen_niu_prom_mode_t mode) |
| 897 | { | 897 | { |
| 898 | __u32 reg; | 898 | __u32 reg; |
| 899 | u32 port = physical_port[adapter->portnum]; | 899 | u32 port = adapter->physical_port; |
| 900 | 900 | ||
| 901 | if (port > NETXEN_NIU_MAX_XG_PORTS) | 901 | if (port > NETXEN_NIU_MAX_XG_PORTS) |
| 902 | return -EINVAL; | 902 | return -EINVAL; |
