Merge branch 'linus' into irq/genirq
[pandora-kernel.git] / drivers / staging / frontier / alphatrack.h
1 #define show_set_bit(a) show_set_mbit(alphatrack,a)
2 #define show_set_cmd(a) show_set_mcmd(alphatrack,a)
3 #define show_set_int(a) show_set_mint(alphatrack,a)
4 #define show_set_char(a) show_set_mchar(alphatrack,a)
5 #define show_set_light(a) show_set_ebit(alphatrack,LightID,lights,a)
6 #define show_set_button(a) show_set_ebit(alphatrack,ButtonID,button,a)
7
8 struct alphatrack_icmd {
9     unsigned char cmd[12];
10 };
11
12 struct alphatrack_ocmd {
13     unsigned char cmd[8];
14 };
15
16 enum LightID {
17         LIGHT_EQ = 0,
18         LIGHT_OUT,
19         LIGHT_F2,
20         LIGHT_SEND,
21         LIGHT_IN,
22         LIGHT_F1,
23         LIGHT_PAN,
24         LIGHT_UNDEF1,
25         LIGHT_UNDEF2,
26         LIGHT_SHIFT,
27         LIGHT_TRACKMUTE,
28         LIGHT_TRACKSOLO,
29         LIGHT_TRACKREC,
30         LIGHT_READ,
31         LIGHT_WRITE,
32         LIGHT_ANYSOLO,
33         LIGHT_AUTO,
34         LIGHT_F4,
35         LIGHT_RECORD,
36         LIGHT_WINDOW,
37         LIGHT_PLUGIN,
38         LIGHT_F3,
39         LIGHT_LOOP
40 };
41
42 #define BUTTONMASK_BATTERY     0x00004000
43 #define BUTTONMASK_BACKLIGHT   0x00008000
44 #define BUTTONMASK_FASTFORWARD 0x04000000
45 #define BUTTONMASK_TRACKMUTE   0x00040000
46 #define BUTTONMASK_TRACKSOLO   0x00800000
47 #define BUTTONMASK_TRACKLEFT   0x80000000
48 #define BUTTONMASK_RECORD      0x02000000
49 #define BUTTONMASK_SHIFT       0x20000000
50 #define BUTTONMASK_PUNCH       0x00800000
51 #define BUTTONMASK_TRACKRIGHT  0x00020000
52 #define BUTTONMASK_REWIND      0x01000000
53 #define BUTTONMASK_STOP        0x10000000
54 #define BUTTONMASK_LOOP        0x00010000
55 #define BUTTONMASK_TRACKREC    0x00001000
56 #define BUTTONMASK_PLAY        0x08000000
57 #define BUTTONMASK_TOUCH1      0x00000008
58 #define BUTTONMASK_TOUCH2      0x00000010
59 #define BUTTONMASK_TOUCH3      0x00000020
60
61 #define BUTTONMASK_PRESS1      0x00000009
62 #define BUTTONMASK_PRESS2      0x00008010
63 #define BUTTONMASK_PRESS3      0x00002020
64
65 // last 3 bytes are the slider position
66 // 40 is the actual slider moving, the most sig bits, and 3 lsb
67
68 #define BUTTONMASK_FLIP         0x40000000
69 #define BUTTONMASK_F1           0x00100000
70 #define BUTTONMASK_F2           0x00400000
71 #define BUTTONMASK_F3           0x00200000
72 #define BUTTONMASK_F4           0x00080000
73 #define BUTTONMASK_PAN          0x00000200
74 #define BUTTONMASK_SEND         0x00000800
75 #define BUTTONMASK_EQ           0x00004000
76 #define BUTTONMASK_PLUGIN       0x00000400
77 #define BUTTONMASK_AUTO         0x00000100
78
79
80 // #define BUTTONMASK_FOOTSWITCH FIXME
81
82 // Lookup. name. midi out. midi in.
83
84 struct buttonmap_t {
85         u32 mask;
86         short midi_in;
87         short midi_out;
88         char *name;
89 //      void (*function) (buttonmap_t *);
90         void (*function) (void);
91 };
92