1 /* SPDX-License-Identifier: GPL-2.0-or-later * << 2 /* 1 /* 3 * 2 * 4 * Copyright (c) 2003 by Karsten Wiese <annabe 3 * Copyright (c) 2003 by Karsten Wiese <annabellesgarden@yahoo.de> >> 4 * >> 5 * This program is free software; you can redistribute it and/or modify >> 6 * it under the terms of the GNU General Public License as published by >> 7 * the Free Software Foundation; either version 2 of the License, or >> 8 * (at your option) any later version. >> 9 * >> 10 * This program is distributed in the hope that it will be useful, >> 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of >> 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> 13 * GNU General Public License for more details. >> 14 * >> 15 * You should have received a copy of the GNU General Public License >> 16 * along with this program; if not, write to the Free Software >> 17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 5 */ 18 */ 6 19 7 enum E_IN84 { !! 20 enum E_In84{ 8 E_FADER_0 = 0, !! 21 eFader0 = 0, 9 E_FADER_1, !! 22 eFader1, 10 E_FADER_2, !! 23 eFader2, 11 E_FADER_3, !! 24 eFader3, 12 E_FADER_4, !! 25 eFader4, 13 E_FADER_5, !! 26 eFader5, 14 E_FADER_6, !! 27 eFader6, 15 E_FADER_7, !! 28 eFader7, 16 E_FADER_M, !! 29 eFaderM, 17 E_TRANSPORT, !! 30 eTransport, 18 E_MODIFIER = 10, !! 31 eModifier = 10, 19 E_FILTER_SELECT, !! 32 eFilterSelect, 20 E_SELECT, !! 33 eSelect, 21 E_MUTE, !! 34 eMute, 22 !! 35 23 E_SWITCH = 15, !! 36 eSwitch = 15, 24 E_WHEEL_GAIN, !! 37 eWheelGain, 25 E_WHEEL_FREQ, !! 38 eWheelFreq, 26 E_WHEEL_Q, !! 39 eWheelQ, 27 E_WHEEL_PAN, !! 40 eWheelPan, 28 E_WHEEL = 20 !! 41 eWheel = 20 29 }; 42 }; 30 43 31 #define T_RECORD 1 44 #define T_RECORD 1 32 #define T_PLAY 2 45 #define T_PLAY 2 33 #define T_STOP 4 46 #define T_STOP 4 34 #define T_F_FWD 8 47 #define T_F_FWD 8 35 #define T_REW 0x10 48 #define T_REW 0x10 36 #define T_SOLO 0x20 49 #define T_SOLO 0x20 37 #define T_REC 0x40 50 #define T_REC 0x40 38 #define T_NULL 0x80 51 #define T_NULL 0x80 39 52 40 53 41 struct us428_ctls { 54 struct us428_ctls { 42 unsigned char fader[9]; !! 55 unsigned char Fader[9]; 43 unsigned char transport; !! 56 unsigned char Transport; 44 unsigned char modifier; !! 57 unsigned char Modifier; 45 unsigned char filters_elect; !! 58 unsigned char FilterSelect; 46 unsigned char select; !! 59 unsigned char Select; 47 unsigned char mute; !! 60 unsigned char Mute; 48 unsigned char unknown; !! 61 unsigned char UNKNOWN; 49 unsigned char wswitch; !! 62 unsigned char Switch; 50 unsigned char wheel[5]; !! 63 unsigned char Wheel[5]; 51 }; 64 }; 52 65 53 struct us428_set_byte { !! 66 struct us428_setByte { 54 unsigned char offset, !! 67 unsigned char Offset, 55 value; !! 68 Value; 56 }; 69 }; 57 70 58 enum { 71 enum { 59 ELT_VOLUME = 0, !! 72 eLT_Volume = 0, 60 ELT_LIGHT !! 73 eLT_Light 61 }; 74 }; 62 75 63 struct usx2y_volume { !! 76 struct usX2Y_volume { 64 unsigned char channel, !! 77 unsigned char Channel, 65 lh, !! 78 LH, 66 ll, !! 79 LL, 67 rh, !! 80 RH, 68 rl; !! 81 RL; 69 }; 82 }; 70 83 71 struct us428_lights { 84 struct us428_lights { 72 struct us428_set_byte light[7]; !! 85 struct us428_setByte Light[7]; 73 }; 86 }; 74 87 75 struct us428_p4out { 88 struct us428_p4out { 76 char type; 89 char type; 77 union { 90 union { 78 struct usx2y_volume vol; !! 91 struct usX2Y_volume vol; 79 struct us428_lights lights; 92 struct us428_lights lights; 80 } val; 93 } val; 81 }; 94 }; 82 95 83 #define N_US428_CTL_BUFS 16 !! 96 #define N_us428_ctl_BUFS 16 84 #define N_US428_P4OUT_BUFS 16 !! 97 #define N_us428_p4out_BUFS 16 85 struct us428ctls_sharedmem { !! 98 struct us428ctls_sharedmem{ 86 struct us428_ctls ctl_snapshot[N !! 99 struct us428_ctls CtlSnapShot[N_us428_ctl_BUFS]; 87 int ctl_snapshot_d !! 100 int CtlSnapShotDiffersAt[N_us428_ctl_BUFS]; 88 int ctl_snapshot_l !! 101 int CtlSnapShotLast, CtlSnapShotRed; 89 struct us428_p4out p4out[N_US428_ !! 102 struct us428_p4out p4out[N_us428_p4out_BUFS]; 90 int p4out_last, p4 !! 103 int p4outLast, p4outSent; 91 }; 104 }; 92 << 93 #define US428_SHAREDMEM_PAGES PAGE_ALIGN(siz << 94 105
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.