First Support on Ginger and OMAP TI
[linux-ginger.git] / drivers / staging / line6 / control.h
blob2f19665d95a98a475fc3c183231d24927c5d452f
1 /*
2 * Line6 Linux USB driver - 0.8.0
4 * Copyright (C) 2004-2009 Markus Grabner (grabner@icg.tugraz.at)
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License as
8 * published by the Free Software Foundation, version 2.
12 #ifndef LINE6_CONTROL_H
13 #define LINE6_CONTROL_H
16 /**
17 List of PODxt Pro controls.
18 See Appendix C of the "PODxt (Pro) Pilot's Handbook" by Line6.
19 Comments after the number refer to the PODxt Pro firmware version required
20 for this feature.
22 enum {
23 POD_tweak = 1,
24 POD_wah_position = 4,
25 POD_compression_gain = 5, /* device: LINE6_BITS_PODXTALL */
26 POD_vol_pedal_position = 7,
27 POD_compression_threshold = 9,
28 POD_pan = 10,
29 POD_amp_model_setup = 11,
30 POD_amp_model = 12, /* firmware: 2.0 */
31 POD_drive = 13,
32 POD_bass = 14,
33 POD_mid = 15, /* device: LINE6_BITS_PODXTALL */
34 POD_lowmid = 15, /* device: LINE6_BITS_BASSPODXTALL */
35 POD_treble = 16, /* device: LINE6_BITS_PODXTALL */
36 POD_highmid = 16, /* device: LINE6_BITS_BASSPODXTALL */
37 POD_chan_vol = 17,
38 POD_reverb_mix = 18, /* device: LINE6_BITS_PODXTALL */
39 POD_effect_setup = 19,
40 POD_band_1_frequency = 20, /* firmware: 2.0 */
41 POD_presence = 21, /* device: LINE6_BITS_PODXTALL */
42 POD_treble__bass = 21, /* device: LINE6_BITS_BASSPODXTALL */
43 POD_noise_gate_enable = 22,
44 POD_gate_threshold = 23,
45 POD_gate_decay_time = 24,
46 POD_stomp_enable = 25,
47 POD_comp_enable = 26,
48 POD_stomp_time = 27,
49 POD_delay_enable = 28,
50 POD_mod_param_1 = 29,
51 POD_delay_param_1 = 30,
52 POD_delay_param_1_note_value = 31,
53 POD_band_2_frequency__bass = 32, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
54 POD_delay_param_2 = 33,
55 POD_delay_volume_mix = 34,
56 POD_delay_param_3 = 35,
57 POD_reverb_enable = 36, /* device: LINE6_BITS_PODXTALL */
58 POD_reverb_type = 37, /* device: LINE6_BITS_PODXTALL */
59 POD_reverb_decay = 38, /* device: LINE6_BITS_PODXTALL */
60 POD_reverb_tone = 39, /* device: LINE6_BITS_PODXTALL */
61 POD_reverb_pre_delay = 40, /* device: LINE6_BITS_PODXTALL */
62 POD_reverb_pre_post = 41, /* device: LINE6_BITS_PODXTALL */
63 POD_band_2_frequency = 42, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
64 POD_band_3_frequency__bass = 42, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
65 POD_wah_enable = 43,
66 POD_modulation_lo_cut = 44, /* device: LINE6_BITS_BASSPODXTALL */
67 POD_delay_reverb_lo_cut = 45, /* device: LINE6_BITS_BASSPODXTALL */
68 POD_volume_pedal_minimum = 46, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
69 POD_eq_pre_post = 46, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
70 POD_volume_pre_post = 47,
71 POD_di_model = 48, /* device: LINE6_BITS_BASSPODXTALL */
72 POD_di_delay = 49, /* device: LINE6_BITS_BASSPODXTALL */
73 POD_mod_enable = 50,
74 POD_mod_param_1_note_value = 51,
75 POD_mod_param_2 = 52,
76 POD_mod_param_3 = 53,
77 POD_mod_param_4 = 54,
78 POD_mod_param_5 = 55, /* device: LINE6_BITS_BASSPODXTALL */
79 POD_mod_volume_mix = 56,
80 POD_mod_pre_post = 57,
81 POD_modulation_model = 58,
82 POD_band_3_frequency = 60, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
83 POD_band_4_frequency__bass = 60, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
84 POD_mod_param_1_double_precision = 61,
85 POD_delay_param_1_double_precision = 62,
86 POD_eq_enable = 63, /* firmware: 2.0 */
87 POD_tap = 64,
88 POD_volume_tweak_pedal_assign = 65,
89 POD_band_5_frequency = 68, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
90 POD_tuner = 69,
91 POD_mic_selection = 70,
92 POD_cabinet_model = 71,
93 POD_stomp_model = 75,
94 POD_roomlevel = 76,
95 POD_band_4_frequency = 77, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
96 POD_band_6_frequency = 77, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
97 POD_stomp_param_1_note_value = 78,
98 POD_stomp_param_2 = 79,
99 POD_stomp_param_3 = 80,
100 POD_stomp_param_4 = 81,
101 POD_stomp_param_5 = 82,
102 POD_stomp_param_6 = 83,
103 POD_amp_switch_select = 84, /* device: LINE6_BITS_LIVE */
104 POD_delay_param_4 = 85,
105 POD_delay_param_5 = 86,
106 POD_delay_pre_post = 87,
107 POD_delay_model = 88, /* device: LINE6_BITS_PODXTALL */
108 POD_delay_verb_model = 88, /* device: LINE6_BITS_BASSPODXTALL */
109 POD_tempo_msb = 89,
110 POD_tempo_lsb = 90,
111 POD_wah_model = 91, /* firmware: 3.0 */
112 POD_bypass_volume = 105, /* firmware: 2.14 */
113 POD_fx_loop_on_off = 107, /* device: LINE6_BITS_PRO */
114 POD_tweak_param_select = 108,
115 POD_amp1_engage = 111,
116 POD_band_1_gain = 114, /* firmware: 2.0 */
117 POD_band_2_gain__bass = 115, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
118 POD_band_2_gain = 116, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
119 POD_band_3_gain__bass = 116, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
120 POD_band_3_gain = 117, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
121 POD_band_4_gain__bass = 117, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
122 POD_band_5_gain__bass = 118, /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
123 POD_band_4_gain = 119, /* device: LINE6_BITS_PODXTALL */ /* firmware: 2.0 */
124 POD_band_6_gain__bass = 119 /* device: LINE6_BITS_BASSPODXTALL */ /* firmware: 2.0 */
128 List of Variax workbench controls (dump).
130 enum {
131 VARIAX_body = 3,
132 VARIAX_pickup1_enable = 4, /* 0: enabled, 1: disabled */
133 VARIAX_pickup1_type = 8,
134 VARIAX_pickup1_position = 9, /* type: 24 bit float */
135 VARIAX_pickup1_angle = 12, /* type: 24 bit float */
136 VARIAX_pickup1_level = 15, /* type: 24 bit float */
137 VARIAX_pickup2_enable = 18, /* 0: enabled, 1: disabled */
138 VARIAX_pickup2_type = 22,
139 VARIAX_pickup2_position = 23, /* type: 24 bit float */
140 VARIAX_pickup2_angle = 26, /* type: 24 bit float */
141 VARIAX_pickup2_level = 29, /* type: 24 bit float */
142 VARIAX_pickup_phase = 32, /* 0: in phase, 1: out of phase */
143 VARIAX_capacitance = 33, /* type: 24 bit float */
144 VARIAX_tone_resistance = 36, /* type: 24 bit float */
145 VARIAX_volume_resistance = 39, /* type: 24 bit float */
146 VARIAX_taper = 42, /* 0: Linear, 1: Audio */
147 VARIAX_tone_dump = 43, /* type: 24 bit float */
148 VARIAX_save_tone = 46,
149 VARIAX_volume_dump = 47, /* type: 24 bit float */
150 VARIAX_tuning_enable = 50,
151 VARIAX_tuning6 = 51,
152 VARIAX_tuning5 = 52,
153 VARIAX_tuning4 = 53,
154 VARIAX_tuning3 = 54,
155 VARIAX_tuning2 = 55,
156 VARIAX_tuning1 = 56,
157 VARIAX_detune6 = 57, /* type: 24 bit float */
158 VARIAX_detune5 = 60, /* type: 24 bit float */
159 VARIAX_detune4 = 63, /* type: 24 bit float */
160 VARIAX_detune3 = 66, /* type: 24 bit float */
161 VARIAX_detune2 = 69, /* type: 24 bit float */
162 VARIAX_detune1 = 72, /* type: 24 bit float */
163 VARIAX_mix6 = 75, /* type: 24 bit float */
164 VARIAX_mix5 = 78, /* type: 24 bit float */
165 VARIAX_mix4 = 81, /* type: 24 bit float */
166 VARIAX_mix3 = 84, /* type: 24 bit float */
167 VARIAX_mix2 = 87, /* type: 24 bit float */
168 VARIAX_mix1 = 90, /* type: 24 bit float */
169 VARIAX_pickup_wiring = 96 /* 0: parallel, 1: series */
173 List of Variax workbench controls (MIDI).
175 enum {
176 VARIAXMIDI_volume = 7,
177 VARIAXMIDI_tone = 79,
181 extern int pod_create_files(int firmware, int type, struct device *dev);
182 extern void pod_remove_files(int firmware, int type, struct device *dev);
183 extern int variax_create_files(int firmware, int type, struct device *dev);
184 extern void variax_remove_files(int firmware, int type, struct device *dev);
187 #endif