ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256
authorThomas Hebb <tommyhebb@gmail.com>
Mon, 30 Mar 2020 16:09:37 +0000 (12:09 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Apr 2020 06:00:35 +0000 (08:00 +0200)
commitf47413b98c0a6378760205657bfff1da5e8da11f
tree4c9b985518c1f706a78681d20b375685b854de50
parentb53356c9939bd672040a3aaa6e201d21cc06e6ca
ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256

commit f128090491c3f5aacef91a863f8c52abf869c436 upstream.

This codec (among others) has a hidden set of audio routes, apparently
designed to allow PC Beep output without a mixer widget on the output
path, which are controlled by an undocumented Realtek vendor register.
The default configuration of these routes means that certain inputs
aren't accessible, necessitating driver control of the register.
However, Realtek has provided no documentation of the register, instead
opting to fix issues by providing magic numbers, most of which have been
at least somewhat erroneous. These magic numbers then get copied by
others into model-specific fixups, leading to a fragmented and buggy set
of configurations.

To get out of this situation, I've reverse engineered the register by
flipping bits and observing how the codec's behavior changes. This
commit documents my findings. It does not change any code.

Cc: stable@vger.kernel.org
Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
Link: https://lore.kernel.org/r/bd69dfdeaf40ff31c4b7b797c829bb320031739c.1585584498.git.tommyhebb@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/sound/hd-audio/index.rst
Documentation/sound/hd-audio/realtek-pc-beep.rst [new file with mode: 0644]