summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1998-11-12 00:42:08 +0000
committerjkh <jkh@FreeBSD.org>1998-11-12 00:42:08 +0000
commit78b866cf0e1e3ed5dc8a4638cdc6ffda28d53178 (patch)
treecb9555f7e088ed1ef4e57534a1c51777a7713203 /sys
parented695f89de8979068aeffd87326896a93f42f871 (diff)
downloadFreeBSD-src-78b866cf0e1e3ed5dc8a4638cdc6ffda28d53178.zip
FreeBSD-src-78b866cf0e1e3ed5dc8a4638cdc6ffda28d53178.tar.gz
MF22: Bring in some linux sound ioctl support which I committed to 2.2
for PR 7792 but did not bring forward. Submitted by: Avatar Liang <avatar@www.mmlab.cse.yzu.edu.tw> PR: 8656
Diffstat (limited to 'sys')
-rw-r--r--sys/alpha/linux/linux.h17
-rw-r--r--sys/compat/linux/linux_ioctl.c62
-rw-r--r--sys/i386/linux/linux.h17
-rw-r--r--sys/i386/linux/linux_ioctl.c62
4 files changed, 154 insertions, 4 deletions
diff --git a/sys/alpha/linux/linux.h b/sys/alpha/linux/linux.h
index db96f2e..691ed55 100644
--- a/sys/alpha/linux/linux.h
+++ b/sys/alpha/linux/linux.h
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: linux.h,v 1.22 1998/09/30 01:42:53 jfieber Exp $
+ * $Id: linux.h,v 1.23 1998/10/05 16:37:36 jfieber Exp $
*/
#ifndef _I386_LINUX_LINUX_H_
@@ -512,6 +512,21 @@ struct trapframe;
#define LINUX_IP_DROP_MEMBERSHIP 36
/* Sound system defines */
+#define LINUX_SNDCTL_SEQ_RESET 0x5100
+#define LINUX_SNDCTL_SEQ_SYNC 0x5101
+#define LINUX_SNDCTL_SYNTH_INFO 0x5102
+#define LINUX_SNDCTL_SEQ_CTRLRATE 0x5103
+#define LINUX_SNDCTL_SEQ_GETOUTCOUNT 0x5104
+#define LINUX_SNDCTL_SEQ_GETINCOUNT 0x5105
+#define LINUX_SNDCTL_SEQ_PERCMODE 0x5106
+#define LINUX_SNDCTL_FM_LOAD_INSTR 0x5107
+#define LINUX_SNDCTL_SEQ_TESTMIDI 0x5108
+#define LINUX_SNDCTL_SEQ_RESETSAMPLES 0x5109
+#define LINUX_SNDCTL_SEQ_NRSYNTHS 0x510A
+#define LINUX_SNDCTL_SEQ_NRMIDIS 0x510B
+#define LINUX_SNDCTL_MIDI_INFO 0x510C
+#define LINUX_SNDCTL_SEQ_TRESHOLD 0x510D
+#define LINUX_SNDCTL_SYNTH_MEMAVL 0x510E
#define LINUX_SNDCTL_DSP_RESET 0x5000
#define LINUX_SNDCTL_DSP_SYNC 0x5001
#define LINUX_SNDCTL_DSP_SPEED 0x5002
diff --git a/sys/compat/linux/linux_ioctl.c b/sys/compat/linux/linux_ioctl.c
index 26bb5ab..3010f74 100644
--- a/sys/compat/linux/linux_ioctl.c
+++ b/sys/compat/linux/linux_ioctl.c
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: linux_ioctl.c,v 1.28 1998/08/31 10:53:33 jkh Exp $
+ * $Id: linux_ioctl.c,v 1.29 1998/09/30 01:42:53 jfieber Exp $
*/
#include <sys/param.h>
@@ -683,6 +683,66 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args)
return copyout(&linux_line, (caddr_t)args->arg,
sizeof(int));
+ case LINUX_SNDCTL_SEQ_RESET:
+ args->cmd = SNDCTL_SEQ_RESET;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_SYNC:
+ args->cmd = SNDCTL_SEQ_SYNC;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SYNTH_INFO:
+ args->cmd = SNDCTL_SYNTH_INFO;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_CTRLRATE:
+ args->cmd = SNDCTL_SEQ_CTRLRATE;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_GETOUTCOUNT:
+ args->cmd = SNDCTL_SEQ_GETOUTCOUNT;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_GETINCOUNT:
+ args->cmd = SNDCTL_SEQ_GETINCOUNT;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_PERCMODE:
+ args->cmd = SNDCTL_SEQ_PERCMODE;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_FM_LOAD_INSTR:
+ args->cmd = SNDCTL_FM_LOAD_INSTR;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_TESTMIDI:
+ args->cmd = SNDCTL_SEQ_TESTMIDI;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_RESETSAMPLES:
+ args->cmd = SNDCTL_SEQ_RESETSAMPLES;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_NRSYNTHS:
+ args->cmd = SNDCTL_SEQ_NRSYNTHS;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_NRMIDIS:
+ args->cmd = SNDCTL_SEQ_NRMIDIS;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_MIDI_INFO:
+ args->cmd = SNDCTL_MIDI_INFO;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_TRESHOLD:
+ args->cmd = SNDCTL_SEQ_TRESHOLD;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SYNTH_MEMAVL:
+ args->cmd = SNDCTL_SYNTH_MEMAVL;
+ return ioctl(p, (struct ioctl_args *)args);
+
case LINUX_SNDCTL_DSP_GETOPTR :
args->cmd = SNDCTL_DSP_GETOPTR;
return ioctl(p, (struct ioctl_args *)args);
diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h
index db96f2e..691ed55 100644
--- a/sys/i386/linux/linux.h
+++ b/sys/i386/linux/linux.h
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: linux.h,v 1.22 1998/09/30 01:42:53 jfieber Exp $
+ * $Id: linux.h,v 1.23 1998/10/05 16:37:36 jfieber Exp $
*/
#ifndef _I386_LINUX_LINUX_H_
@@ -512,6 +512,21 @@ struct trapframe;
#define LINUX_IP_DROP_MEMBERSHIP 36
/* Sound system defines */
+#define LINUX_SNDCTL_SEQ_RESET 0x5100
+#define LINUX_SNDCTL_SEQ_SYNC 0x5101
+#define LINUX_SNDCTL_SYNTH_INFO 0x5102
+#define LINUX_SNDCTL_SEQ_CTRLRATE 0x5103
+#define LINUX_SNDCTL_SEQ_GETOUTCOUNT 0x5104
+#define LINUX_SNDCTL_SEQ_GETINCOUNT 0x5105
+#define LINUX_SNDCTL_SEQ_PERCMODE 0x5106
+#define LINUX_SNDCTL_FM_LOAD_INSTR 0x5107
+#define LINUX_SNDCTL_SEQ_TESTMIDI 0x5108
+#define LINUX_SNDCTL_SEQ_RESETSAMPLES 0x5109
+#define LINUX_SNDCTL_SEQ_NRSYNTHS 0x510A
+#define LINUX_SNDCTL_SEQ_NRMIDIS 0x510B
+#define LINUX_SNDCTL_MIDI_INFO 0x510C
+#define LINUX_SNDCTL_SEQ_TRESHOLD 0x510D
+#define LINUX_SNDCTL_SYNTH_MEMAVL 0x510E
#define LINUX_SNDCTL_DSP_RESET 0x5000
#define LINUX_SNDCTL_DSP_SYNC 0x5001
#define LINUX_SNDCTL_DSP_SPEED 0x5002
diff --git a/sys/i386/linux/linux_ioctl.c b/sys/i386/linux/linux_ioctl.c
index 26bb5ab..3010f74 100644
--- a/sys/i386/linux/linux_ioctl.c
+++ b/sys/i386/linux/linux_ioctl.c
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: linux_ioctl.c,v 1.28 1998/08/31 10:53:33 jkh Exp $
+ * $Id: linux_ioctl.c,v 1.29 1998/09/30 01:42:53 jfieber Exp $
*/
#include <sys/param.h>
@@ -683,6 +683,66 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args)
return copyout(&linux_line, (caddr_t)args->arg,
sizeof(int));
+ case LINUX_SNDCTL_SEQ_RESET:
+ args->cmd = SNDCTL_SEQ_RESET;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_SYNC:
+ args->cmd = SNDCTL_SEQ_SYNC;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SYNTH_INFO:
+ args->cmd = SNDCTL_SYNTH_INFO;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_CTRLRATE:
+ args->cmd = SNDCTL_SEQ_CTRLRATE;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_GETOUTCOUNT:
+ args->cmd = SNDCTL_SEQ_GETOUTCOUNT;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_GETINCOUNT:
+ args->cmd = SNDCTL_SEQ_GETINCOUNT;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_PERCMODE:
+ args->cmd = SNDCTL_SEQ_PERCMODE;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_FM_LOAD_INSTR:
+ args->cmd = SNDCTL_FM_LOAD_INSTR;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_TESTMIDI:
+ args->cmd = SNDCTL_SEQ_TESTMIDI;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_RESETSAMPLES:
+ args->cmd = SNDCTL_SEQ_RESETSAMPLES;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_NRSYNTHS:
+ args->cmd = SNDCTL_SEQ_NRSYNTHS;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_NRMIDIS:
+ args->cmd = SNDCTL_SEQ_NRMIDIS;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_MIDI_INFO:
+ args->cmd = SNDCTL_MIDI_INFO;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SEQ_TRESHOLD:
+ args->cmd = SNDCTL_SEQ_TRESHOLD;
+ return ioctl(p, (struct ioctl_args *)args);
+
+ case LINUX_SNDCTL_SYNTH_MEMAVL:
+ args->cmd = SNDCTL_SYNTH_MEMAVL;
+ return ioctl(p, (struct ioctl_args *)args);
+
case LINUX_SNDCTL_DSP_GETOPTR :
args->cmd = SNDCTL_DSP_GETOPTR;
return ioctl(p, (struct ioctl_args *)args);
OpenPOWER on IntegriCloud