Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 1 | /* |
Markus Grabner | e1a164d | 2010-08-23 01:08:25 +0200 | [diff] [blame] | 2 | * Line6 Linux USB driver - 0.9.1beta |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 3 | * |
| 4 | * Copyright (C) 2005-2008 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 USBDEFS_H |
| 13 | #define USBDEFS_H |
| 14 | |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 15 | #define LINE6_VENDOR_ID 0x0e41 |
| 16 | |
| 17 | #define USB_INTERVALS_PER_SECOND 1000 |
| 18 | |
| 19 | /* |
| 20 | Device ids. |
| 21 | */ |
| 22 | #define LINE6_DEVID_BASSPODXT 0x4250 |
| 23 | #define LINE6_DEVID_BASSPODXTLIVE 0x4642 |
| 24 | #define LINE6_DEVID_BASSPODXTPRO 0x4252 |
| 25 | #define LINE6_DEVID_GUITARPORT 0x4750 |
| 26 | #define LINE6_DEVID_POCKETPOD 0x5051 |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 27 | #define LINE6_DEVID_PODHD300 0x5057 |
Chris Bajumpaa | 1785faa | 2013-12-21 17:51:24 -0500 | [diff] [blame] | 28 | #define LINE6_DEVID_PODHD400 0x5058 |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 29 | #define LINE6_DEVID_PODHD500 0x414D |
Markus Grabner | 1027f476 | 2010-08-12 01:35:30 +0200 | [diff] [blame] | 30 | #define LINE6_DEVID_PODSTUDIO_GX 0x4153 |
| 31 | #define LINE6_DEVID_PODSTUDIO_UX1 0x4150 |
| 32 | #define LINE6_DEVID_PODSTUDIO_UX2 0x4151 |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 33 | #define LINE6_DEVID_PODX3 0x414a |
| 34 | #define LINE6_DEVID_PODX3LIVE 0x414b |
| 35 | #define LINE6_DEVID_PODXT 0x5044 |
| 36 | #define LINE6_DEVID_PODXTLIVE 0x4650 |
| 37 | #define LINE6_DEVID_PODXTPRO 0x5050 |
| 38 | #define LINE6_DEVID_TONEPORT_GX 0x4147 |
| 39 | #define LINE6_DEVID_TONEPORT_UX1 0x4141 |
| 40 | #define LINE6_DEVID_TONEPORT_UX2 0x4142 |
| 41 | #define LINE6_DEVID_VARIAX 0x534d |
| 42 | |
Markus Grabner | 0ca5488 | 2012-01-20 00:09:09 +0100 | [diff] [blame] | 43 | #define LINE6_BIT(x) LINE6_BIT_ ## x = 1 << LINE6_INDEX_ ## x |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 44 | |
| 45 | enum { |
Markus Grabner | 0ca5488 | 2012-01-20 00:09:09 +0100 | [diff] [blame] | 46 | LINE6_INDEX_BASSPODXT, |
| 47 | LINE6_INDEX_BASSPODXTLIVE, |
| 48 | LINE6_INDEX_BASSPODXTPRO, |
| 49 | LINE6_INDEX_GUITARPORT, |
| 50 | LINE6_INDEX_POCKETPOD, |
| 51 | LINE6_INDEX_PODHD300, |
Chris Bajumpaa | 1785faa | 2013-12-21 17:51:24 -0500 | [diff] [blame] | 52 | LINE6_INDEX_PODHD400, |
Markus Grabner | 0ca5488 | 2012-01-20 00:09:09 +0100 | [diff] [blame] | 53 | LINE6_INDEX_PODHD500, |
| 54 | LINE6_INDEX_PODSTUDIO_GX, |
| 55 | LINE6_INDEX_PODSTUDIO_UX1, |
| 56 | LINE6_INDEX_PODSTUDIO_UX2, |
| 57 | LINE6_INDEX_PODX3, |
| 58 | LINE6_INDEX_PODX3LIVE, |
| 59 | LINE6_INDEX_PODXT, |
| 60 | LINE6_INDEX_PODXTLIVE, |
| 61 | LINE6_INDEX_PODXTPRO, |
| 62 | LINE6_INDEX_TONEPORT_GX, |
| 63 | LINE6_INDEX_TONEPORT_UX1, |
| 64 | LINE6_INDEX_TONEPORT_UX2, |
| 65 | LINE6_INDEX_VARIAX, |
| 66 | |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 67 | LINE6_BIT(BASSPODXT), |
| 68 | LINE6_BIT(BASSPODXTLIVE), |
| 69 | LINE6_BIT(BASSPODXTPRO), |
| 70 | LINE6_BIT(GUITARPORT), |
| 71 | LINE6_BIT(POCKETPOD), |
| 72 | LINE6_BIT(PODHD300), |
Chris Bajumpaa | 1785faa | 2013-12-21 17:51:24 -0500 | [diff] [blame] | 73 | LINE6_BIT(PODHD400), |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 74 | LINE6_BIT(PODHD500), |
| 75 | LINE6_BIT(PODSTUDIO_GX), |
| 76 | LINE6_BIT(PODSTUDIO_UX1), |
| 77 | LINE6_BIT(PODSTUDIO_UX2), |
| 78 | LINE6_BIT(PODX3), |
| 79 | LINE6_BIT(PODX3LIVE), |
| 80 | LINE6_BIT(PODXT), |
| 81 | LINE6_BIT(PODXTLIVE), |
| 82 | LINE6_BIT(PODXTPRO), |
| 83 | LINE6_BIT(TONEPORT_GX), |
| 84 | LINE6_BIT(TONEPORT_UX1), |
| 85 | LINE6_BIT(TONEPORT_UX2), |
| 86 | LINE6_BIT(VARIAX), |
| 87 | |
| 88 | LINE6_BITS_PRO = LINE6_BIT_BASSPODXTPRO | LINE6_BIT_PODXTPRO, |
Stefan Hajnoczi | 4391bb9 | 2012-11-11 13:24:45 +0100 | [diff] [blame] | 89 | LINE6_BITS_LIVE = LINE6_BIT_BASSPODXTLIVE | LINE6_BIT_PODXTLIVE | |
| 90 | LINE6_BIT_PODX3LIVE, |
| 91 | LINE6_BITS_PODXTALL = LINE6_BIT_PODXT | LINE6_BIT_PODXTLIVE | |
| 92 | LINE6_BIT_PODXTPRO, |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 93 | LINE6_BITS_PODX3ALL = LINE6_BIT_PODX3 | LINE6_BIT_PODX3LIVE, |
Monam Agarwal | fe6c0f9 | 2014-02-27 21:08:30 +0530 | [diff] [blame] | 94 | LINE6_BITS_PODHDALL = LINE6_BIT_PODHD300 | |
| 95 | LINE6_BIT_PODHD400 | |
| 96 | LINE6_BIT_PODHD500, |
Stefan Hajnoczi | 4391bb9 | 2012-11-11 13:24:45 +0100 | [diff] [blame] | 97 | LINE6_BITS_BASSPODXTALL = LINE6_BIT_BASSPODXT | |
| 98 | LINE6_BIT_BASSPODXTLIVE | |
| 99 | LINE6_BIT_BASSPODXTPRO |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 100 | }; |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 101 | |
Greg Kroah-Hartman | a49e483 | 2009-02-27 21:09:55 -0800 | [diff] [blame] | 102 | /* device supports settings parameter via USB */ |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 103 | #define LINE6_BIT_CONTROL (1 << 0) |
Greg Kroah-Hartman | a49e483 | 2009-02-27 21:09:55 -0800 | [diff] [blame] | 104 | /* device supports PCM input/output via USB */ |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 105 | #define LINE6_BIT_PCM (1 << 1) |
Markus Grabner | 1027f476 | 2010-08-12 01:35:30 +0200 | [diff] [blame] | 106 | /* device support hardware monitoring */ |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 107 | #define LINE6_BIT_HWMON (1 << 2) |
Markus Grabner | 1027f476 | 2010-08-12 01:35:30 +0200 | [diff] [blame] | 108 | |
Davide Berardi | ba79e52 | 2014-03-17 03:34:41 +0100 | [diff] [blame] | 109 | #define LINE6_BIT_CTRL_PCM_HW (LINE6_BIT_CONTROL | \ |
Greg Kroah-Hartman | 027360c | 2010-09-21 16:58:00 -0700 | [diff] [blame] | 110 | LINE6_BIT_PCM | \ |
| 111 | LINE6_BIT_HWMON) |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 112 | |
Markus Grabner | 4c6fb5f | 2011-12-05 23:51:53 +0100 | [diff] [blame] | 113 | #define LINE6_FALLBACK_INTERVAL 10 |
| 114 | #define LINE6_FALLBACK_MAXPACKETSIZE 16 |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 115 | |
Markus Grabner | 705ecec | 2009-02-27 19:43:04 -0800 | [diff] [blame] | 116 | #endif |