[alsa-devel] [PATCH] hda-emu: Fixup ALC268 input amp on Beep node
Takashi Iwai
tiwai at suse.de
Thu Aug 16 14:14:16 CEST 2012
At Thu, 16 Aug 2012 13:55:39 +0200,
David Henningsson wrote:
>
> According to the ALC268 datasheet, there is actually an input amplifier
> on node 0x1d, even though this is not exposed in the codec proc file.
>
> Signed-off-by: David Henningsson <david.henningsson at canonical.com>
Thanks, applied (after sorting the fixup_list item in the order of
codec id numbers).
Takashi
> ---
> hda-spec.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> Relevant alsa info: alc268-toshiba-tecra-s11-m11--nvidia--ccert-201002-5346
>
> diff --git a/hda-spec.c b/hda-spec.c
> index f1b03b4..dd43ee9 100644
> --- a/hda-spec.c
> +++ b/hda-spec.c
> @@ -386,6 +386,20 @@ static void fixup_via_mixer(struct xhda_codec *codec)
> node->node[node->num_nodes++] = 0x08;
> }
>
> +static void fixup_alc268_beep(struct xhda_codec *codec)
> +{
> + struct xhda_node *node = find_node(codec, 0x1d);
> + if (!node)
> + return;
> + node->wcaps |= (1 << 1); /* AMP-in present */
> +
> + node->amp_in_caps.ofs = 0x0c;
> + node->amp_in_caps.nsteps = 0x0c;
> + node->amp_in_caps.stepsize = 0x07;
> + node->amp_in_caps.mute = 0;
> + node->amp_in_caps.override = 1;
> +}
> +
> struct fixup_list {
> unsigned int vendor_id;
> void (*func)(struct xhda_codec *);
> @@ -397,6 +411,7 @@ static struct fixup_list fixups[] = {
> { 0x11060438, fixup_via_mixer },
> { 0x11064438, fixup_via_mixer },
> { 0x11060448, fixup_via_mixer },
> + { 0x10ec0268, fixup_alc268_beep },
> { }
> };
>
> --
> 1.7.9.5
>
More information about the Alsa-devel
mailing list