NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/51703: audio fails to attach if hardware can't do CD quality



>Number:         51703
>Category:       kern
>Synopsis:       audio fails to attach if hardware can't do CD quality
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Dec 10 18:40:00 +0000 2016
>Originator:     Martin Husemann
>Release:        NetBSD 7.99.44
>Organization:
The NetBSD Foundation, Inc.
>Environment:
System: NetBSD alien-from-alpha-centauri 7.99.44 NetBSD 7.99.44 (GENERIC-$Revision: 1.373 $) #45: Sat Dec 10 18:31:50 CET 2016 martin%martins.aprisoft.de@localhost:/ssd/src/sys/arch/alpha/compile/GENERIC alpha
Architecture: alpha
Machine: alpha
>Description:

The new audio mixing code requires the hardware to do 44100 HZ, 16 bit two
channel output. If that is not supported, audio attach fails in
audiosetinfo() after audio_set_params() failed with EINVAL.

This affects at least everything using sys/dev/ic/am7930.c as a backend,
maybe others as well.

The am7930_set_params() functions starts like this:

        if ((usemode & AUMODE_PLAY) == AUMODE_PLAY) {
                if (p->sample_rate < 7500 || p->sample_rate > 8500 ||
                        p->encoding != AUDIO_ENCODING_ULAW ||
                        p->precision != 8 ||
                        p->channels != 1)
                                return EINVAL;

>How-To-Repeat:

Boot -current on a vax station or DEC 3000; source code inspection.

>Fix:
Do not fail audio attach completely when the normalized output channel can not
be set, drop software mixing capabilities in this case?



Home | Main Index | Thread Index | Old Index