Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
control.c File Reference
#include <linux/usb.h>
#include "control.h"
#include "driver.h"
#include "pod.h"
#include "usbdefs.h"
#include "variax.h"

Go to the source code of this file.

Macros

#define DEVICE_ATTR2(_name1, _name2, _mode, _show, _store)   struct device_attribute dev_attr_##_name1 = __ATTR(_name2, _mode, _show, _store)
 
#define LINE6_PARAM_R(PREFIX, prefix, type, param)
 
#define LINE6_PARAM_RW(PREFIX, prefix, type, param)
 
#define POD_PARAM_R(type, param)   LINE6_PARAM_R(POD, pod, type, param)
 
#define POD_PARAM_RW(type, param)   LINE6_PARAM_RW(POD, pod, type, param)
 
#define VARIAX_PARAM_R(type, param)   LINE6_PARAM_R(VARIAX, variax, type, param)
 
#define VARIAX_PARAM_RW(type, param)   LINE6_PARAM_RW(VARIAX, variax, type, param)
 

Functions

 POD_PARAM_RW (int, tweak)
 
 POD_PARAM_RW (int, wah_position)
 
 POD_PARAM_RW (int, compression_gain)
 
 POD_PARAM_RW (int, vol_pedal_position)
 
 POD_PARAM_RW (int, compression_threshold)
 
 POD_PARAM_RW (int, pan)
 
 POD_PARAM_RW (int, amp_model_setup)
 
 POD_PARAM_RW (int, amp_model)
 
 POD_PARAM_RW (int, drive)
 
 POD_PARAM_RW (int, bass)
 
 POD_PARAM_RW (int, mid)
 
 POD_PARAM_RW (int, lowmid)
 
 POD_PARAM_RW (int, treble)
 
 POD_PARAM_RW (int, highmid)
 
 POD_PARAM_RW (int, chan_vol)
 
 POD_PARAM_RW (int, reverb_mix)
 
 POD_PARAM_RW (int, effect_setup)
 
 POD_PARAM_RW (int, band_1_frequency)
 
 POD_PARAM_RW (int, presence)
 
 POD_PARAM_RW (int, treble__bass)
 
 POD_PARAM_RW (int, noise_gate_enable)
 
 POD_PARAM_RW (int, gate_threshold)
 
 POD_PARAM_RW (int, gate_decay_time)
 
 POD_PARAM_RW (int, stomp_enable)
 
 POD_PARAM_RW (int, comp_enable)
 
 POD_PARAM_RW (int, stomp_time)
 
 POD_PARAM_RW (int, delay_enable)
 
 POD_PARAM_RW (int, mod_param_1)
 
 POD_PARAM_RW (int, delay_param_1)
 
 POD_PARAM_RW (int, delay_param_1_note_value)
 
 POD_PARAM_RW (int, band_2_frequency__bass)
 
 POD_PARAM_RW (int, delay_param_2)
 
 POD_PARAM_RW (int, delay_volume_mix)
 
 POD_PARAM_RW (int, delay_param_3)
 
 POD_PARAM_RW (int, reverb_enable)
 
 POD_PARAM_RW (int, reverb_type)
 
 POD_PARAM_RW (int, reverb_decay)
 
 POD_PARAM_RW (int, reverb_tone)
 
 POD_PARAM_RW (int, reverb_pre_delay)
 
 POD_PARAM_RW (int, reverb_pre_post)
 
 POD_PARAM_RW (int, band_2_frequency)
 
 POD_PARAM_RW (int, band_3_frequency__bass)
 
 POD_PARAM_RW (int, wah_enable)
 
 POD_PARAM_RW (int, modulation_lo_cut)
 
 POD_PARAM_RW (int, delay_reverb_lo_cut)
 
 POD_PARAM_RW (int, volume_pedal_minimum)
 
 POD_PARAM_RW (int, eq_pre_post)
 
 POD_PARAM_RW (int, volume_pre_post)
 
 POD_PARAM_RW (int, di_model)
 
 POD_PARAM_RW (int, di_delay)
 
 POD_PARAM_RW (int, mod_enable)
 
 POD_PARAM_RW (int, mod_param_1_note_value)
 
 POD_PARAM_RW (int, mod_param_2)
 
 POD_PARAM_RW (int, mod_param_3)
 
 POD_PARAM_RW (int, mod_param_4)
 
 POD_PARAM_RW (int, mod_param_5)
 
 POD_PARAM_RW (int, mod_volume_mix)
 
 POD_PARAM_RW (int, mod_pre_post)
 
 POD_PARAM_RW (int, modulation_model)
 
 POD_PARAM_RW (int, band_3_frequency)
 
 POD_PARAM_RW (int, band_4_frequency__bass)
 
 POD_PARAM_RW (int, mod_param_1_double_precision)
 
 POD_PARAM_RW (int, delay_param_1_double_precision)
 
 POD_PARAM_RW (int, eq_enable)
 
 POD_PARAM_RW (int, tap)
 
 POD_PARAM_RW (int, volume_tweak_pedal_assign)
 
 POD_PARAM_RW (int, band_5_frequency)
 
 POD_PARAM_RW (int, tuner)
 
 POD_PARAM_RW (int, mic_selection)
 
 POD_PARAM_RW (int, cabinet_model)
 
 POD_PARAM_RW (int, stomp_model)
 
 POD_PARAM_RW (int, roomlevel)
 
 POD_PARAM_RW (int, band_4_frequency)
 
 POD_PARAM_RW (int, band_6_frequency)
 
 POD_PARAM_RW (int, stomp_param_1_note_value)
 
 POD_PARAM_RW (int, stomp_param_2)
 
 POD_PARAM_RW (int, stomp_param_3)
 
 POD_PARAM_RW (int, stomp_param_4)
 
 POD_PARAM_RW (int, stomp_param_5)
 
 POD_PARAM_RW (int, stomp_param_6)
 
 POD_PARAM_RW (int, amp_switch_select)
 
 POD_PARAM_RW (int, delay_param_4)
 
 POD_PARAM_RW (int, delay_param_5)
 
 POD_PARAM_RW (int, delay_pre_post)
 
 POD_PARAM_RW (int, delay_model)
 
 POD_PARAM_RW (int, delay_verb_model)
 
 POD_PARAM_RW (int, tempo_msb)
 
 POD_PARAM_RW (int, tempo_lsb)
 
 POD_PARAM_RW (int, wah_model)
 
 POD_PARAM_RW (int, bypass_volume)
 
 POD_PARAM_RW (int, fx_loop_on_off)
 
 POD_PARAM_RW (int, tweak_param_select)
 
 POD_PARAM_RW (int, amp1_engage)
 
 POD_PARAM_RW (int, band_1_gain)
 
 POD_PARAM_RW (int, band_2_gain__bass)
 
 POD_PARAM_RW (int, band_2_gain)
 
 POD_PARAM_RW (int, band_3_gain__bass)
 
 POD_PARAM_RW (int, band_3_gain)
 
 POD_PARAM_RW (int, band_4_gain__bass)
 
 POD_PARAM_RW (int, band_5_gain__bass)
 
 POD_PARAM_RW (int, band_4_gain)
 
 POD_PARAM_RW (int, band_6_gain__bass)
 
 VARIAX_PARAM_R (int, body)
 
 VARIAX_PARAM_R (int, pickup1_enable)
 
 VARIAX_PARAM_R (int, pickup1_type)
 
 VARIAX_PARAM_R (float, pickup1_position)
 
 VARIAX_PARAM_R (float, pickup1_angle)
 
 VARIAX_PARAM_R (float, pickup1_level)
 
 VARIAX_PARAM_R (int, pickup2_enable)
 
 VARIAX_PARAM_R (int, pickup2_type)
 
 VARIAX_PARAM_R (float, pickup2_position)
 
 VARIAX_PARAM_R (float, pickup2_angle)
 
 VARIAX_PARAM_R (float, pickup2_level)
 
 VARIAX_PARAM_R (int, pickup_phase)
 
 VARIAX_PARAM_R (float, capacitance)
 
 VARIAX_PARAM_R (float, tone_resistance)
 
 VARIAX_PARAM_R (float, volume_resistance)
 
 VARIAX_PARAM_R (int, taper)
 
 VARIAX_PARAM_R (float, tone_dump)
 
 VARIAX_PARAM_R (int, save_tone)
 
 VARIAX_PARAM_R (float, volume_dump)
 
 VARIAX_PARAM_R (int, tuning_enable)
 
 VARIAX_PARAM_R (int, tuning6)
 
 VARIAX_PARAM_R (int, tuning5)
 
 VARIAX_PARAM_R (int, tuning4)
 
 VARIAX_PARAM_R (int, tuning3)
 
 VARIAX_PARAM_R (int, tuning2)
 
 VARIAX_PARAM_R (int, tuning1)
 
 VARIAX_PARAM_R (float, detune6)
 
 VARIAX_PARAM_R (float, detune5)
 
 VARIAX_PARAM_R (float, detune4)
 
 VARIAX_PARAM_R (float, detune3)
 
 VARIAX_PARAM_R (float, detune2)
 
 VARIAX_PARAM_R (float, detune1)
 
 VARIAX_PARAM_R (float, mix6)
 
 VARIAX_PARAM_R (float, mix5)
 
 VARIAX_PARAM_R (float, mix4)
 
 VARIAX_PARAM_R (float, mix3)
 
 VARIAX_PARAM_R (float, mix2)
 
 VARIAX_PARAM_R (float, mix1)
 
 VARIAX_PARAM_R (int, pickup_wiring)
 
int line6_pod_create_files (int firmware, int type, struct device *dev)
 
void line6_pod_remove_files (int firmware, int type, struct device *dev)
 
int line6_variax_create_files (int firmware, int type, struct device *dev)
 
void line6_variax_remove_files (int firmware, int type, struct device *dev)
 

Macro Definition Documentation

#define DEVICE_ATTR2 (   _name1,
  _name2,
  _mode,
  _show,
  _store 
)    struct device_attribute dev_attr_##_name1 = __ATTR(_name2, _mode, _show, _store)

Definition at line 20 of file control.c.

#define LINE6_PARAM_R (   PREFIX,
  prefix,
  type,
  param 
)
Value:
static ssize_t prefix##_get_##param(struct device *dev, \
struct device_attribute *attr, char *buf) \
{ \
return prefix##_get_param_##type(dev, buf, PREFIX##_##param); \
}

Definition at line 23 of file control.c.

#define LINE6_PARAM_RW (   PREFIX,
  prefix,
  type,
  param 
)
Value:
static ssize_t prefix##_set_##param(struct device *dev, \
struct device_attribute *attr, const char *buf, size_t count) \
{ \
return prefix##_set_param_##type(dev, buf, count, PREFIX##_##param); \
}

Definition at line 30 of file control.c.

#define POD_PARAM_R (   type,
  param 
)    LINE6_PARAM_R(POD, pod, type, param)

Definition at line 38 of file control.c.

#define POD_PARAM_RW (   type,
  param 
)    LINE6_PARAM_RW(POD, pod, type, param)

Definition at line 39 of file control.c.

#define VARIAX_PARAM_R (   type,
  param 
)    LINE6_PARAM_R(VARIAX, variax, type, param)

Definition at line 40 of file control.c.

#define VARIAX_PARAM_RW (   type,
  param 
)    LINE6_PARAM_RW(VARIAX, variax, type, param)

Definition at line 41 of file control.c.

Function Documentation

int line6_pod_create_files ( int  firmware,
int  type,
struct device dev 
)

Definition at line 531 of file control.c.

void line6_pod_remove_files ( int  firmware,
int  type,
struct device dev 
)

Definition at line 735 of file control.c.

int line6_variax_create_files ( int  firmware,
int  type,
struct device dev 
)

Definition at line 909 of file control.c.

void line6_variax_remove_files ( int  firmware,
int  type,
struct device dev 
)

Definition at line 954 of file control.c.

POD_PARAM_RW ( int  ,
tweak   
)
POD_PARAM_RW ( int  ,
wah_position   
)
POD_PARAM_RW ( int  ,
compression_gain   
)
POD_PARAM_RW ( int  ,
vol_pedal_position   
)
POD_PARAM_RW ( int  ,
compression_threshold   
)
POD_PARAM_RW ( int  ,
pan   
)
POD_PARAM_RW ( int  ,
amp_model_setup   
)
POD_PARAM_RW ( int  ,
amp_model   
)
POD_PARAM_RW ( int  ,
drive   
)
POD_PARAM_RW ( int  ,
bass   
)
POD_PARAM_RW ( int  ,
mid   
)
POD_PARAM_RW ( int  ,
lowmid   
)
POD_PARAM_RW ( int  ,
treble   
)
POD_PARAM_RW ( int  ,
highmid   
)
POD_PARAM_RW ( int  ,
chan_vol   
)
POD_PARAM_RW ( int  ,
reverb_mix   
)
POD_PARAM_RW ( int  ,
effect_setup   
)
POD_PARAM_RW ( int  ,
band_1_frequency   
)
POD_PARAM_RW ( int  ,
presence   
)
POD_PARAM_RW ( int  ,
treble__bass   
)
POD_PARAM_RW ( int  ,
noise_gate_enable   
)
POD_PARAM_RW ( int  ,
gate_threshold   
)
POD_PARAM_RW ( int  ,
gate_decay_time   
)
POD_PARAM_RW ( int  ,
stomp_enable   
)
POD_PARAM_RW ( int  ,
comp_enable   
)
POD_PARAM_RW ( int  ,
stomp_time   
)
POD_PARAM_RW ( int  ,
delay_enable   
)
POD_PARAM_RW ( int  ,
mod_param_1   
)
POD_PARAM_RW ( int  ,
delay_param_1   
)
POD_PARAM_RW ( int  ,
delay_param_1_note_value   
)
POD_PARAM_RW ( int  ,
band_2_frequency__bass   
)
POD_PARAM_RW ( int  ,
delay_param_2   
)
POD_PARAM_RW ( int  ,
delay_volume_mix   
)
POD_PARAM_RW ( int  ,
delay_param_3   
)
POD_PARAM_RW ( int  ,
reverb_enable   
)
POD_PARAM_RW ( int  ,
reverb_type   
)
POD_PARAM_RW ( int  ,
reverb_decay   
)
POD_PARAM_RW ( int  ,
reverb_tone   
)
POD_PARAM_RW ( int  ,
reverb_pre_delay   
)
POD_PARAM_RW ( int  ,
reverb_pre_post   
)
POD_PARAM_RW ( int  ,
band_2_frequency   
)
POD_PARAM_RW ( int  ,
band_3_frequency__bass   
)
POD_PARAM_RW ( int  ,
wah_enable   
)
POD_PARAM_RW ( int  ,
modulation_lo_cut   
)
POD_PARAM_RW ( int  ,
delay_reverb_lo_cut   
)
POD_PARAM_RW ( int  ,
volume_pedal_minimum   
)
POD_PARAM_RW ( int  ,
eq_pre_post   
)
POD_PARAM_RW ( int  ,
volume_pre_post   
)
POD_PARAM_RW ( int  ,
di_model   
)
POD_PARAM_RW ( int  ,
di_delay   
)
POD_PARAM_RW ( int  ,
mod_enable   
)
POD_PARAM_RW ( int  ,
mod_param_1_note_value   
)
POD_PARAM_RW ( int  ,
mod_param_2   
)
POD_PARAM_RW ( int  ,
mod_param_3   
)
POD_PARAM_RW ( int  ,
mod_param_4   
)
POD_PARAM_RW ( int  ,
mod_param_5   
)
POD_PARAM_RW ( int  ,
mod_volume_mix   
)
POD_PARAM_RW ( int  ,
mod_pre_post   
)
POD_PARAM_RW ( int  ,
modulation_model   
)
POD_PARAM_RW ( int  ,
band_3_frequency   
)
POD_PARAM_RW ( int  ,
band_4_frequency__bass   
)
POD_PARAM_RW ( int  ,
mod_param_1_double_precision   
)
POD_PARAM_RW ( int  ,
delay_param_1_double_precision   
)
POD_PARAM_RW ( int  ,
eq_enable   
)
POD_PARAM_RW ( int  ,
tap   
)
POD_PARAM_RW ( int  ,
volume_tweak_pedal_assign   
)
POD_PARAM_RW ( int  ,
band_5_frequency   
)
POD_PARAM_RW ( int  ,
tuner   
)
POD_PARAM_RW ( int  ,
mic_selection   
)
POD_PARAM_RW ( int  ,
cabinet_model   
)
POD_PARAM_RW ( int  ,
stomp_model   
)
POD_PARAM_RW ( int  ,
roomlevel   
)
POD_PARAM_RW ( int  ,
band_4_frequency   
)
POD_PARAM_RW ( int  ,
band_6_frequency   
)
POD_PARAM_RW ( int  ,
stomp_param_1_note_value   
)
POD_PARAM_RW ( int  ,
stomp_param_2   
)
POD_PARAM_RW ( int  ,
stomp_param_3   
)
POD_PARAM_RW ( int  ,
stomp_param_4   
)
POD_PARAM_RW ( int  ,
stomp_param_5   
)
POD_PARAM_RW ( int  ,
stomp_param_6   
)
POD_PARAM_RW ( int  ,
amp_switch_select   
)
POD_PARAM_RW ( int  ,
delay_param_4   
)
POD_PARAM_RW ( int  ,
delay_param_5   
)
POD_PARAM_RW ( int  ,
delay_pre_post   
)
POD_PARAM_RW ( int  ,
delay_model   
)
POD_PARAM_RW ( int  ,
delay_verb_model   
)
POD_PARAM_RW ( int  ,
tempo_msb   
)
POD_PARAM_RW ( int  ,
tempo_lsb   
)
POD_PARAM_RW ( int  ,
wah_model   
)
POD_PARAM_RW ( int  ,
bypass_volume   
)
POD_PARAM_RW ( int  ,
fx_loop_on_off   
)
POD_PARAM_RW ( int  ,
tweak_param_select   
)
POD_PARAM_RW ( int  ,
amp1_engage   
)
POD_PARAM_RW ( int  ,
band_1_gain   
)
POD_PARAM_RW ( int  ,
band_2_gain__bass   
)
POD_PARAM_RW ( int  ,
band_2_gain   
)
POD_PARAM_RW ( int  ,
band_3_gain__bass   
)
POD_PARAM_RW ( int  ,
band_3_gain   
)
POD_PARAM_RW ( int  ,
band_4_gain__bass   
)
POD_PARAM_RW ( int  ,
band_5_gain__bass   
)
POD_PARAM_RW ( int  ,
band_4_gain   
)
POD_PARAM_RW ( int  ,
band_6_gain__bass   
)
VARIAX_PARAM_R ( int  ,
body   
)
VARIAX_PARAM_R ( int  ,
pickup1_enable   
)
VARIAX_PARAM_R ( int  ,
pickup1_type   
)
VARIAX_PARAM_R ( float  ,
pickup1_position   
)
VARIAX_PARAM_R ( float  ,
pickup1_angle   
)
VARIAX_PARAM_R ( float  ,
pickup1_level   
)
VARIAX_PARAM_R ( int  ,
pickup2_enable   
)
VARIAX_PARAM_R ( int  ,
pickup2_type   
)
VARIAX_PARAM_R ( float  ,
pickup2_position   
)
VARIAX_PARAM_R ( float  ,
pickup2_angle   
)
VARIAX_PARAM_R ( float  ,
pickup2_level   
)
VARIAX_PARAM_R ( int  ,
pickup_phase   
)
VARIAX_PARAM_R ( float  ,
capacitance   
)
VARIAX_PARAM_R ( float  ,
tone_resistance   
)
VARIAX_PARAM_R ( float  ,
volume_resistance   
)
VARIAX_PARAM_R ( int  ,
taper   
)
VARIAX_PARAM_R ( float  ,
tone_dump   
)
VARIAX_PARAM_R ( int  ,
save_tone   
)
VARIAX_PARAM_R ( float  ,
volume_dump   
)
VARIAX_PARAM_R ( int  ,
tuning_enable   
)
VARIAX_PARAM_R ( int  ,
tuning6   
)
VARIAX_PARAM_R ( int  ,
tuning5   
)
VARIAX_PARAM_R ( int  ,
tuning4   
)
VARIAX_PARAM_R ( int  ,
tuning3   
)
VARIAX_PARAM_R ( int  ,
tuning2   
)
VARIAX_PARAM_R ( int  ,
tuning1   
)
VARIAX_PARAM_R ( float  ,
detune6   
)
VARIAX_PARAM_R ( float  ,
detune5   
)
VARIAX_PARAM_R ( float  ,
detune4   
)
VARIAX_PARAM_R ( float  ,
detune3   
)
VARIAX_PARAM_R ( float  ,
detune2   
)
VARIAX_PARAM_R ( float  ,
detune1   
)
VARIAX_PARAM_R ( float  ,
mix6   
)
VARIAX_PARAM_R ( float  ,
mix5   
)
VARIAX_PARAM_R ( float  ,
mix4   
)
VARIAX_PARAM_R ( float  ,
mix3   
)
VARIAX_PARAM_R ( float  ,
mix2   
)
VARIAX_PARAM_R ( float  ,
mix1   
)
VARIAX_PARAM_R ( int  ,
pickup_wiring   
)