Enable 2.6.33 compatibility
[~emulex/for-vlad/old/compat.git] / include / linux / compat-2.6.33.h
1 #ifndef LINUX_26_33_COMPAT_H
2 #define LINUX_26_33_COMPAT_H
3
4 #include <linux/version.h>
5
6 #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33))
7
8 #include <linux/skbuff.h>
9 #include <pcmcia/cs_types.h>
10 #include <pcmcia/cistpl.h>
11 #include <pcmcia/ds.h>
12 #include <linux/kfifo.h>
13
14 #define IFF_DONT_BRIDGE 0x800           /* disallow bridging this ether dev */
15 /* source: include/linux/if.h */
16
17 #define kparam_block_sysfs_write(a)
18 #define kparam_unblock_sysfs_write(a)
19
20 /* this will never happen on older kernels */
21 #define NETDEV_POST_INIT 0xffff
22
23 static inline struct sk_buff *netdev_alloc_skb_ip_align(struct net_device *dev,
24                 unsigned int length)
25 {
26         struct sk_buff *skb = netdev_alloc_skb(dev, length + NET_IP_ALIGN);
27
28         if (NET_IP_ALIGN && skb)
29                 skb_reserve(skb, NET_IP_ALIGN);
30         return skb;
31 }
32
33 #if defined(CONFIG_PCCARD) || defined(CONFIG_PCCARD_MODULE)
34
35 #if defined(CONFIG_PCMCIA) || defined(CONFIG_PCMCIA_MODULE)
36
37 #define pcmcia_request_window(a, b, c) pcmcia_request_window(&a, b, c)
38
39 #define pcmcia_map_mem_page(a, b, c) pcmcia_map_mem_page(b, c)
40
41 /* loop over CIS entries */
42 int pcmcia_loop_tuple(struct pcmcia_device *p_dev, cisdata_t code,
43                       int (*loop_tuple) (struct pcmcia_device *p_dev,
44                                          tuple_t *tuple,
45                                          void *priv_data),
46                       void *priv_data);
47
48 #endif /* CONFIG_PCMCIA */
49
50 /* loop over CIS entries */
51 int pccard_loop_tuple(struct pcmcia_socket *s, unsigned int function,
52                       cisdata_t code, cisparse_t *parse, void *priv_data,
53                       int (*loop_tuple) (tuple_t *tuple,
54                                          cisparse_t *parse,
55                                          void *priv_data));
56
57 #endif /* CONFIG_PCCARD */
58
59 /* Backport for kfifo
60  * kfifo_alloc and kfifo_free must be backported manually 
61  */
62 #define kfifo_in(a, b, c) __kfifo_put(*a, b, c)
63 #define kfifo_out(a, b, c) __kfifo_get(*a, b, c)
64 #define kfifo_len(a) __kfifo_len(*a)
65
66 #endif /* (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)) */
67
68 #endif /* LINUX_26_33_COMPAT_H */