linux/drivers/staging/line6/control.h
<<
>>
Prefs
   1/*
   2 * Line6 Linux USB driver - 0.8.0
   3 *
   4 * Copyright (C) 2004-2009 Markus Grabner (grabner@icg.tugraz.at)
   5 *
   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.
   9 *
  10 */
  11
  12#ifndef LINE6_CONTROL_H
  13#define LINE6_CONTROL_H
  14
  15
  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.
  21*/
  22enum {
  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 */
 125};
 126
 127/**
 128   List of Variax workbench controls (dump).
 129*/
 130enum {
 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 */
 170};
 171
 172/**
 173   List of Variax workbench controls (MIDI).
 174*/
 175enum {
 176        VARIAXMIDI_volume                  =   7,
 177        VARIAXMIDI_tone                    =  79,
 178};
 179
 180
 181extern int pod_create_files(int firmware, int type, struct device *dev);
 182extern void pod_remove_files(int firmware, int type, struct device *dev);
 183extern int variax_create_files(int firmware, int type, struct device *dev);
 184extern void variax_remove_files(int firmware, int type, struct device *dev);
 185
 186
 187#endif
 188