All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rhyland Klein <rklein@nvidia.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Liam Girdwood <lrg@ti.com>,
	"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	Peter Hsiang <cdefgab1288@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] ASoC: max98095: add jack detection
Date: Tue, 13 Mar 2012 16:15:24 -0700	[thread overview]
Message-ID: <1331680524.9410.11.camel@rklein-linux> (raw)
In-Reply-To: <20120313230939.GO3177@opensource.wolfsonmicro.com>

On Tue, 2012-03-13 at 16:09 -0700, Mark Brown wrote:
> * PGP Signed by an unknown key
> 
> On Tue, Mar 13, 2012 at 12:44:08PM -0700, Rhyland Klein wrote:
> 
> > This change adds the logic to support using the jack detect mechanism built
> > in to the codec to detect both when a jack was inserted and what type of
> > jack is present.
> 
> This looks mostly good, a few things below.
> 
> > @@ -51,6 +52,9 @@ struct max98095_priv {
> >  	u8 lin_state;
> >  	unsigned int mic1pre;
> >  	unsigned int mic2pre;
> > +	int irq;
> 
> You can just get the irq from the I2C device.

Right, will do.

> 
> > +	if (max98095->headphone_jack == max98095->mic_jack)
> > +		snd_soc_jack_report(max98095->headphone_jack,
> > +					hp_report | mic_report,
> > +					SND_JACK_HEADSET);
> > +	else {
> 
> Braces on both sides of the if for clarity.

will do. 

> 
> > +static irqreturn_t max98095_jack_handler(int irq, void *data)
> > +{
> > +	struct snd_soc_codec *codec = data;
> > +	int ret;
> > +
> > +	ret = max98095_report_jack(codec);
> > +
> > +	return ret ? IRQ_NONE : IRQ_HANDLED;
> 
> There is no point in having a separate function here, this function has
> no contents.  Just inline it.  Please also avoid the use of the ternery
> operator.

will do.

> 
> > +	/* configure jack detection: slew is calculated as 4 * (delay + 1)
> > +	 * The default is 24 (0x18) to get 100ms delay.
> > +	 */
> > +	ret = snd_soc_write(codec, M98095_08E_JACK_DC_SLEW,
> > +				M98095_DEFAULT_SLEW_DELAY);
> > +	if (ret < 0) {
> > +		dev_err(codec->dev, "Failed to cfg auto detect %d\n", ret);
> > +		return ret;
> > +	}
> 
> Platform data?

As of now there isn't. But that does make sense to support. Will add.

> 
> > +	enable_irq(max98095->irq);
> 
> You shouldn't be fiddling around with enable_irq() and disable_irq().
> Why are you doing this?

this can be removed.

> 
> * Unknown Key
> * 0x6E30FDDD

Thanks for quick review,
Rhyland



WARNING: multiple messages have this Message-ID (diff)
From: Rhyland Klein <rklein@nvidia.com>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Peter Hsiang <cdefgab1288@gmail.com>,
	"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	Liam Girdwood <lrg@ti.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] ASoC: max98095: add jack detection
Date: Tue, 13 Mar 2012 16:15:24 -0700	[thread overview]
Message-ID: <1331680524.9410.11.camel@rklein-linux> (raw)
In-Reply-To: <20120313230939.GO3177@opensource.wolfsonmicro.com>

On Tue, 2012-03-13 at 16:09 -0700, Mark Brown wrote:
> * PGP Signed by an unknown key
> 
> On Tue, Mar 13, 2012 at 12:44:08PM -0700, Rhyland Klein wrote:
> 
> > This change adds the logic to support using the jack detect mechanism built
> > in to the codec to detect both when a jack was inserted and what type of
> > jack is present.
> 
> This looks mostly good, a few things below.
> 
> > @@ -51,6 +52,9 @@ struct max98095_priv {
> >  	u8 lin_state;
> >  	unsigned int mic1pre;
> >  	unsigned int mic2pre;
> > +	int irq;
> 
> You can just get the irq from the I2C device.

Right, will do.

> 
> > +	if (max98095->headphone_jack == max98095->mic_jack)
> > +		snd_soc_jack_report(max98095->headphone_jack,
> > +					hp_report | mic_report,
> > +					SND_JACK_HEADSET);
> > +	else {
> 
> Braces on both sides of the if for clarity.

will do. 

> 
> > +static irqreturn_t max98095_jack_handler(int irq, void *data)
> > +{
> > +	struct snd_soc_codec *codec = data;
> > +	int ret;
> > +
> > +	ret = max98095_report_jack(codec);
> > +
> > +	return ret ? IRQ_NONE : IRQ_HANDLED;
> 
> There is no point in having a separate function here, this function has
> no contents.  Just inline it.  Please also avoid the use of the ternery
> operator.

will do.

> 
> > +	/* configure jack detection: slew is calculated as 4 * (delay + 1)
> > +	 * The default is 24 (0x18) to get 100ms delay.
> > +	 */
> > +	ret = snd_soc_write(codec, M98095_08E_JACK_DC_SLEW,
> > +				M98095_DEFAULT_SLEW_DELAY);
> > +	if (ret < 0) {
> > +		dev_err(codec->dev, "Failed to cfg auto detect %d\n", ret);
> > +		return ret;
> > +	}
> 
> Platform data?

As of now there isn't. But that does make sense to support. Will add.

> 
> > +	enable_irq(max98095->irq);
> 
> You shouldn't be fiddling around with enable_irq() and disable_irq().
> Why are you doing this?

this can be removed.

> 
> * Unknown Key
> * 0x6E30FDDD

Thanks for quick review,
Rhyland

  reply	other threads:[~2012-03-13 23:14 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-13 19:44 [PATCH] ASoC: max98095: add jack detection Rhyland Klein
2012-03-13 19:44 ` Rhyland Klein
2012-03-13 22:12 ` Mark Brown
2012-03-13 22:18   ` Rhyland Klein
2012-03-13 23:09 ` Mark Brown
2012-03-13 23:15   ` Rhyland Klein [this message]
2012-03-13 23:15     ` Rhyland Klein
  -- strict thread matches above, loose matches on Subject: below --
2012-03-13 19:40 Rhyland Klein
2012-03-13 19:40 ` Rhyland Klein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1331680524.9410.11.camel@rklein-linux \
    --to=rklein@nvidia.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=cdefgab1288@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lrg@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.