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]
Message-ID: <87pm2zkxzl.wl-tiwai@suse.de>
Date:   Sun, 03 Sep 2023 18:44:30 +0200
From:   Takashi Iwai <tiwai@...e.de>
To:     Shenghao Ding <shenghao-ding@...com>
Cc:     <robh+dt@...nel.org>, <andriy.shevchenko@...ux.intel.com>,
        <lgirdwood@...il.com>, <perex@...ex.cz>,
        <pierre-louis.bossart@...ux.intel.com>, <kevin-lu@...com>,
        <13916275206@....com>, <alsa-devel@...a-project.org>,
        <linux-kernel@...r.kernel.org>, <liam.r.girdwood@...el.com>,
        <mengdong.lin@...el.com>, <baojun.xu@...com>,
        <thomas.gfeller@...rop.com>, <peeyush@...com>, <navada@...com>,
        <broonie@...nel.org>, <gentuser@...il.com>
Subject: Re: [PATCH v1 2/2] ALSA: hda/tas2781: Update tas2781 HDA driver

On Sun, 03 Sep 2023 18:33:34 +0200,
Takashi Iwai wrote:
> 
> On Sun, 03 Sep 2023 16:37:58 +0200,
> Shenghao Ding wrote:
> > 
> > Support ACPI_ID both TXNW2781 and TIAS2781, update dsp/bypass mode
> > switching in tasdevice_program_put.
> 
> Again, if you change multiple things, split to individual patches.

Also, the support of two IDs can be unified to a single patch for
changing both files.

A patch isn't necessarily split per file; instead, it's split per
logic.  If applying the changes to multiple files at the same time
makes more sense, those should be put in the same patch.


thanks,

Takashi


> 
> 
> thanks,
> 
> Takashi
> 
> 
> > 
> > Signed-off-by: Shenghao Ding <shenghao-ding@...com>
> > 
> > ---
> > Changes in v1:
> >  - Add comment on dsp/bypass mode in tasdevice_program_put and
> >    tasdevice_info_programs
> >  - TIAS2781 has been used by our customers, see following dstd.dsl. We
> >    have discussed this with them, they requested TIAS2781 must be
> >    supported for the laptops already released to market, their new laptop
> >    can switch to TXNW2781
> >    Name (_HID, "TIAS2781")  // _HID: Hardware ID
> >    Name (_UID, Zero)  // _UID: Unique ID
> >    Method (_SUB, 0, NotSerialized)  // _SUB: Subsystem ID
> >    {
> >        If ((SPID == Zero))
> >        {
> >           Return ("17AA3886")
> >        }
> > 
> >        If ((SPID == One))
> >        {
> >            Return ("17AA3884")
> >        }
> >    }
> > ---
> >  sound/pci/hda/tas2781_hda_i2c.c | 15 ++++++++++++---
> >  1 file changed, 12 insertions(+), 3 deletions(-)
> > 
> > diff --git a/sound/pci/hda/tas2781_hda_i2c.c b/sound/pci/hda/tas2781_hda_i2c.c
> > index fb80280293..5250d300a2 100644
> > --- a/sound/pci/hda/tas2781_hda_i2c.c
> > +++ b/sound/pci/hda/tas2781_hda_i2c.c
> > @@ -199,8 +199,11 @@ static int tasdevice_info_programs(struct snd_kcontrol *kcontrol,
> >  
> >  	uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
> >  	uinfo->count = 1;
> > +	/* 0:			dsp mode
> > +	 * non-zero:	bypass mode
> > +	 */
> >  	uinfo->value.integer.min = 0;
> > -	uinfo->value.integer.max = tas_fw->nr_programs - 1;
> > +	uinfo->value.integer.max = tas_fw->nr_programs;
> >  
> >  	return 0;
> >  }
> > @@ -238,7 +241,10 @@ static int tasdevice_program_put(struct snd_kcontrol *kcontrol,
> >  	int max = tas_fw->nr_programs - 1;
> >  	int val, ret = 0;
> >  
> > -	val = clamp(nr_program, 0, max);
> > +	/* 0:			dsp mode
> > +	 * non-zero:	bypass mode
> > +	 */
> > +	val = (nr_program) ? max : 0;
> >  
> >  	if (tas_priv->cur_prog != val) {
> >  		tas_priv->cur_prog = val;
> > @@ -647,7 +653,9 @@ static int tas2781_hda_i2c_probe(struct i2c_client *clt)
> >  	const char *device_name;
> >  	int ret;
> >  
> > -	if (strstr(dev_name(&clt->dev), "TIAS2781"))
> > +	if (strstr(dev_name(&clt->dev), "TXNW2781"))
> > +		device_name = "TXNW2781";
> > +	else if (strstr(dev_name(&clt->dev), "TIAS2781"))
> >  		device_name = "TIAS2781";
> >  	else
> >  		return -ENODEV;
> > @@ -824,6 +832,7 @@ static const struct i2c_device_id tas2781_hda_i2c_id[] = {
> >  
> >  static const struct acpi_device_id tas2781_acpi_hda_match[] = {
> >  	{"TIAS2781", 0 },
> > +	{"TXNW2781", 1 },
> >  	{}
> >  };
> >  MODULE_DEVICE_TABLE(acpi, tas2781_acpi_hda_match);
> > -- 
> > 2.34.1
> > 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ