blob: c347cd117409ebeb85a7d4bc6895c6b23a444d3e [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * ioctl's for the Digi Intl. RightSwitch
3 *
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.
6 *
7 * Typical use:
8 *
9 * struct ifreq ifr;
10 * DGRS_IOCTL ioc;
11 * int x;
12 *
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);
20 *
21 */
22#include <linux/sockios.h>
23
24#define DGRSIOCTL SIOCDEVPRIVATE
25
26typedef 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;
33
34/*
35 * Commands for the driver
36 */
37#define DGRS_GETMEM 0x01 /* Get the dual port memory address */
38#define DGRS_SETFILTER 0x02 /* Set a filter */