1
2struct RAR_address_struct {
3 u32 low;
4 u32 high;
5};
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22int get_rar_address(int rar_index,struct RAR_address_struct *addresses);
23
24
25
26
27
28
29
30
31
32
33
34
35
36int lock_rar(int rar_index);
37
38
39
40#define RAR_DEBUG_LEVEL_BASIC 0x1
41
42#define RAR_DEBUG_LEVEL_REGISTERS 0x2
43
44#define RAR_DEBUG_LEVEL_EXTENDED 0x4
45
46#define DEBUG_LEVEL 0x7
47
48
49
50
51#define DEBUG_PRINT_0(DEBUG_LEVEL , info) \
52do \
53{ \
54 if(DEBUG_LEVEL) \
55 { \
56 printk(KERN_WARNING info); \
57 } \
58}while(0)
59
60
61#define DEBUG_PRINT_1(DEBUG_LEVEL , info , param1) \
62do \
63{ \
64 if(DEBUG_LEVEL) \
65 { \
66 printk(KERN_WARNING info , param1); \
67 } \
68}while(0)
69
70
71#define DEBUG_PRINT_2(DEBUG_LEVEL , info , param1, param2) \
72do \
73{ \
74 if(DEBUG_LEVEL) \
75 { \
76 printk(KERN_WARNING info , param1, param2); \
77 } \
78}while(0)
79
80
81#define DEBUG_PRINT_3(DEBUG_LEVEL , info , param1, param2 , param3) \
82do \
83{ \
84 if(DEBUG_LEVEL) \
85 { \
86 printk(KERN_WARNING info , param1, param2 , param3); \
87 } \
88}while(0)
89
90
91#define DEBUG_PRINT_4(DEBUG_LEVEL , info , param1, param2 , param3 , param4) \
92do \
93{ \
94 if(DEBUG_LEVEL) \
95 { \
96 printk(KERN_WARNING info , param1, param2 , param3 , param4); \
97 } \
98}while(0)
99
100