Subject: Re: AC97 quirks?
To: Peter Seebach <seebs@plethora.net>
From: Jared D. McNeill <jmcneill@invisible.ca>
List: current-users
Date: 07/04/2002 06:57:58
On Thu, 4 Jul 2002, Peter Seebach wrote:
> It looks like the recent discussion of the non-functionality of the CT5880
> (SoundBlaster PCI of some sort) card highlights an issue:  There's no quirk
> handling in ac97.c, so far as I can tell.  The corresponding file in Linux
> appears to have a set of hooks of some sort for modeling the inevitable quirks
> and incompatibilities... which, it appears, is what's necessary to handle that
> codec.

At least two quirks are handled. esa(4) uses AC97_HOST_SWAPPED_CHANNELS,
for example.

From sys/dev/ic/ac97var.h:

  enum ac97_host_flags {
          AC97_HOST_DONT_READ = 0x1,
          AC97_HOST_SWAPPED_CHANNELS = 0x2        /* l/r is reversed */
  };

I think OpenBSD has another one similar to 'DONT_READ', but more
aggressive.

Are there any other quirks you have in mind?

Cheers,
Jared

-
Jared D. McNeill    "Everything that can be invented has been invented."
http://www.NetBSD.org/               -- Charles H. Duell, Commissioner,
``Of course it runs NetBSD!''           U.S. Office of Patents, 1899