lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 18 Oct 2007 17:24:46 +0200
From:	Maxim Levitsky <maximlevitsky@...il.com>
To:	Takashi Iwai <tiwai@...e.de>
Cc:	Thomas Meyer <thomas@...3r.de>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	alsa-devel@...a-project.org
Subject: Re: hda-intel: no soundcard with current linus' git tree

On Thursday 18 October 2007 15:49:22 Takashi Iwai wrote:
> At Thu, 18 Oct 2007 16:21:59 +0200,
> Maxim Levitsky wrote:
> > 
> > On Thursday 18 October 2007 07:57:27 Takashi Iwai wrote:
> > > At Thu, 18 Oct 2007 03:53:08 +0200,
> > > Maxim Levitsky wrote:
> > > > 
> > > > From 0824b077b75c19253b45c5a455775c331acd54ee Mon Sep 17 00:00:00 2001
> > > > From: Maxim Levitsky <maximlevitsky@...il.com>
> > > > Date: Thu, 18 Oct 2007 03:35:37 +0200
> > > > Subject: [PATCH] [HDA] [STAC] Since there is now a master volume control,
> > > > don't call the headphone output "Master", it isn't strictly correct anyway
> > > 
> > > I thought stac925x has no volume knob, so "Master" should be still
> > > applied for this codec?
> > 
> > Yes, you are right, but stac925x has only one DAC, and thus if it is
> > connected to any line-out, it will be 
> > 'Front', but if it is connected to 'headphones' only, then why not
> > to call it 'Headphone' 
> 
> The point is that apps usually require a "Master" volume.  If it's the
> single volume control, it's better to call it master for convenience.
And most STACs didn't have one till I added this volumeknob...


> 
> 
> > STAC  9200 has no volumeknob too, but it is handled seperartly
> 
> Yes, 9200 doesn't call stac92xx_auto_create_hp_ctls(), so it's not
> affected.
> 
> > STAC  9202 and 9250 has no volumeknob too, but as I said they have
> > just one DAC again 
> 
> Both are handled as patch_stac925x.  That's what I meant.  With your
> patch, there will be no master any more.
> 
> So, how about the patch below?
> 
> 
> Takashi
> 
> diff -r fb9512ce24e0 pci/hda/patch_sigmatel.c
> --- a/pci/hda/patch_sigmatel.c	Thu Oct 18 10:48:43 2007 +0200
> +++ b/pci/hda/patch_sigmatel.c	Thu Oct 18 16:36:35 2007 +0200
> @@ -111,6 +111,7 @@ struct sigmatel_spec {
>  	unsigned int alt_switch: 1;
>  	unsigned int hp_detect: 1;
>  	unsigned int gpio_mute: 1;
> +	unsigned int no_vol_knob :1;
>  
>  	unsigned int gpio_mask, gpio_data;
>  
> @@ -1930,7 +1931,8 @@ static int stac92xx_auto_create_hp_ctls(
>  	}
>  	if (spec->multiout.hp_nid) {
>  		const char *pfx;
> -		if (old_num_dacs == spec->multiout.num_dacs)
> +		if (old_num_dacs == spec->multiout.num_dacs &&
> +		    spec->no_vol_knob)
>  			pfx = "Master";
>  		else
>  			pfx = "Headphone";
> @@ -2487,6 +2489,7 @@ static int patch_stac9200(struct hda_cod
>  	codec->spec = spec;
>  	spec->num_pins = ARRAY_SIZE(stac9200_pin_nids);
>  	spec->pin_nids = stac9200_pin_nids;
> +	spec->no_vol_knob = 1;
>  	spec->board_config = snd_hda_check_board_config(codec, STAC_9200_MODELS,
>  							stac9200_models,
>  							stac9200_cfg_tbl);
> @@ -2541,6 +2544,7 @@ static int patch_stac925x(struct hda_cod
>  	codec->spec = spec;
>  	spec->num_pins = ARRAY_SIZE(stac925x_pin_nids);
>  	spec->pin_nids = stac925x_pin_nids;
> +	spec->no_vol_knob = 1;
>  	spec->board_config = snd_hda_check_board_config(codec, STAC_925x_MODELS,
>  							stac925x_models,


Perfect.
This will ensure the same behavior, as was without the volumeknob.

Best regards,
	Maxim Levitsky	

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ