Linux-2.6.12-rc2
[linux-2.6/next.git] / drivers / net / dgrs.h
blobc347cd117409ebeb85a7d4bc6895c6b23a444d3e
1 /*
2 * ioctl's for the Digi Intl. RightSwitch
4 * These network driver ioctl's are a bit obtuse compared to the usual
5 * ioctl's for a "normal" device driver. Hey, I didn't invent it.
7 * Typical use:
9 * struct ifreq ifr;
10 * DGRS_IOCTL ioc;
11 * int x;
13 * strcpy(ifr.ifr_name, "eth1");
14 * ifr.ifr_data = (caddr_t) &ioc;
15 * ioc.cmd = DGRS_GETMEM;
16 * ioc.len = sizeof(x);
17 * ioc.data = (caddr_t) &x;
18 * rc = ioctl(fd, DGRSIOCTL, &ifr);
19 * printf("rc=%d mem=%x\n", rc, x);
22 #include <linux/sockios.h>
24 #define DGRSIOCTL SIOCDEVPRIVATE
26 typedef struct dgrs_ioctl {
27 unsigned short cmd; /* Command to run */
28 unsigned short len; /* Length of the data buffer */
29 unsigned char __user *data; /* Pointer to the data buffer */
30 unsigned short port; /* port number for command, if needed */
31 unsigned short filter; /* filter number for command, if needed */
32 } DGRS_IOCTL;
34 /*
35 * Commands for the driver
37 #define DGRS_GETMEM 0x01 /* Get the dual port memory address */
38 #define DGRS_SETFILTER 0x02 /* Set a filter */