aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/netxen/netxen_nic_phan_reg.h
diff options
context:
space:
mode:
authorAmit S. Kale <amitkale@netxen.com>2006-11-29 12:00:10 -0500
committerJeff Garzik <jeff@garzik.org>2006-12-02 00:16:36 -0500
commitcb8011ad53e0855ef088e0e5a4bcb98fa90c70b6 (patch)
tree2ea32fc89dab2257b359a0577ae06c6565cc99d1 /drivers/net/netxen/netxen_nic_phan_reg.h
parentedf901638144525a140c68be01be1b22e6041a6d (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.h24
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 863645ed1cd3..8181d436783f 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[] = {
192extern struct netxen_recv_crb recv_crb_registers[]; 203extern 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 */
209enum {
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_ */