CVSROOT:        /cvs
Module name:    src
Changes by:     k...@cvs.openbsd.org    2022/10/28 08:55:46

Modified files:
        sys/dev/isa    : ad1848.c ad1848var.h ess.c gus.c gusvar.h pas.c 
                         sb.c sbdsp.c sbdspvar.h 

Log message:
Replace audio(9) get_props() with duplex check in open() in partial duplex 
drivers

Make drivers which do *not* adverise AUDIO_PROP_FULLDPLEX return ENXIO
in their open() if full-duplex mode was requested.

This way, sys/dev/audio.c:audio_open() will fail immediately rather than
later through the to-be-removed get_props() check.

This is the first round for drivers with logic in their get_props(), i.e.
those that only support full-duplex mode for specific hardware:

ess(4), gus(4), pas(4) and sb(4)

All of these are i386/GENERIC only and share code through
sys/dev/isa/{ad1848,sbdsp}{.c,var.h} which are not used by any other kernel.

i386/GENERIC.MP builds and boots with this diff.
OK ratchov miod

Reply via email to