diff options
author | Amit S. Kale <amitkale@netxen.com> | 2006-11-29 12:00:10 -0500 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-12-02 00:16:36 -0500 |
commit | cb8011ad53e0855ef088e0e5a4bcb98fa90c70b6 (patch) | |
tree | 2ea32fc89dab2257b359a0577ae06c6565cc99d1 /drivers/net/netxen/netxen_nic_phan_reg.h | |
parent | edf901638144525a140c68be01be1b22e6041a6d (diff) |
[PATCH] NetXen: temp monitoring, newer firmware support, mm footprint reduction
NetXen: 1G/10G Ethernet Driver updates
- Temparature monitoring and device control
- Memory footprint reduction
- Driver changes to support newer version of firmware
Signed-off-by: Amit S. Kale <amitkale@netxen.com>
netxen_nic.h | 165 ++++++++++++++++++++++++++++++++--
netxen_nic_ethtool.c | 89 ++++++++++++------
netxen_nic_hdr.h | 71 +++++++++++++-
netxen_nic_hw.c | 206 +++++++++++++++++++++++++++++--------------
netxen_nic_hw.h | 8 +
netxen_nic_init.c | 239 +++++++++++++++++++++++++++++++++++++++++---------
netxen_nic_ioctl.h | 12 +-
netxen_nic_isr.c | 54 +++++------
netxen_nic_main.c | 121 +++++++++++++++++--------
netxen_nic_niu.c | 172 +++++++++++++++++++++++++++--------
netxen_nic_phan_reg.h | 24 ++++-
11 files changed, 891 insertions(+), 270 deletions(-)
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/netxen/netxen_nic_phan_reg.h')
-rw-r--r-- | drivers/net/netxen/netxen_nic_phan_reg.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/drivers/net/netxen/netxen_nic_phan_reg.h b/drivers/net/netxen/netxen_nic_phan_reg.h index 863645ed1cd..8181d436783 100644 --- a/drivers/net/netxen/netxen_nic_phan_reg.h +++ b/drivers/net/netxen/netxen_nic_phan_reg.h | |||
@@ -6,12 +6,12 @@ | |||
6 | * modify it under the terms of the GNU General Public License | 6 | * modify it under the terms of the GNU General Public License |
7 | * as published by the Free Software Foundation; either version 2 | 7 | * as published by the Free Software Foundation; either version 2 |
8 | * of the License, or (at your option) any later version. | 8 | * of the License, or (at your option) any later version. |
9 | * | 9 | * |
10 | * This program is distributed in the hope that it will be useful, but | 10 | * This program is distributed in the hope that it will be useful, but |
11 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | * GNU General Public License for more details. | 13 | * GNU General Public License for more details. |
14 | * | 14 | * |
15 | * You should have received a copy of the GNU General Public License | 15 | * You should have received a copy of the GNU General Public License |
16 | * along with this program; if not, write to the Free Software | 16 | * along with this program; if not, write to the Free Software |
17 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, | 17 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, |
@@ -58,6 +58,9 @@ | |||
58 | #define CRB_CMD_PRODUCER_OFFSET NETXEN_NIC_REG(0x08) | 58 | #define CRB_CMD_PRODUCER_OFFSET NETXEN_NIC_REG(0x08) |
59 | #define CRB_CMD_CONSUMER_OFFSET NETXEN_NIC_REG(0x0c) | 59 | #define CRB_CMD_CONSUMER_OFFSET NETXEN_NIC_REG(0x0c) |
60 | 60 | ||
61 | #define CRB_PAUSE_ADDR_LO NETXEN_NIC_REG(0x10) | ||
62 | #define CRB_PAUSE_ADDR_HI NETXEN_NIC_REG(0x14) | ||
63 | |||
61 | /* address of command descriptors in the host memory */ | 64 | /* address of command descriptors in the host memory */ |
62 | #define CRB_HOST_CMD_ADDR_HI NETXEN_NIC_REG(0x30) | 65 | #define CRB_HOST_CMD_ADDR_HI NETXEN_NIC_REG(0x30) |
63 | #define CRB_HOST_CMD_ADDR_LO NETXEN_NIC_REG(0x34) | 66 | #define CRB_HOST_CMD_ADDR_LO NETXEN_NIC_REG(0x34) |
@@ -82,10 +85,18 @@ | |||
82 | #define CRB_TX_PKT_TIMER NETXEN_NIC_REG(0x94) | 85 | #define CRB_TX_PKT_TIMER NETXEN_NIC_REG(0x94) |
83 | #define CRB_RX_PKT_CNT NETXEN_NIC_REG(0x98) | 86 | #define CRB_RX_PKT_CNT NETXEN_NIC_REG(0x98) |
84 | #define CRB_RX_TMR_CNT NETXEN_NIC_REG(0x9c) | 87 | #define CRB_RX_TMR_CNT NETXEN_NIC_REG(0x9c) |
88 | #define CRB_INT_THRESH NETXEN_NIC_REG(0xa4) | ||
85 | 89 | ||
86 | /* Register for communicating XG link status */ | 90 | /* Register for communicating XG link status */ |
87 | #define CRB_XG_STATE NETXEN_NIC_REG(0xa0) | 91 | #define CRB_XG_STATE NETXEN_NIC_REG(0xa0) |
88 | 92 | ||
93 | /* Register for communicating card temperature */ | ||
94 | /* Upper 16 bits are temperature value. Lower 16 bits are the state */ | ||
95 | #define CRB_TEMP_STATE NETXEN_NIC_REG(0xa8) | ||
96 | #define nx_get_temp_val(x) ((x) >> 16) | ||
97 | #define nx_get_temp_state(x) ((x) & 0xffff) | ||
98 | #define nx_encode_temp(val, state) (((val) << 16) | (state)) | ||
99 | |||
89 | /* Debug registers for controlling NIC pkt gen agent */ | 100 | /* Debug registers for controlling NIC pkt gen agent */ |
90 | #define CRB_AGENT_GO NETXEN_NIC_REG(0xb0) | 101 | #define CRB_AGENT_GO NETXEN_NIC_REG(0xb0) |
91 | #define CRB_AGENT_TX_SIZE NETXEN_NIC_REG(0xb4) | 102 | #define CRB_AGENT_TX_SIZE NETXEN_NIC_REG(0xb4) |
@@ -192,4 +203,13 @@ struct netxen_recv_crb recv_crb_registers[] = { | |||
192 | extern struct netxen_recv_crb recv_crb_registers[]; | 203 | extern struct netxen_recv_crb recv_crb_registers[]; |
193 | #endif /* DEFINE_GLOBAL_RECEIVE_CRB */ | 204 | #endif /* DEFINE_GLOBAL_RECEIVE_CRB */ |
194 | 205 | ||
206 | /* | ||
207 | * Temperature control. | ||
208 | */ | ||
209 | enum { | ||
210 | NX_TEMP_NORMAL = 0x1, /* Normal operating range */ | ||
211 | NX_TEMP_WARN, /* Sound alert, temperature getting high */ | ||
212 | NX_TEMP_PANIC /* Fatal error, hardware has shut down. */ | ||
213 | }; | ||
214 | |||
195 | #endif /* __NIC_PHAN_REG_H_ */ | 215 | #endif /* __NIC_PHAN_REG_H_ */ |