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, 27 Jun 2013 09:49:56 +0200
From:	Marek Belisko <marek.belisko@...eamunlimited.com>
To:	Mark Brown <broonie@...nel.org>
CC:	Marek Belisko <marek.belisko@...il.com>, perex@...ex.cz,
	tiwai@...e.de, grant.likely@...aro.org, rob.herring@...xeda.com,
	rob@...dley.net, lgirdwood@...il.com,
	devicetree-discuss@...ts.ozlabs.org, linux-doc@...r.kernel.org,
	linux-kernel@...r.kernel.org, alsa-devel@...a-project.org,
	zonque@...il.com
Subject: Re: [PATCH] ASoC: Add PCM1681 codec driver.

Hi Mark,
On 06/26/2013 04:30 PM, Mark Brown wrote:
> On Wed, Jun 26, 2013 at 03:05:28PM +0200, Marek Belisko wrote:
>
>> +#define PCM1681_ATT_CONTROL(X)	(X <= 6 ? X : X + 9) /* Attenuation level */
>
> Write a function for this.
This macro is used when creating controls for channels volume so this 
cannot be rewritten to function. I also thinking about updating macro 
name to PCM1681_CHANNEL_VOL(X).
>
>> +static bool pcm1681_writeable_reg(struct device *dev, unsigned register reg)
>> +{
>> +	return pcm1681_accessible_reg(dev, reg) &&
>> +		(reg != PCM1681_ZERO_DETECT_STATUS);
>> +}
>
>> +static int pcm1681_digital_mute(struct snd_soc_dai *dai, int mute)
>> +{
>> +	struct snd_soc_codec *codec = dai->codec;
>> +	struct pcm1681_private *priv = snd_soc_codec_get_drvdata(codec);
>> +	int ret, val = 0;
>> +
>> +	if (mute)
>> +		val = PCM1681_SOFT_MUTE_ALL;
>> +
>
> This would be clearer if written as an if .. else - otherwise it looks
> like an uninitalised value might be used.
OK.
>
>> +static int pcm1681_hw_params(struct snd_pcm_substream *substream,
>> +			     struct snd_pcm_hw_params *params,
>> +			     struct snd_soc_dai *dai)
>> +{
>> +	struct snd_soc_codec *codec = dai->codec;
>> +	struct pcm1681_private *priv = snd_soc_codec_get_drvdata(codec);
>> +	int val = 0;
>> +	int pcm_format = params_format(params);
>> +
>> +	priv->rate = params_rate(params);
>> +
>
> Shouldn't there be a call to set the deemphasis here?
Right. I'll add it here.
>
>> +static int pcm1681_probe(struct snd_soc_codec *codec)
>> +{
>> +	return 0;
>> +}
>> +
>> +static int pcm1681_remove(struct snd_soc_codec *codec)
>> +{
>> +	return 0;
>> +}
>
> Remove empty functions.
Will do.
>

Thanks,

marek

-- 
Marek Belisko

Software Developer
StreamUnlimited Engineering GmbH
Gutheil Schodergasse 8-12
A-1100 Vienna, Austria

Office: +421 267200087

e-mail: marek.belisko@...eamunlimited.com
http://www.streamunlimited.com

Meet us at:

IFA - Berlin, 6-11 September
CEDIA - Denver, 25-28 September
--
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