1*cda5da8dSAndroid Build Coastguard Worker /* 2*cda5da8dSAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*cda5da8dSAndroid Build Coastguard Worker * 4*cda5da8dSAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*cda5da8dSAndroid Build Coastguard Worker * for more information. 6*cda5da8dSAndroid Build Coastguard Worker */ 7*cda5da8dSAndroid Build Coastguard Worker #ifndef _UAPI_SOUND_FIREWIRE_H_INCLUDED 8*cda5da8dSAndroid Build Coastguard Worker #define _UAPI_SOUND_FIREWIRE_H_INCLUDED 9*cda5da8dSAndroid Build Coastguard Worker #include <linux/ioctl.h> 10*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h> 11*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_LOCK_STATUS 0x000010cc 12*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_DICE_NOTIFICATION 0xd1ce004e 13*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_EFW_RESPONSE 0x4e617475 14*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_DIGI00X_MESSAGE 0x746e736c 15*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_MOTU_NOTIFICATION 0x64776479 16*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_TASCAM_CONTROL 0x7473636d 17*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_MOTU_REGISTER_DSP_CHANGE 0x4d545244 18*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_EVENT_FF400_MESSAGE 0x4f6c6761 19*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_common { 20*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 21*cda5da8dSAndroid Build Coastguard Worker }; 22*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_lock_status { 23*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 24*cda5da8dSAndroid Build Coastguard Worker unsigned int status; 25*cda5da8dSAndroid Build Coastguard Worker }; 26*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_dice_notification { 27*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 28*cda5da8dSAndroid Build Coastguard Worker unsigned int notification; 29*cda5da8dSAndroid Build Coastguard Worker }; 30*cda5da8dSAndroid Build Coastguard Worker #define SND_EFW_TRANSACTION_USER_SEQNUM_MAX ((__u32) ((__u16) ~0) - 1) 31*cda5da8dSAndroid Build Coastguard Worker struct snd_efw_transaction { 32*cda5da8dSAndroid Build Coastguard Worker __be32 length; 33*cda5da8dSAndroid Build Coastguard Worker __be32 version; 34*cda5da8dSAndroid Build Coastguard Worker __be32 seqnum; 35*cda5da8dSAndroid Build Coastguard Worker __be32 category; 36*cda5da8dSAndroid Build Coastguard Worker __be32 command; 37*cda5da8dSAndroid Build Coastguard Worker __be32 status; 38*cda5da8dSAndroid Build Coastguard Worker __be32 params[]; 39*cda5da8dSAndroid Build Coastguard Worker }; 40*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_efw_response { 41*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 42*cda5da8dSAndroid Build Coastguard Worker __be32 response[]; 43*cda5da8dSAndroid Build Coastguard Worker }; 44*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_digi00x_message { 45*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 46*cda5da8dSAndroid Build Coastguard Worker __u32 message; 47*cda5da8dSAndroid Build Coastguard Worker }; 48*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_motu_notification { 49*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 50*cda5da8dSAndroid Build Coastguard Worker __u32 message; 51*cda5da8dSAndroid Build Coastguard Worker }; 52*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_tascam_change { 53*cda5da8dSAndroid Build Coastguard Worker unsigned int index; 54*cda5da8dSAndroid Build Coastguard Worker __be32 before; 55*cda5da8dSAndroid Build Coastguard Worker __be32 after; 56*cda5da8dSAndroid Build Coastguard Worker }; 57*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_tascam_control { 58*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 59*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_tascam_change changes[]; 60*cda5da8dSAndroid Build Coastguard Worker }; 61*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_motu_register_dsp_change { 62*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 63*cda5da8dSAndroid Build Coastguard Worker __u32 count; 64*cda5da8dSAndroid Build Coastguard Worker __u32 changes[]; 65*cda5da8dSAndroid Build Coastguard Worker }; 66*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_ff400_message { 67*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 68*cda5da8dSAndroid Build Coastguard Worker unsigned int message_count; 69*cda5da8dSAndroid Build Coastguard Worker struct { 70*cda5da8dSAndroid Build Coastguard Worker __u32 message; 71*cda5da8dSAndroid Build Coastguard Worker __u32 tstamp; 72*cda5da8dSAndroid Build Coastguard Worker } messages[]; 73*cda5da8dSAndroid Build Coastguard Worker }; 74*cda5da8dSAndroid Build Coastguard Worker union snd_firewire_event { 75*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_common common; 76*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_lock_status lock_status; 77*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_dice_notification dice_notification; 78*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_efw_response efw_response; 79*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_digi00x_message digi00x_message; 80*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_tascam_control tascam_control; 81*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_motu_notification motu_notification; 82*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_motu_register_dsp_change motu_register_dsp_change; 83*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_event_ff400_message ff400_message; 84*cda5da8dSAndroid Build Coastguard Worker }; 85*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_GET_INFO _IOR('H', 0xf8, struct snd_firewire_get_info) 86*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_LOCK _IO('H', 0xf9) 87*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_UNLOCK _IO('H', 0xfa) 88*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_TASCAM_STATE _IOR('H', 0xfb, struct snd_firewire_tascam_state) 89*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_MOTU_REGISTER_DSP_METER _IOR('H', 0xfc, struct snd_firewire_motu_register_dsp_meter) 90*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_MOTU_COMMAND_DSP_METER _IOR('H', 0xfd, struct snd_firewire_motu_command_dsp_meter) 91*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_IOCTL_MOTU_REGISTER_DSP_PARAMETER _IOR('H', 0xfe, struct snd_firewire_motu_register_dsp_parameter) 92*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_DICE 1 93*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_FIREWORKS 2 94*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_BEBOB 3 95*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_OXFW 4 96*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_DIGI00X 5 97*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_TASCAM 6 98*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_MOTU 7 99*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TYPE_FIREFACE 8 100*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_get_info { 101*cda5da8dSAndroid Build Coastguard Worker unsigned int type; 102*cda5da8dSAndroid Build Coastguard Worker unsigned int card; 103*cda5da8dSAndroid Build Coastguard Worker unsigned char guid[8]; 104*cda5da8dSAndroid Build Coastguard Worker char device_name[16]; 105*cda5da8dSAndroid Build Coastguard Worker }; 106*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_TASCAM_STATE_COUNT 64 107*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_tascam_state { 108*cda5da8dSAndroid Build Coastguard Worker __be32 data[SNDRV_FIREWIRE_TASCAM_STATE_COUNT]; 109*cda5da8dSAndroid Build Coastguard Worker }; 110*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_INPUT_COUNT 24 111*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_OUTPUT_COUNT 24 112*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_COUNT (SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_INPUT_COUNT + SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_OUTPUT_COUNT) 113*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_motu_register_dsp_meter { 114*cda5da8dSAndroid Build Coastguard Worker __u8 data[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_METER_COUNT]; 115*cda5da8dSAndroid Build Coastguard Worker }; 116*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_COUNT 4 117*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT 20 118*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_INPUT_COUNT 10 119*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_REGISTER_DSP_ALIGNED_INPUT_COUNT (SNDRV_FIREWIRE_MOTU_REGISTER_DSP_INPUT_COUNT + 2) 120*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_motu_register_dsp_parameter { 121*cda5da8dSAndroid Build Coastguard Worker struct { 122*cda5da8dSAndroid Build Coastguard Worker struct { 123*cda5da8dSAndroid Build Coastguard Worker __u8 gain[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT]; 124*cda5da8dSAndroid Build Coastguard Worker __u8 pan[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT]; 125*cda5da8dSAndroid Build Coastguard Worker __u8 flag[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT]; 126*cda5da8dSAndroid Build Coastguard Worker __u8 paired_balance[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT]; 127*cda5da8dSAndroid Build Coastguard Worker __u8 paired_width[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_SRC_COUNT]; 128*cda5da8dSAndroid Build Coastguard Worker } source[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_COUNT]; 129*cda5da8dSAndroid Build Coastguard Worker struct { 130*cda5da8dSAndroid Build Coastguard Worker __u8 paired_volume[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_COUNT]; 131*cda5da8dSAndroid Build Coastguard Worker __u8 paired_flag[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_MIXER_COUNT]; 132*cda5da8dSAndroid Build Coastguard Worker } output; 133*cda5da8dSAndroid Build Coastguard Worker } mixer; 134*cda5da8dSAndroid Build Coastguard Worker struct { 135*cda5da8dSAndroid Build Coastguard Worker __u8 main_paired_volume; 136*cda5da8dSAndroid Build Coastguard Worker __u8 hp_paired_volume; 137*cda5da8dSAndroid Build Coastguard Worker __u8 hp_paired_assignment; 138*cda5da8dSAndroid Build Coastguard Worker __u8 reserved[5]; 139*cda5da8dSAndroid Build Coastguard Worker } output; 140*cda5da8dSAndroid Build Coastguard Worker struct { 141*cda5da8dSAndroid Build Coastguard Worker __u8 boost_flag; 142*cda5da8dSAndroid Build Coastguard Worker __u8 nominal_level_flag; 143*cda5da8dSAndroid Build Coastguard Worker __u8 reserved[6]; 144*cda5da8dSAndroid Build Coastguard Worker } line_input; 145*cda5da8dSAndroid Build Coastguard Worker struct { 146*cda5da8dSAndroid Build Coastguard Worker __u8 gain_and_invert[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_ALIGNED_INPUT_COUNT]; 147*cda5da8dSAndroid Build Coastguard Worker __u8 flag[SNDRV_FIREWIRE_MOTU_REGISTER_DSP_ALIGNED_INPUT_COUNT]; 148*cda5da8dSAndroid Build Coastguard Worker } input; 149*cda5da8dSAndroid Build Coastguard Worker __u8 reserved[64]; 150*cda5da8dSAndroid Build Coastguard Worker }; 151*cda5da8dSAndroid Build Coastguard Worker #define SNDRV_FIREWIRE_MOTU_COMMAND_DSP_METER_COUNT 400 152*cda5da8dSAndroid Build Coastguard Worker struct snd_firewire_motu_command_dsp_meter { 153*cda5da8dSAndroid Build Coastguard Worker float data[SNDRV_FIREWIRE_MOTU_COMMAND_DSP_METER_COUNT]; 154*cda5da8dSAndroid Build Coastguard Worker }; 155*cda5da8dSAndroid Build Coastguard Worker #endif 156