diff options
author | ahasty <ahasty@FreeBSD.org> | 1997-11-17 04:00:32 +0000 |
---|---|---|
committer | ahasty <ahasty@FreeBSD.org> | 1997-11-17 04:00:32 +0000 |
commit | 1938134234369ba5ecb3f8f159ed9615a77afd3b (patch) | |
tree | 8f878bbe79c4cc70f2cefe3c78b3594886d06619 /sys | |
parent | b65c2a6c140a57a7a3bb995992df0625f0fa9ce3 (diff) | |
download | FreeBSD-src-1938134234369ba5ecb3f8f159ed9615a77afd3b.zip FreeBSD-src-1938134234369ba5ecb3f8f159ed9615a77afd3b.tar.gz |
Added support for linux sound ioctls:
LINUX_SNDCTL_DSP_GETOPTR
LINUX_SNDCTL_DSP_GETIPTR
LINUX_SNDCTL_DSP_SETTRIGGER
LINUX_SNDCTL_DSP_GETCAPS
With this rev level the linux realaudio player 5 and xquake should work.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/alpha/linux/linux.h | 7 | ||||
-rw-r--r-- | sys/compat/linux/linux_ioctl.c | 20 | ||||
-rw-r--r-- | sys/i386/linux/linux.h | 7 | ||||
-rw-r--r-- | sys/i386/linux/linux_ioctl.c | 20 |
4 files changed, 48 insertions, 6 deletions
diff --git a/sys/alpha/linux/linux.h b/sys/alpha/linux/linux.h index 2148aa5..ab05ee2 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.16 1997/06/02 06:45:17 msmith Exp $ + * $Id: linux.h,v 1.17 1997/10/28 10:49:57 kato Exp $ */ #ifndef _I386_LINUX_LINUX_H_ @@ -500,6 +500,11 @@ struct trapframe; #define LINUX_SNDCTL_DSP_GETOSPACE 0x500C #define LINUX_SNDCTL_DSP_GETISPACE 0x500D #define LINUX_SNDCTL_DSP_NONBLOCK 0x500E +#define LINUX_SNDCTL_DSP_GETCAPS 0x500F +#define LINUX_SNDCTL_DSP_GETTRIGGER 0x5010 +#define LINUX_SNDCTL_DSP_SETTRIGGER 0x5010 +#define LINUX_SNDCTL_DSP_GETIPTR 0x5011 +#define LINUX_SNDCTL_DSP_GETOPTR 0x5012 #define LINUX_SOUND_MIXER_WRITE_VOLUME 0x4d00 #define LINUX_SOUND_MIXER_WRITE_BASS 0x4d01 #define LINUX_SOUND_MIXER_WRITE_TREBLE 0x4d02 diff --git a/sys/compat/linux/linux_ioctl.c b/sys/compat/linux/linux_ioctl.c index 6993144..aa9e844 100644 --- a/sys/compat/linux/linux_ioctl.c +++ b/sys/compat/linux/linux_ioctl.c @@ -1,4 +1,4 @@ -/*- +/* * Copyright (c) 1994-1995 Søren Schmidt * All rights reserved. * @@ -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.20 1997/07/20 16:05:59 bde Exp $ + * $Id: linux_ioctl.c,v 1.21 1997/11/06 19:28:55 phk Exp $ */ #include <sys/param.h> @@ -662,6 +662,22 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args) return copyout(&linux_line, (caddr_t)args->arg, sizeof(int)); + case LINUX_SNDCTL_DSP_GETOPTR : + args->cmd = SNDCTL_DSP_GETOPTR; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_GETIPTR : + args->cmd = SNDCTL_DSP_GETIPTR; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_SETTRIGGER: + args->cmd = SNDCTL_DSP_SETTRIGGER; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_GETCAPS: + args->cmd = SNDCTL_DSP_GETCAPS; + return ioctl(p, (struct ioctl_args *)args); + case LINUX_SNDCTL_DSP_RESET: args->cmd = SNDCTL_DSP_RESET; return ioctl(p, (struct ioctl_args *)args); diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 2148aa5..ab05ee2 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.16 1997/06/02 06:45:17 msmith Exp $ + * $Id: linux.h,v 1.17 1997/10/28 10:49:57 kato Exp $ */ #ifndef _I386_LINUX_LINUX_H_ @@ -500,6 +500,11 @@ struct trapframe; #define LINUX_SNDCTL_DSP_GETOSPACE 0x500C #define LINUX_SNDCTL_DSP_GETISPACE 0x500D #define LINUX_SNDCTL_DSP_NONBLOCK 0x500E +#define LINUX_SNDCTL_DSP_GETCAPS 0x500F +#define LINUX_SNDCTL_DSP_GETTRIGGER 0x5010 +#define LINUX_SNDCTL_DSP_SETTRIGGER 0x5010 +#define LINUX_SNDCTL_DSP_GETIPTR 0x5011 +#define LINUX_SNDCTL_DSP_GETOPTR 0x5012 #define LINUX_SOUND_MIXER_WRITE_VOLUME 0x4d00 #define LINUX_SOUND_MIXER_WRITE_BASS 0x4d01 #define LINUX_SOUND_MIXER_WRITE_TREBLE 0x4d02 diff --git a/sys/i386/linux/linux_ioctl.c b/sys/i386/linux/linux_ioctl.c index 6993144..aa9e844 100644 --- a/sys/i386/linux/linux_ioctl.c +++ b/sys/i386/linux/linux_ioctl.c @@ -1,4 +1,4 @@ -/*- +/* * Copyright (c) 1994-1995 Søren Schmidt * All rights reserved. * @@ -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.20 1997/07/20 16:05:59 bde Exp $ + * $Id: linux_ioctl.c,v 1.21 1997/11/06 19:28:55 phk Exp $ */ #include <sys/param.h> @@ -662,6 +662,22 @@ linux_ioctl(struct proc *p, struct linux_ioctl_args *args) return copyout(&linux_line, (caddr_t)args->arg, sizeof(int)); + case LINUX_SNDCTL_DSP_GETOPTR : + args->cmd = SNDCTL_DSP_GETOPTR; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_GETIPTR : + args->cmd = SNDCTL_DSP_GETIPTR; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_SETTRIGGER: + args->cmd = SNDCTL_DSP_SETTRIGGER; + return ioctl(p, (struct ioctl_args *)args); + + case LINUX_SNDCTL_DSP_GETCAPS: + args->cmd = SNDCTL_DSP_GETCAPS; + return ioctl(p, (struct ioctl_args *)args); + case LINUX_SNDCTL_DSP_RESET: args->cmd = SNDCTL_DSP_RESET; return ioctl(p, (struct ioctl_args *)args); |