Blackfin arch: Add Support for Peripheral PortMux and resouce allocation
[linux-2.6] / include / linux / lapb.h
1 /*
2  * These are the public elements of the Linux LAPB module.
3  */
4
5 #ifndef LAPB_KERNEL_H
6 #define LAPB_KERNEL_H
7
8 #define LAPB_OK                 0
9 #define LAPB_BADTOKEN           1
10 #define LAPB_INVALUE            2
11 #define LAPB_CONNECTED          3
12 #define LAPB_NOTCONNECTED       4
13 #define LAPB_REFUSED            5
14 #define LAPB_TIMEDOUT           6
15 #define LAPB_NOMEM              7
16
17 #define LAPB_STANDARD           0x00
18 #define LAPB_EXTENDED           0x01
19
20 #define LAPB_SLP                0x00
21 #define LAPB_MLP                0x02
22
23 #define LAPB_DTE                0x00
24 #define LAPB_DCE                0x04
25
26 struct lapb_register_struct {
27         void (*connect_confirmation)(struct net_device *dev, int reason);
28         void (*connect_indication)(struct net_device *dev, int reason);
29         void (*disconnect_confirmation)(struct net_device *dev, int reason);
30         void (*disconnect_indication)(struct net_device *dev, int reason);
31         int  (*data_indication)(struct net_device *dev, struct sk_buff *skb);
32         void (*data_transmit)(struct net_device *dev, struct sk_buff *skb);
33 };
34
35 struct lapb_parms_struct {
36         unsigned int t1;
37         unsigned int t1timer;
38         unsigned int t2;
39         unsigned int t2timer;
40         unsigned int n2;
41         unsigned int n2count;
42         unsigned int window;
43         unsigned int state;
44         unsigned int mode;
45 };
46
47 extern int lapb_register(struct net_device *dev, struct lapb_register_struct *callbacks);
48 extern int lapb_unregister(struct net_device *dev);
49 extern int lapb_getparms(struct net_device *dev, struct lapb_parms_struct *parms);
50 extern int lapb_setparms(struct net_device *dev, struct lapb_parms_struct *parms);
51 extern int lapb_connect_request(struct net_device *dev);
52 extern int lapb_disconnect_request(struct net_device *dev);
53 extern int lapb_data_request(struct net_device *dev, struct sk_buff *skb);
54 extern int lapb_data_received(struct net_device *dev, struct sk_buff *skb);
55
56 #endif