Clean get_props().

- Make get_props() return AUDIO_PROP_{PLAYBACK,CAPTURE} properly.
  This eliminates need for audio.c to take care of such (old)
  drivers which don't return both of PLAYBACK and CAPTURE.
- All get_props() doesn't need to return AUDIO_PROP_MMAP.
  It is handled in the audio layer now.
This commit is contained in:
isaki 2019-06-08 08:02:36 +00:00
parent d1002cd7eb
commit ede47d01be
46 changed files with 178 additions and 211 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: aucc.c,v 1.45 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: aucc.c,v 1.46 2019/06/08 08:02:36 isaki Exp $ */
/*
* Copyright (c) 1999 Bernardo Innocenti
@ -46,7 +46,7 @@
#if NAUCC > 0
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: aucc.c,v 1.45 2019/05/08 13:40:14 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: aucc.c,v 1.46 2019/06/08 08:02:36 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -693,7 +693,8 @@ aucc_get_port(void *addr, mixer_ctrl_t *cp)
int
aucc_get_props(void *addr)
{
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: repulse.c,v 1.22 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: repulse.c,v 1.23 2019/06/08 08:02:36 isaki Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: repulse.c,v 1.22 2019/05/08 13:40:14 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: repulse.c,v 1.23 2019/06/08 08:02:36 isaki Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -438,7 +438,9 @@ rep_getdev(void *arg, struct audio_device *retp)
int
rep_get_props(void *v)
{
return AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
int

View File

@ -1,4 +1,4 @@
/* $NetBSD: toccata.c,v 1.19 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: toccata.c,v 1.20 2019/06/08 08:02:36 isaki Exp $ */
/*-
* Copyright (c) 1998, 1999, 2001, 2002 The NetBSD Foundation, Inc.
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: toccata.c,v 1.19 2019/05/08 13:40:14 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: toccata.c,v 1.20 2019/06/08 08:02:36 isaki Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -444,7 +444,8 @@ toccata_getdev(void *addr, struct audio_device *retp)
int
toccata_get_props(void *addr)
{
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: vidcaudio.c,v 1.58 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: vidcaudio.c,v 1.59 2019/06/08 08:02:36 isaki Exp $ */
/*
* Copyright (c) 1995 Melvin Tang-Richardson
@ -65,7 +65,7 @@
#include <sys/param.h> /* proc.h */
__KERNEL_RCSID(0, "$NetBSD: vidcaudio.c,v 1.58 2019/05/08 13:40:14 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: vidcaudio.c,v 1.59 2019/06/08 08:02:36 isaki Exp $");
#include <sys/audioio.h>
#include <sys/conf.h> /* autoconfig functions */
@ -487,7 +487,7 @@ static int
vidcaudio_get_props(void *addr)
{
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: sunxi_codec.c,v 1.6 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: sunxi_codec.c,v 1.7 2019/06/08 08:02:37 isaki Exp $ */
/*-
* Copyright (c) 2014-2017 Jared McNeill <jmcneill@invisible.ca>
@ -29,7 +29,7 @@
#include "opt_ddb.h"
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: sunxi_codec.c,v 1.6 2019/05/08 13:40:14 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: sunxi_codec.c,v 1.7 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@ -255,9 +255,9 @@ sunxi_codec_getdev(void *priv, struct audio_device *adev)
static int
sunxi_codec_get_props(void *priv)
{
return AUDIO_PROP_PLAYBACK|AUDIO_PROP_CAPTURE|
AUDIO_PROP_INDEPENDENT|AUDIO_PROP_MMAP|
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE|
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: sunxi_i2s.c,v 1.5 2019/06/06 23:19:07 jmcneill Exp $ */
/* $NetBSD: sunxi_i2s.c,v 1.6 2019/06/08 08:02:37 isaki Exp $ */
/*-
* Copyright (c) 2018 Jared McNeill <jmcneill@invisible.ca>
@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: sunxi_i2s.c,v 1.5 2019/06/06 23:19:07 jmcneill Exp $");
__KERNEL_RCSID(0, "$NetBSD: sunxi_i2s.c,v 1.6 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@ -296,8 +296,9 @@ sunxi_i2s_freem(void *priv, void *addr, size_t size)
static int
sunxi_i2s_get_props(void *priv)
{
return AUDIO_PROP_PLAYBACK|AUDIO_PROP_CAPTURE|
AUDIO_PROP_MMAP|AUDIO_PROP_FULLDUPLEX|AUDIO_PROP_INDEPENDENT;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX | AUDIO_PROP_INDEPENDENT;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: pxa2x0_ac97.c,v 1.16 2019/05/08 13:40:14 isaki Exp $ */
/* $NetBSD: pxa2x0_ac97.c,v 1.17 2019/06/08 08:02:37 isaki Exp $ */
/*
* Copyright (c) 2003, 2005 Wasabi Systems, Inc.
@ -705,7 +705,8 @@ static int
acu_get_props(void *arg)
{
return (AUDIO_PROP_MMAP|AUDIO_PROP_INDEPENDENT|AUDIO_PROP_FULLDUPLEX);
return (AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX);
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: vraiu.c,v 1.17 2019/05/08 13:40:15 isaki Exp $ */
/* $NetBSD: vraiu.c,v 1.18 2019/06/08 08:02:37 isaki Exp $ */
/*
* Copyright (c) 2001 HAMAJIMA Katsuomi. All rights reserved.
@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: vraiu.c,v 1.17 2019/05/08 13:40:15 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: vraiu.c,v 1.18 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -518,7 +518,7 @@ vraiu_get_props(void *self)
{
DPRINTFN(3, ("vraiu_get_props\n"));
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: harmony.c,v 1.6 2019/05/08 13:40:15 isaki Exp $ */
/* $NetBSD: harmony.c,v 1.7 2019/06/08 08:02:37 isaki Exp $ */
/* $OpenBSD: harmony.c,v 1.23 2004/02/13 21:28:19 mickey Exp $ */
@ -972,7 +972,8 @@ int
harmony_get_props(void *vsc)
{
return AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: awacs.c,v 1.47 2019/05/08 13:40:15 isaki Exp $ */
/* $NetBSD: awacs.c,v 1.48 2019/06/08 08:02:37 isaki Exp $ */
/*-
* Copyright (c) 2000 Tsubai Masanari. All rights reserved.
@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: awacs.c,v 1.47 2019/05/08 13:40:15 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: awacs.c,v 1.48 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/audioio.h>
@ -967,7 +967,9 @@ awacs_round_buffersize(void *h, int dir, size_t size)
static int
awacs_get_props(void *h)
{
return AUDIO_PROP_FULLDUPLEX /* | AUDIO_PROP_MMAP */;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: snapper.c,v 1.51 2019/05/16 23:39:37 macallan Exp $ */
/* $NetBSD: snapper.c,v 1.52 2019/06/08 08:02:37 isaki Exp $ */
/* Id: snapper.c,v 1.11 2002/10/31 17:42:13 tsubai Exp */
/* Id: i2s.c,v 1.12 2005/01/15 14:32:35 tsubai Exp */
@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: snapper.c,v 1.51 2019/05/16 23:39:37 macallan Exp $");
__KERNEL_RCSID(0, "$NetBSD: snapper.c,v 1.52 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/audioio.h>
@ -1242,7 +1242,9 @@ snapper_round_buffersize(void *h, int dir, size_t size)
static int
snapper_get_props(void *h)
{
return AUDIO_PROP_FULLDUPLEX /* | AUDIO_PROP_MMAP */;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: vs.c,v 1.51 2019/05/08 13:40:17 isaki Exp $ */
/* $NetBSD: vs.c,v 1.52 2019/06/08 08:02:37 isaki Exp $ */
/*
* Copyright (c) 2001 Tetsuya Isaki. All rights reserved.
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: vs.c,v 1.51 2019/05/08 13:40:17 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: vs.c,v 1.52 2019/06/08 08:02:37 isaki Exp $");
#include "audio.h"
#include "vs.h"
@ -664,7 +664,7 @@ vs_get_props(void *hdl)
{
DPRINTF(1, ("vs_get_props\n"));
return 0 /* | dependent | half duplex | no mmap */;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: zaudio.c,v 1.22 2019/05/08 13:40:17 isaki Exp $ */
/* $NetBSD: zaudio.c,v 1.23 2019/06/08 08:02:37 isaki Exp $ */
/* $OpenBSD: zaurus_audio.c,v 1.8 2005/08/18 13:23:02 robert Exp $ */
/*
@ -50,7 +50,7 @@
#include "opt_cputypes.h"
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: zaudio.c,v 1.22 2019/05/08 13:40:17 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: zaudio.c,v 1.23 2019/06/08 08:02:37 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -231,7 +231,7 @@ int
zaudio_get_props(void *hdl)
{
return AUDIO_PROP_MMAP;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: audio.c,v 1.11 2019/06/06 13:08:30 isaki Exp $ */
/* $NetBSD: audio.c,v 1.12 2019/06/08 08:02:37 isaki Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@ -142,7 +142,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: audio.c,v 1.11 2019/06/06 13:08:30 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: audio.c,v 1.12 2019/06/08 08:02:37 isaki Exp $");
#ifdef _KERNEL_OPT
#include "audio.h"
@ -7163,14 +7163,6 @@ audio_get_props(struct audio_softc *sc)
hw = sc->hw_if;
props = hw->get_props(sc->hw_hdl);
/*
* For historical reasons, if neither playback nor capture
* properties are reported, assume both are supported.
* XXX Ideally (all) hardware driver should be updated...
*/
if ((props & (AUDIO_PROP_PLAYBACK|AUDIO_PROP_CAPTURE)) == 0)
props |= (AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE);
/* MMAP is now supported by upper layer. */
props |= AUDIO_PROP_MMAP;

View File

@ -1,4 +1,4 @@
/* $NetBSD: btsco.c,v 1.40 2019/05/25 04:41:53 isaki Exp $ */
/* $NetBSD: btsco.c,v 1.41 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2006 Itronix Inc.
@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: btsco.c,v 1.40 2019/05/25 04:41:53 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: btsco.c,v 1.41 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/audioio.h>
@ -1009,7 +1009,8 @@ static int
btsco_get_props(void *hdl)
{
return AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: hdafg.c,v 1.17 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: hdafg.c,v 1.18 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2009 Precedence Technologies Ltd <support@precedence.co.uk>
@ -60,7 +60,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: hdafg.c,v 1.17 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: hdafg.c,v 1.18 2019/06/08 08:02:38 isaki Exp $");
#include <sys/types.h>
#include <sys/param.h>
@ -4210,7 +4210,7 @@ static int
hdafg_get_props(void *opaque)
{
struct hdaudio_audiodev *ad = opaque;
int props = AUDIO_PROP_MMAP;
int props = 0;
if (ad->ad_playback)
props |= AUDIO_PROP_PLAYBACK;

View File

@ -1,4 +1,4 @@
/* $NetBSD: am7930.c,v 1.58 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: am7930.c,v 1.59 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 1995 Rolf Grossmann
@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: am7930.c,v 1.58 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: am7930.c,v 1.59 2019/06/08 08:02:38 isaki Exp $");
#include "audio.h"
#if NAUDIO > 0
@ -333,7 +333,9 @@ am7930_halt_input(void *addr)
int
am7930_get_props(void *addr)
{
return AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
/*

View File

@ -1,4 +1,4 @@
/* $NetBSD: arcofi.c,v 1.2 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: arcofi.c,v 1.3 2019/06/08 08:02:38 isaki Exp $ */
/* $OpenBSD: arcofi.c,v 1.6 2013/05/15 08:29:24 ratchov Exp $ */
/*
@ -984,7 +984,7 @@ static int
arcofi_get_props(void *v)
{
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: cs4231.c,v 1.30 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: cs4231.c,v 1.31 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1998, 1999 The NetBSD Foundation, Inc.
@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: cs4231.c,v 1.30 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: cs4231.c,v 1.31 2019/06/08 08:02:38 isaki Exp $");
#include "audio.h"
#if NAUDIO > 0
@ -423,7 +423,8 @@ int
cs4231_get_props(void *addr)
{
return AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
int

View File

@ -1,4 +1,4 @@
/* $NetBSD: interwave.c,v 1.41 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: interwave.c,v 1.42 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 1997, 1999, 2008 The NetBSD Foundation, Inc.
@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: interwave.c,v 1.41 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: interwave.c,v 1.42 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -1452,7 +1452,7 @@ iw_get_props(void *addr)
struct iw_softc *sc;
sc = addr;
return AUDIO_PROP_MMAP |
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
(sc->sc_fullduplex ? AUDIO_PROP_FULLDUPLEX : 0);
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: tms320av110.c,v 1.26 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: tms320av110.c,v 1.27 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: tms320av110.c,v 1.26 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: tms320av110.c,v 1.27 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -319,7 +319,8 @@ tav_round_blocksize(void *hdl, int size, int mode, const audio_params_t *param)
int
tav_get_props(void *hdl)
{
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: ad1848_isa.c,v 1.39 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: ad1848_isa.c,v 1.40 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1999, 2008 The NetBSD Foundation, Inc.
@ -95,7 +95,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: ad1848_isa.c,v 1.39 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: ad1848_isa.c,v 1.40 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -783,6 +783,6 @@ ad1848_isa_get_props(void *addr)
struct ad1848_isa_softc *isc;
isc = addr;
return AUDIO_PROP_MMAP |
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
(isc->sc_playdrq != isc->sc_recdrq ? AUDIO_PROP_FULLDUPLEX : 0);
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: aria.c,v 1.40 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: aria.c,v 1.41 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1995, 1996, 1998 The NetBSD Foundation, Inc.
@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: aria.c,v 1.40 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: aria.c,v 1.41 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -543,7 +543,7 @@ aria_get_props(void *addr)
{
/* XXX This driver doesn't seem to be written as full duplex. */
return 0;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
int

View File

@ -1,4 +1,4 @@
/* $NetBSD: ess.c,v 1.85 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: ess.c,v 1.86 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright 1997
@ -66,7 +66,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: ess.c,v 1.85 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: ess.c,v 1.86 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -2177,14 +2177,15 @@ int
ess_1788_get_props(void *addr)
{
return AUDIO_PROP_MMAP;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
}
int
ess_1888_get_props(void *addr)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
void

View File

@ -1,4 +1,4 @@
/* $NetBSD: gus.c,v 1.116 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: gus.c,v 1.117 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1996, 1999, 2008 The NetBSD Foundation, Inc.
@ -88,7 +88,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: gus.c,v 1.116 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: gus.c,v 1.117 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -3620,7 +3620,7 @@ gus_get_props(void *addr)
struct gus_softc *sc;
sc = addr;
return AUDIO_PROP_MMAP |
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
(sc->sc_recdrq == sc->sc_playdrq ? 0 : AUDIO_PROP_FULLDUPLEX);
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: sbdsp.c,v 1.140 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: sbdsp.c,v 1.141 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1999, 2008 The NetBSD Foundation, Inc.
@ -74,7 +74,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: sbdsp.c,v 1.140 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: sbdsp.c,v 1.141 2019/06/08 08:02:38 isaki Exp $");
#include "midi.h"
#include "mpu.h"
@ -2480,7 +2480,7 @@ sbdsp_get_props(void *addr)
int prop;
sc = addr;
prop = AUDIO_PROP_MMAP;
prop = AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
/* Prior to the SB16, it has only one clock */
if (ISSB16CLASS(sc))

View File

@ -1,4 +1,4 @@
/* $NetBSD: auacer.c,v 1.37 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: auacer.c,v 1.38 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2004, 2008 The NetBSD Foundation, Inc.
@ -44,7 +44,7 @@
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: auacer.c,v 1.37 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: auacer.c,v 1.38 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -712,19 +712,9 @@ auacer_round_buffersize(void *v, int direction, size_t size)
static int
auacer_get_props(void *v)
{
struct auacer_softc *sc;
int props;
sc = v;
props = AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
/*
* Even if the codec is fixed-rate, set_param() succeeds for any sample
* rate because of aurateconv. Applications can't know what rate the
* device can process in the case of mmap().
*/
if (!AC97_IS_FIXED_RATE(sc->codec_if))
props |= AUDIO_PROP_MMAP;
return props;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: auich.c,v 1.156 2019/05/11 02:34:19 christos Exp $ */
/* $NetBSD: auich.c,v 1.157 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2000, 2004, 2005, 2008 The NetBSD Foundation, Inc.
@ -111,7 +111,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: auich.c,v 1.156 2019/05/11 02:34:19 christos Exp $");
__KERNEL_RCSID(0, "$NetBSD: auich.c,v 1.157 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -1206,20 +1206,9 @@ auich_round_buffersize(void *v, int direction, size_t size)
static int
auich_get_props(void *v)
{
struct auich_softc *sc;
int props;
props = AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
sc = v;
/*
* Even if the codec is fixed-rate, set_param() succeeds for any sample
* rate because of aurateconv. Applications can't know what rate the
* device can process in the case of mmap().
*/
if (!AC97_IS_FIXED_RATE(sc->codec_if) ||
sc->sc_codectype == AC97_CODEC_TYPE_MODEM)
props |= AUDIO_PROP_MMAP;
return props;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: auixp.c,v 1.46 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: auixp.c,v 1.47 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2004, 2005 Reinoud Zandijk <reinoud@netbsd.org>
@ -50,7 +50,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: auixp.c,v 1.46 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: auixp.c,v 1.47 2019/06/08 08:02:38 isaki Exp $");
#include <sys/types.h>
#include <sys/errno.h>
@ -559,7 +559,8 @@ static int
auixp_get_props(void *hdl)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: autri.c,v 1.57 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: autri.c,v 1.58 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2001 SOMEYA Yoshihiko and KUROSAWA Takahiro.
@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: autri.c,v 1.57 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: autri.c,v 1.58 2019/06/08 08:02:38 isaki Exp $");
#include "midi.h"
@ -1061,8 +1061,9 @@ autri_find_dma(struct autri_softc *sc, void *addr)
static int
autri_get_props(void *addr)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT |
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: auvia.c,v 1.83 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: auvia.c,v 1.84 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2000, 2008 The NetBSD Foundation, Inc.
@ -40,7 +40,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: auvia.c,v 1.83 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: auvia.c,v 1.84 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -971,19 +971,9 @@ auvia_free(void *addr, void *ptr, size_t size)
static int
auvia_get_props(void *addr)
{
struct auvia_softc *sc;
int props;
props = AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
sc = addr;
/*
* Even if the codec is fixed-rate, set_param() succeeds for any sample
* rate because of aurateconv. Applications can't know what rate the
* device can process in the case of mmap().
*/
if (!AC97_IS_FIXED_RATE(sc->codec_if))
props |= AUDIO_PROP_MMAP;
return props;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: azalia.c,v 1.87 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: azalia.c,v 1.88 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2005, 2008 The NetBSD Foundation, Inc.
@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: azalia.c,v 1.87 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: azalia.c,v 1.88 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/device.h>
@ -2275,7 +2275,9 @@ azalia_round_buffersize(void *v, int dir, size_t size)
static int
azalia_get_props(void *v)
{
return AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: cmpci.c,v 1.55 2019/05/12 13:40:19 maya Exp $ */
/* $NetBSD: cmpci.c,v 1.56 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2000, 2001, 2008 The NetBSD Foundation, Inc.
@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: cmpci.c,v 1.55 2019/05/12 13:40:19 maya Exp $");
__KERNEL_RCSID(0, "$NetBSD: cmpci.c,v 1.56 2019/06/08 08:02:38 isaki Exp $");
#if defined(AUDIO_DEBUG) || defined(DEBUG)
#define DPRINTF(x) if (cmpcidebug) printf x
@ -1559,7 +1559,8 @@ static int
cmpci_get_props(void *handle)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: cs428x.c,v 1.19 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: cs428x.c,v 1.20 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2000 Tatoku Ogaito. All rights reserved.
@ -33,7 +33,7 @@
/* Common functions for CS4280 and CS4281 */
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: cs428x.c,v 1.19 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: cs428x.c,v 1.20 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -166,14 +166,9 @@ cs428x_round_buffersize(void *addr, int direction,
int
cs428x_get_props(void *addr)
{
int retval;
retval = AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
#ifdef MMAP_READY
/* How can I mmap ? */
retval |= AUDIO_PROP_MMAP;
#endif
return retval;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
/* AC97 */

View File

@ -1,4 +1,4 @@
/* $NetBSD: eap.c,v 1.100 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: eap.c,v 1.101 2019/06/08 08:02:38 isaki Exp $ */
/* $OpenBSD: eap.c,v 1.6 1999/10/05 19:24:42 csapuntz Exp $ */
/*
@ -56,7 +56,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: eap.c,v 1.100 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: eap.c,v 1.101 2019/06/08 08:02:38 isaki Exp $");
#include "midi.h"
#include "joy_eap.h"
@ -1647,8 +1647,8 @@ eap_get_props(void *addr)
ei = addr;
sc = device_private(ei->parent);
prop = AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT |
AUDIO_PROP_FULLDUPLEX;
prop = AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
/* The es1370 only has one clock, so it's not independent */
if (!sc->sc_1371 && ei->index == EAP_DAC2)
prop &= ~AUDIO_PROP_INDEPENDENT;

View File

@ -1,4 +1,4 @@
/* $NetBSD: emuxki.c,v 1.69 2019/05/29 13:12:59 isaki Exp $ */
/* $NetBSD: emuxki.c,v 1.70 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2001, 2007 The NetBSD Foundation, Inc.
@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: emuxki.c,v 1.69 2019/05/29 13:12:59 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: emuxki.c,v 1.70 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/device.h>
@ -1234,7 +1234,8 @@ static int
emuxki_get_props(void *hdl)
{
return AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: esa.c,v 1.64 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: esa.c,v 1.65 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2001-2008 Jared D. McNeill <jmcneill@invisible.ca>
@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: esa.c,v 1.64 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: esa.c,v 1.65 2019/06/08 08:02:38 isaki Exp $");
#include <sys/types.h>
#include <sys/errno.h>
@ -475,7 +475,8 @@ static int
esa_get_props(void *hdl)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: esm.c,v 1.62 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: esm.c,v 1.63 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2002, 2003 Matt Fredette
@ -66,7 +66,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: esm.c,v 1.62 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: esm.c,v 1.63 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -1304,7 +1304,8 @@ int
esm_get_props(void *sc)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: eso.c,v 1.70 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: eso.c,v 1.71 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@ -62,7 +62,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: eso.c,v 1.70 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: eso.c,v 1.71 2019/06/08 08:02:38 isaki Exp $");
#include "mpu.h"
@ -1625,8 +1625,8 @@ static int
eso_get_props(void *hdl)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT |
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: fms.c,v 1.46 2019/05/08 13:40:18 isaki Exp $ */
/* $NetBSD: fms.c,v 1.47 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 1999, 2008 The NetBSD Foundation, Inc.
@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: fms.c,v 1.46 2019/05/08 13:40:18 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: fms.c,v 1.47 2019/06/08 08:02:38 isaki Exp $");
#include "mpu.h"
@ -665,8 +665,9 @@ fms_free(void *addr, void *ptr, size_t size)
static int
fms_get_props(void *addr)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT |
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: gcscaudio.c,v 1.17 2019/05/08 13:40:19 isaki Exp $ */
/* $NetBSD: gcscaudio.c,v 1.18 2019/06/08 08:02:38 isaki Exp $ */
/*-
* Copyright (c) 2008 SHIMIZU Ryo <ryo@nerv.org>
@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: gcscaudio.c,v 1.17 2019/05/08 13:40:19 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: gcscaudio.c,v 1.18 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -684,19 +684,9 @@ gcscaudio_round_buffersize(void *addr, int direction, size_t size)
static int
gcscaudio_get_props(void *addr)
{
struct gcscaudio_softc *sc;
int props;
sc = (struct gcscaudio_softc *)addr;
props = AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
/*
* Even if the codec is fixed-rate, set_param() succeeds for any sample
* rate because of aurateconv. Applications can't know what rate the
* device can process in the case of mmap().
*/
if (!AC97_IS_FIXED_RATE(sc->codec_if))
props |= AUDIO_PROP_MMAP;
return props;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: neo.c,v 1.53 2019/05/08 13:40:19 isaki Exp $ */
/* $NetBSD: neo.c,v 1.54 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 1999 Cameron Grant <gandalf@vilnya.demon.co.uk>
@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: neo.c,v 1.53 2019/05/08 13:40:19 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: neo.c,v 1.54 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -948,8 +948,8 @@ static int
neo_get_props(void *addr)
{
return AUDIO_PROP_INDEPENDENT | AUDIO_PROP_MMAP |
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: sv.c,v 1.55 2019/05/08 13:40:19 isaki Exp $ */
/* $NetBSD: sv.c,v 1.56 2019/06/08 08:02:38 isaki Exp $ */
/* $OpenBSD: sv.c,v 1.2 1998/07/13 01:50:15 csapuntz Exp $ */
/*
@ -67,7 +67,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: sv.c,v 1.55 2019/05/08 13:40:19 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: sv.c,v 1.56 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -1352,7 +1352,9 @@ sv_free(void *addr, void *ptr, size_t size)
static int
sv_get_props(void *addr)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: yds.c,v 1.63 2019/05/25 04:25:30 isaki Exp $ */
/* $NetBSD: yds.c,v 1.64 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2000, 2001 Kazuki Sakamoto and Minoura Makoto.
@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: yds.c,v 1.63 2019/05/25 04:25:30 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: yds.c,v 1.64 2019/06/08 08:02:38 isaki Exp $");
#include "mpu.h"
@ -1728,8 +1728,8 @@ static int
yds_get_props(void *addr)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_INDEPENDENT |
AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_INDEPENDENT | AUDIO_PROP_FULLDUPLEX;
}
static void

View File

@ -1,4 +1,4 @@
/* $NetBSD: dbri.c,v 1.40 2019/05/08 13:40:19 isaki Exp $ */
/* $NetBSD: dbri.c,v 1.41 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (C) 1997 Rudolf Koenig (rfkoenig@immd4.informatik.uni-erlangen.de)
@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: dbri.c,v 1.40 2019/05/08 13:40:19 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: dbri.c,v 1.41 2019/06/08 08:02:38 isaki Exp $");
#include "audio.h"
#if NAUDIO > 0
@ -1856,7 +1856,8 @@ static int
dbri_get_props(void *hdl)
{
return AUDIO_PROP_MMAP | AUDIO_PROP_FULLDUPLEX;
return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE |
AUDIO_PROP_FULLDUPLEX;
}
static int

View File

@ -1,4 +1,4 @@
/* $NetBSD: bba.c,v 1.43 2019/05/08 13:40:19 isaki Exp $ */
/* $NetBSD: bba.c,v 1.44 2019/06/08 08:02:38 isaki Exp $ */
/*
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@ -29,7 +29,7 @@
/* maxine/alpha baseboard audio (bba) */
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: bba.c,v 1.43 2019/05/08 13:40:19 isaki Exp $");
__KERNEL_RCSID(0, "$NetBSD: bba.c,v 1.44 2019/06/08 08:02:38 isaki Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -138,7 +138,6 @@ static int bba_getdev(void *, struct audio_device *);
static void *bba_allocm(void *, int, size_t);
static void bba_freem(void *, void *, size_t);
static size_t bba_round_buffersize(void *, int, size_t);
static int bba_get_props(void *);
static int bba_trigger_output(void *, void *, void *, int,
void (*)(void *), void *,
const audio_params_t *);
@ -164,7 +163,7 @@ static const struct audio_hw_if sa_hw_if = {
.allocm = bba_allocm, /* md */
.freem = bba_freem, /* md */
.round_buffersize = bba_round_buffersize, /* md */
.get_props = bba_get_props,
.get_props = am7930_get_props,
.trigger_output = bba_trigger_output, /* md */
.trigger_input = bba_trigger_input, /* md */
.get_locks = bba_get_locks,
@ -618,13 +617,6 @@ bba_intr(void *addr)
return 0;
}
static int
bba_get_props(void *addr)
{
return AUDIO_PROP_MMAP | am7930_get_props(addr);
}
static int
bba_query_format(void *addr, audio_format_query_t *afp)
{