ed25ffa164
NetXen: 1G/10G Ethernet driver updates - Multiport and newer firmware support - ioctl interface for user level tools - Cast error fix for multiport Signed-off-by: Amit S. Kale <amitkale@netxen.com> netxen_nic.h | 281 +++++++++++++++++++++++++------- netxen_nic_ethtool.c | 12 - netxen_nic_hw.c | 429 +++++++++++++++++++++++++++++++++++++++++--------- netxen_nic_init.c | 301 ++++++++++++++++++++++++++++++----- netxen_nic_ioctl.h | 2 netxen_nic_isr.c | 3 netxen_nic_main.c | 260 ++++++++++++++++++------------ netxen_nic_niu.c | 22 +- netxen_nic_phan_reg.h | 228 ++++++++++++++++---------- 9 files changed, 1161 insertions(+), 377 deletions(-) Signed-off-by: Jeff Garzik <jeff@garzik.org>
77 lines
2 KiB
C
77 lines
2 KiB
C
/*
|
|
* Copyright (C) 2003 - 2006 NetXen, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* as published by the Free Software Foundation; either version 2
|
|
* of the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful, but
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston,
|
|
* MA 02111-1307, USA.
|
|
*
|
|
* The full GNU General Public License is included in this distribution
|
|
* in the file called LICENSE.
|
|
*
|
|
* Contact Information:
|
|
* info@netxen.com
|
|
* NetXen,
|
|
* 3965 Freedom Circle, Fourth floor,
|
|
* Santa Clara, CA 95054
|
|
*/
|
|
|
|
#ifndef __NETXEN_NIC_IOCTL_H__
|
|
#define __NETXEN_NIC_IOCTL_H__
|
|
|
|
#include <linux/sockios.h>
|
|
|
|
#define NETXEN_CMD_START SIOCDEVPRIVATE
|
|
#define NETXEN_NIC_CMD (NETXEN_CMD_START + 1)
|
|
#define NETXEN_NIC_NAME (NETXEN_CMD_START + 2)
|
|
#define NETXEN_NIC_NAME_LEN 16
|
|
#define NETXEN_NIC_NAME_RSP "NETXEN-UNM"
|
|
|
|
typedef enum {
|
|
netxen_nic_cmd_none = 0,
|
|
netxen_nic_cmd_pci_read,
|
|
netxen_nic_cmd_pci_write,
|
|
netxen_nic_cmd_pci_mem_read,
|
|
netxen_nic_cmd_pci_mem_write,
|
|
netxen_nic_cmd_pci_config_read,
|
|
netxen_nic_cmd_pci_config_write,
|
|
netxen_nic_cmd_get_stats,
|
|
netxen_nic_cmd_clear_stats,
|
|
netxen_nic_cmd_get_version
|
|
} netxen_nic_ioctl_cmd_t;
|
|
|
|
struct netxen_nic_ioctl_data {
|
|
u32 cmd;
|
|
u32 unused1;
|
|
u64 off;
|
|
u32 size;
|
|
u32 rv;
|
|
char u[64];
|
|
void *ptr;
|
|
};
|
|
|
|
struct netxen_statistics {
|
|
u64 rx_packets;
|
|
u64 tx_packets;
|
|
u64 rx_bytes;
|
|
u64 rx_errors;
|
|
u64 tx_bytes;
|
|
u64 tx_errors;
|
|
u64 rx_crc_errors;
|
|
u64 rx_short_length_error;
|
|
u64 rx_long_length_error;
|
|
u64 rx_mac_errors;
|
|
};
|
|
|
|
#endif /* __NETXEN_NIC_IOCTL_H_ */
|