http://www.usr.com/support/gpl/USR9107_release1.1.tar.gz
[bcm963xx.git] / bcmdrivers / broadcom / include / bcm963xx / bcmnet.h
1 /*
2 <:copyright-gpl
3  Copyright 2002 Broadcom Corp. All Rights Reserved.
4
5  This program is free software; you can distribute it and/or modify it
6  under the terms of the GNU General Public License (Version 2) as
7  published by the Free Software Foundation.
8
9  This program is distributed in the hope it will be useful, but WITHOUT
10  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12  for more details.
13
14  You should have received a copy of the GNU General Public License along
15  with this program; if not, write to the Free Software Foundation, Inc.,
16  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
17 :>
18 */
19 /***********************************************************************/
20 /*                                                                     */
21 /*   MODULE:  bcmnet.h                                                 */
22 /*   DATE:    05/16/02                                                 */
23 /*   PURPOSE: network interface ioctl definition                       */
24 /*                                                                     */
25 /***********************************************************************/
26 #ifndef _IF_NET_H_
27 #define _IF_NET_H_
28
29 #if __cplusplus
30 extern "C" {
31 #endif
32
33 #define LINKSTATE_DOWN      0
34 #define LINKSTATE_UP        1
35
36 /*---------------------------------------------------------------------*/
37 /* Ethernet Switch Type                                                */
38 /*---------------------------------------------------------------------*/
39 #define ESW_TYPE_UNDEFINED                  0
40 #define ESW_TYPE_BCM5325M                   1
41 #define ESW_TYPE_BCM5325E                   2
42 #define ESW_TYPE_BCM5325F                   3
43
44 /*
45  * Ioctl definitions.
46  */
47 /* reserved SIOCDEVPRIVATE */
48 enum {
49     SIOCGLINKSTATE = SIOCDEVPRIVATE + 1,
50     SIOCSCLEARMIBCNTR,
51     SIOCGIFTRANSSTART,
52     SIOCMIBINFO,
53     SIOCSDUPLEX,        /* 0: auto 1: full 2: half */
54     SIOCSSPEED,         /* 0: auto 1: 100mbps 2: 10mbps */
55     SIOCCIFSTATS,
56     SIOCGENABLEVLAN,
57     SIOCGDISABLEVLAN,
58     SIOCGQUERYNUMVLANPORTS,
59     SIOCGSWITCHTYPE,
60     SIOCGQUERYNUMPORTS,
61     SIOCLAST
62 };
63
64 #define SPEED_10MBIT        10000000
65 #define SPEED_100MBIT       100000000
66
67 typedef struct IoctlMibInfo
68 {
69     unsigned long ulIfLastChange;
70     unsigned long ulIfSpeed;
71 } IOCTL_MIB_INFO, *PIOCTL_MIB_INFO;
72
73
74 #if __cplusplus
75 }
76 #endif
77
78 #endif /* _IF_NET_H_ */