1 /* SPDX-License-Identifier: GPL-2.0 */ 2 int midi_synth_ioctl (int dev, 3 unsigned int cmd, void __user * arg); 4 int midi_synth_kill_note (int dev, int channel, int note, int velocity); 5 int midi_synth_set_instr (int dev, int channel, int instr_no); 6 int midi_synth_start_note (int dev, int channel, int note, int volume); 7 void midi_synth_reset (int dev); 8 int midi_synth_open (int dev, int mode); 9 void midi_synth_close (int dev); 10 void midi_synth_hw_control (int dev, unsigned char *event); 11 int midi_synth_load_patch (int dev, int format, const char __user * addr, 12 int count, int pmgr_flag); 13 void midi_synth_panning (int dev, int channel, int pressure); 14 void midi_synth_aftertouch (int dev, int channel, int pressure); 15 void midi_synth_controller (int dev, int channel, int ctrl_num, int value); 16 void midi_synth_bender (int dev, int chn, int value); 17 void midi_synth_setup_voice (int dev, int voice, int chn); 18 int midi_synth_send_sysex(int dev, unsigned char *bytes,int len); 19 20 #ifndef _MIDI_SYNTH_C_ 21 static struct synth_info std_synth_info = 22 {MIDI_SYNTH_NAME, 0, SYNTH_TYPE_MIDI, 0, 0, 128, 0, 128, MIDI_SYNTH_CAPS}; 23 24 static struct synth_operations std_midi_synth = 25 { 26 .owner = THIS_MODULE, 27 .id = "MIDI", 28 .info = &std_synth_info, 29 .midi_dev = 0, 30 .synth_type = SYNTH_TYPE_MIDI, 31 .synth_subtype = 0, 32 .open = midi_synth_open, 33 .close = midi_synth_close, 34 .ioctl = midi_synth_ioctl, 35 .kill_note = midi_synth_kill_note, 36 .start_note = midi_synth_start_note, 37 .set_instr = midi_synth_set_instr, 38 .reset = midi_synth_reset, 39 .hw_control = midi_synth_hw_control, 40 .load_patch = midi_synth_load_patch, 41 .aftertouch = midi_synth_aftertouch, 42 .controller = midi_synth_controller, 43 .panning = midi_synth_panning, 44 .bender = midi_synth_bender, 45 .setup_voice = midi_synth_setup_voice, 46 .send_sysex = midi_synth_send_sysex 47 }; 48 #endif 49