1 /* 2 * Line6 Linux USB driver - 0.9.1beta 3 * 4 * Copyright (C) 2004-2010 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 TONEPORT_H 13 #define TONEPORT_H 14 15 #include <linux/usb.h> 16 #include <sound/core.h> 17 18 #include "driver.h" 19 20 struct usb_line6_toneport { 21 /** 22 Generic Line6 USB data. 23 */ 24 struct usb_line6 line6; 25 26 /** 27 Source selector. 28 */ 29 int source; 30 31 /** 32 Serial number of device. 33 */ 34 int serial_number; 35 36 /** 37 Firmware version (x 100). 38 */ 39 int firmware_version; 40 41 /** 42 Timer for delayed PCM startup. 43 */ 44 struct timer_list timer; 45 }; 46 47 extern void line6_toneport_disconnect(struct usb_interface *interface); 48 extern int line6_toneport_init(struct usb_interface *interface, 49 struct usb_line6_toneport *toneport); 50 extern void line6_toneport_reset_resume(struct usb_line6_toneport *toneport); 51 52 #endif 53