mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-24 12:55:47 +07:00
1a59d1b8e0
Based on 1 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details you should have received a copy of the gnu general public license along with this program if not write to the free software foundation inc 59 temple place suite 330 boston ma 02111 1307 usa extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 1334 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Richard Fontana <rfontana@redhat.com> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190527070033.113240726@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
47 lines
1.8 KiB
C
47 lines
1.8 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
#ifndef __OPL3_VOICE_H
|
|
#define __OPL3_VOICE_H
|
|
|
|
/*
|
|
* Copyright (c) 2000 Uros Bizjak <uros@kss-loka.si>
|
|
*/
|
|
|
|
#include <sound/opl3.h>
|
|
|
|
/* Prototypes for opl3_seq.c */
|
|
int snd_opl3_synth_use_inc(struct snd_opl3 * opl3);
|
|
void snd_opl3_synth_use_dec(struct snd_opl3 * opl3);
|
|
int snd_opl3_synth_setup(struct snd_opl3 * opl3);
|
|
void snd_opl3_synth_cleanup(struct snd_opl3 * opl3);
|
|
|
|
/* Prototypes for opl3_midi.c */
|
|
void snd_opl3_note_on(void *p, int note, int vel, struct snd_midi_channel *chan);
|
|
void snd_opl3_note_off(void *p, int note, int vel, struct snd_midi_channel *chan);
|
|
void snd_opl3_key_press(void *p, int note, int vel, struct snd_midi_channel *chan);
|
|
void snd_opl3_terminate_note(void *p, int note, struct snd_midi_channel *chan);
|
|
void snd_opl3_control(void *p, int type, struct snd_midi_channel *chan);
|
|
void snd_opl3_nrpn(void *p, struct snd_midi_channel *chan, struct snd_midi_channel_set *chset);
|
|
void snd_opl3_sysex(void *p, unsigned char *buf, int len, int parsed, struct snd_midi_channel_set *chset);
|
|
|
|
void snd_opl3_calc_volume(unsigned char *reg, int vel, struct snd_midi_channel *chan);
|
|
void snd_opl3_timer_func(struct timer_list *t);
|
|
|
|
/* Prototypes for opl3_drums.c */
|
|
void snd_opl3_load_drums(struct snd_opl3 *opl3);
|
|
void snd_opl3_drum_switch(struct snd_opl3 *opl3, int note, int vel, int on_off, struct snd_midi_channel *chan);
|
|
|
|
/* Prototypes for opl3_oss.c */
|
|
#if IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
|
|
void snd_opl3_init_seq_oss(struct snd_opl3 *opl3, char *name);
|
|
void snd_opl3_free_seq_oss(struct snd_opl3 *opl3);
|
|
#else
|
|
#define snd_opl3_init_seq_oss(opl3, name) /* NOP */
|
|
#define snd_opl3_free_seq_oss(opl3) /* NOP */
|
|
#endif
|
|
|
|
extern char snd_opl3_regmap[MAX_OPL2_VOICES][4];
|
|
extern bool use_internal_drums;
|
|
extern struct snd_midi_op opl3_ops;
|
|
|
|
#endif
|