[alsa-devel] alc295_fixup_chromebook function

Takashi Iwai tiwai at suse.de
Mon Apr 1 09:37:25 CEST 2019


On Mon, 01 Apr 2019 09:29:35 +0200,
Kailang wrote:
> 
> Hi Takashi,
> 
> You applied below patch.
> https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git/commit/?h=for-next&id=c8a9afa632f0fd45731d3353525faf1fdb362c89
> 
> But I think ALC225_FIXUP_HEADSET_JACK will applicate for enable for headset button.
> It was not only use for Chrome OS.
> So, ALC225_FIXUP_HEADSET_JACK and alc295_fixup_chromebook separation were be better.
> 
> Intel test https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git/commit/?h=for-next&id=10f5b1b85ed10a80d45bc2db450e65bd792efaad this patch.
> Mic JD was also not stable. (I don't know why. It passed with Ubuntu OS.)
> It need to change to initial state would be better. (original was HDA_FIXUP_ACT_PRE_PROBE)
> 
> +static void alc295_fixup_chromebook(struct hda_codec *codec,
> +				    const struct hda_fixup *fix, int action)
> +{
> +
> +	switch (action) {
> +	case HDA_FIXUP_ACT_INIT:
> +		switch (codec->core.vendor_id) {
> +		case 0x10ec0295:
> +			alc_update_coef_idx(codec, 0x4a, 0x8000, 1 << 15); /* Reset HP JD */
> +			alc_update_coef_idx(codec, 0x4a, 0x8000, 0 << 15);
> +			break;
> +		case 0x10ec0236:
> +			alc_update_coef_idx(codec, 0x1b, 0x8000, 1 << 15); /* Reset HP JD */
> +			alc_update_coef_idx(codec, 0x1b, 0x8000, 0 << 15);
> +			break;
> +		}
> +		break;
> +	}
> +}
> 
> How could I create a fix patch for this?

The Chromebook quirk name was chosen so that the quirk implementation
won't be used by any random user as a generic solution.  If it can be
used for real solutions, feel free to rename / split the quirk for
easy adaption.  I have no big preference, but would like to judge from
the actual patches.


thanks,

Takashi


More information about the Alsa-devel mailing list