2 * BCM44XX Ethernet Windows device driver custom OID definitions.
4 * Copyright 2007, Broadcom Corporation
7 * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
8 * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
9 * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
10 * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
19 * Duplicate a few definitions that irelay requires from epiioctl.h here
20 * so caller doesn't have to include this file and epiioctl.h .
21 * If this grows any more, it would be time to move these irelay-specific
22 * definitions out of the epiioctl.h and into a separate driver common file.
24 #ifndef EPICTRL_COOKIE
25 #define EPICTRL_COOKIE 0xABADCEDE
28 /* common ioctl definitions */
33 #define ETCSETMSGLEVEL 4
45 #define SIOCSETCUP (SIOCDEVPRIVATE + ETCUP)
46 #define SIOCSETCDOWN (SIOCDEVPRIVATE + ETCDOWN)
47 #define SIOCSETCLOOP (SIOCDEVPRIVATE + ETCLOOP)
48 #define SIOCGETCDUMP (SIOCDEVPRIVATE + ETCDUMP)
49 #define SIOCSETCSETMSGLEVEL (SIOCDEVPRIVATE + ETCSETMSGLEVEL)
50 #define SIOCSETCPROMISC (SIOCDEVPRIVATE + ETCPROMISC)
51 #define SIOCSETCTXDOWN (SIOCDEVPRIVATE + 6) /* obsolete */
52 #define SIOCSETCSPEED (SIOCDEVPRIVATE + ETCSPEED)
53 #define SIOCTXGEN (SIOCDEVPRIVATE + 8)
54 #define SIOCGETCPHYRD (SIOCDEVPRIVATE + ETCPHYRD)
55 #define SIOCSETCPHYWR (SIOCDEVPRIVATE + ETCPHYWR)
56 #define SIOCSETCQOS (SIOCDEVPRIVATE + ETCQOS)
57 #define SIOCGETCPHYRD2 (SIOCDEVPRIVATE + ETCPHYRD2)
58 #define SIOCSETCPHYWR2 (SIOCDEVPRIVATE + ETCPHYWR2)
59 #define SIOCGETCROBORD (SIOCDEVPRIVATE + ETCROBORD)
60 #define SIOCSETCROBOWR (SIOCDEVPRIVATE + ETCROBOWR)
62 /* arg to SIOCTXGEN */
64 uint32 num
; /* number of frames to send */
65 uint32 delay
; /* delay in microseconds between sending each */
66 uint32 size
; /* size of ether frame to send */
67 uchar buf
[1514]; /* starting ether frame data */
74 * 0xFF - implementation specific OID
75 * 0xE4 - first byte of Broadcom PCI vendor ID
76 * 0x14 - second byte of Broadcom PCI vendor ID
77 * 0xXX - the custom OID number
79 #define ET_OID_BASE 0xFFE41400 /* OID Base for ET */
81 #define OID_ET_UP (ET_OID_BASE + ETCUP)
82 #define OID_ET_DOWN (ET_OID_BASE + ETCDOWN)
83 #define OID_ET_LOOP (ET_OID_BASE + ETCLOOP)
84 #define OID_ET_DUMP (ET_OID_BASE + ETCDUMP)
85 #define OID_ET_SETMSGLEVEL (ET_OID_BASE + ETCSETMSGLEVEL)
86 #define OID_ET_PROMISC (ET_OID_BASE + ETCPROMISC)
87 #define OID_ET_TXDOWN (ET_OID_BASE + 6)
88 #define OID_ET_SPEED (ET_OID_BASE + ETCSPEED)
89 #define OID_ET_GETINSTANCE (ET_OID_BASE + 8)
90 #define OID_ET_SETCALLBACK (ET_OID_BASE + 9)
91 #define OID_ET_UNSETCALLBACK (ET_OID_BASE + 10)
93 #define IS_ET_OID(oid) (((oid) & 0xFFFFFF00) == 0xFFE41400)
95 #define ET_ISQUERYOID(oid) ((oid == OID_ET_DUMP) || (oid == OID_ET_GETINSTANCE))
97 /* OID_ET_SETCALLBACK data type */
98 typedef struct et_cb
{
99 void (*fn
)(void *, int); /* Callback function */
100 void *context
; /* Passed to callback function */
103 #endif /* _etioctl_h_ */