1*c6d43ba8STorsten Schenk /* 2*c6d43ba8STorsten Schenk * Linux driver for TerraTec DMX 6Fire USB 3*c6d43ba8STorsten Schenk * 4*c6d43ba8STorsten Schenk * Author: Torsten Schenk <torsten.schenk@zoho.com> 5*c6d43ba8STorsten Schenk * Created: Jan 01, 2011 6*c6d43ba8STorsten Schenk * Version: 0.3.0 7*c6d43ba8STorsten Schenk * Copyright: (C) Torsten Schenk 8*c6d43ba8STorsten Schenk * 9*c6d43ba8STorsten Schenk * This program is free software; you can redistribute it and/or modify 10*c6d43ba8STorsten Schenk * it under the terms of the GNU General Public License as published by 11*c6d43ba8STorsten Schenk * the Free Software Foundation; either version 2 of the License, or 12*c6d43ba8STorsten Schenk * (at your option) any later version. 13*c6d43ba8STorsten Schenk */ 14*c6d43ba8STorsten Schenk 15*c6d43ba8STorsten Schenk #ifndef USB6FIRE_CONTROL_H 16*c6d43ba8STorsten Schenk #define USB6FIRE_CONTROL_H 17*c6d43ba8STorsten Schenk 18*c6d43ba8STorsten Schenk #include "common.h" 19*c6d43ba8STorsten Schenk 20*c6d43ba8STorsten Schenk enum { 21*c6d43ba8STorsten Schenk CONTROL_MAX_ELEMENTS = 32 22*c6d43ba8STorsten Schenk }; 23*c6d43ba8STorsten Schenk 24*c6d43ba8STorsten Schenk struct control_runtime { 25*c6d43ba8STorsten Schenk struct sfire_chip *chip; 26*c6d43ba8STorsten Schenk 27*c6d43ba8STorsten Schenk struct snd_kcontrol *element[CONTROL_MAX_ELEMENTS]; 28*c6d43ba8STorsten Schenk bool opt_coax_switch; 29*c6d43ba8STorsten Schenk bool line_phono_switch; 30*c6d43ba8STorsten Schenk u8 master_vol; 31*c6d43ba8STorsten Schenk }; 32*c6d43ba8STorsten Schenk 33*c6d43ba8STorsten Schenk int __devinit usb6fire_control_init(struct sfire_chip *chip); 34*c6d43ba8STorsten Schenk void usb6fire_control_abort(struct sfire_chip *chip); 35*c6d43ba8STorsten Schenk void usb6fire_control_destroy(struct sfire_chip *chip); 36*c6d43ba8STorsten Schenk #endif /* USB6FIRE_CONTROL_H */ 37*c6d43ba8STorsten Schenk 38