www.usr.com/support/gpl/USR9107_release.1.4.tar.gz
[bcm963xx.git] / userapps / opensource / atm2684 / pvc2684ctl / atmrt2684.h
1 #ifndef _LINUX_ATMRT2684_H
2 #define _LINUX_ATMRT2684_H
3
4 #include <linux/atm.h>
5 #include <linux/if.h>           /* For IFNAMSIZ */
6
7 #define RT2684_ENCAPS_NULL      (0)     /* VC-mux */
8 #define RT2684_ENCAPS_LLC       (1)
9 #define RT2684_ENCAPS_AUTODETECT (2)    /* Unsuported */
10
11 /*
12  * This is for the ATM_NEWBACKENDIF call - these are like socket families:
13  * the first element of the structure is the backend number and the rest
14  * is per-backend specific
15  */
16 struct atm_newif_rt2684 {
17         atm_backend_t   backend_num;    /* ATM_BACKEND_RT2684 */
18         char            ifname[IFNAMSIZ];
19 };
20
21 /*
22  * This structure is used to specify a rt2684 interface - either by a
23  * positive integer (returned by ATM_NEWBACKENDIF) or the interfaces name
24  */
25 #define RT2684_FIND_BYNOTHING   (0)
26 #define RT2684_FIND_BYNUM       (1)
27 #define RT2684_FIND_BYIFNAME    (2)
28 struct rt2684_if_spec {
29         int method;                     /* RT2684_FIND_* */
30         union {
31                 char            ifname[IFNAMSIZ];
32                 int             devnum;
33         } spec;
34 };
35
36 /*
37  * This is for the ATM_SETBACKEND call - these are like socket families:
38  * the first element of the structure is the backend number and the rest
39  * is per-backend specific
40  */
41 struct atm_backend_rt2684 {
42         atm_backend_t   backend_num;    /* ATM_BACKEND_RT2684 */
43         struct rt2684_if_spec ifspec;
44         unsigned char   encaps;         /* RT2684_ENCAPS_* */
45 };
46
47
48 #endif /* _LINUX_ATMRT2684_H */