Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Liam Girdwood <lrg@slimlogic.co.uk>
To: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Cc: alsa-devel@alsa-project.org,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	patches@opensource.wolfsonmicro.com
Subject: Re: [PATCH] ASoC: Add initial WM8995 driver
Date: Tue, 21 Dec 2010 20:38:12 +0000	[thread overview]
Message-ID: <1292963892.3296.56.camel@odin> (raw)
In-Reply-To: <1292951800-16694-1-git-send-email-dp@opensource.wolfsonmicro.com>

On Tue, 2010-12-21 at 17:16 +0000, Dimitris Papastamos wrote:
> The WM8995 is a digital audio hub CODEC designed for smartphones.
> The current driver supports most of the basic functionality of the
> WM8995.
> 
> Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
> ---

> +
> +static int wm8995_volatile(unsigned int reg)
> +{
> +	if (reg >= WM8995_MAX_REGISTER + 1)
> +		return 1;
> +

return -EINVAL here.

> +	switch (reg) {
> +	case WM8995_SOFTWARE_RESET:
> +	case WM8995_DC_SERVO_READBACK_0:
> +	case WM8995_INTERRUPT_STATUS_1:
> +	case WM8995_INTERRUPT_STATUS_2:
> +	case WM8995_INTERRUPT_STATUS_1_MASK:
> +	case WM8995_INTERRUPT_STATUS_2_MASK:
> +	case WM8995_INTERRUPT_CONTROL:
> +	case WM8995_ACCESSORY_DETECT_MODE1:
> +	case WM8995_ACCESSORY_DETECT_MODE2:
> +	case WM8995_HEADPHONE_DETECT1:
> +	case WM8995_HEADPHONE_DETECT2:
> +		return 1;
> +	}
> +
> +	return 0;
> +}
> +

> +
> +/*
> + * R1 (0x01) - Power Management (1)
> + */
> +#define WM8995_MICB2_ENA                        0x0200	/* MICB2_ENA */
> +#define WM8995_MICB2_ENA_MASK                   0x0200	/* MICB2_ENA */
> +#define WM8995_MICB2_ENA_SHIFT                       9	/* MICB2_ENA */
> +#define WM8995_MICB2_ENA_WIDTH                       1	/* MICB2_ENA */
> +#define WM8995_MICB1_ENA                        0x0100	/* MICB1_ENA */
> +#define WM8995_MICB1_ENA_MASK                   0x0100	/* MICB1_ENA */
> +#define WM8995_MICB1_ENA_SHIFT                       8	/* MICB1_ENA */
> +#define WM8995_MICB1_ENA_WIDTH                       1	/* MICB1_ENA */
> +#define WM8995_HPOUT2L_ENA                      0x0080	/* HPOUT2L_ENA */
> +#define WM8995_HPOUT2L_ENA_MASK                 0x0080	/* HPOUT2L_ENA */
> +#define WM8995_HPOUT2L_ENA_SHIFT                     7	/* HPOUT2L_ENA */
> +#define WM8995_HPOUT2L_ENA_WIDTH                     1	/* HPOUT2L_ENA */
> +#define WM8995_HPOUT2R_ENA                      0x0040	/* HPOUT2R_ENA */
> +#define WM8995_HPOUT2R_ENA_MASK                 0x0040	/* HPOUT2R_ENA */
> +#define WM8995_HPOUT2R_ENA_SHIFT                     6	/* HPOUT2R_ENA */
> +#define WM8995_HPOUT2R_ENA_WIDTH                     1	/* HPOUT2R_ENA */
> +#define WM8995_HPOUT1L_ENA                      0x0020	/* HPOUT1L_ENA */
> +#define WM8995_HPOUT1L_ENA_MASK                 0x0020	/* HPOUT1L_ENA */
> +#define WM8995_HPOUT1L_ENA_SHIFT                     5	/* HPOUT1L_ENA */
> +#define WM8995_HPOUT1L_ENA_WIDTH                     1	/* HPOUT1L_ENA */
> +#define WM8995_HPOUT1R_ENA                      0x0010	/* HPOUT1R_ENA */
> +#define WM8995_HPOUT1R_ENA_MASK                 0x0010	/* HPOUT1R_ENA */
> +#define WM8995_HPOUT1R_ENA_SHIFT                     4	/* HPOUT1R_ENA */
> +#define WM8995_HPOUT1R_ENA_WIDTH                     1	/* HPOUT1R_ENA */
> +#define WM8995_BG_ENA                           0x0001	/* BG_ENA */
> +#define WM8995_BG_ENA_MASK                      0x0001	/* BG_ENA */
> +#define WM8995_BG_ENA_SHIFT                          0	/* BG_ENA */
> +#define WM8995_BG_ENA_WIDTH                          1	/* BG_ENA */
> +

It looks like all the register bits have macros but some driver
functions are still using magic numbers for bits instead of the macros.

Thanks

Liam

  reply	other threads:[~2010-12-21 20:38 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-21 17:16 [PATCH] ASoC: Add initial WM8995 driver Dimitris Papastamos
2010-12-21 20:38 ` Liam Girdwood [this message]
2010-12-22 10:26   ` Dimitris Papastamos
2010-12-22 10:54     ` Liam Girdwood
2010-12-22 11:07       ` Mark Brown
2010-12-22 11:29         ` Dimitris Papastamos
2010-12-22 11:28       ` Dimitris Papastamos
     [not found] <1293017591-1277-1-git-send-email-dp@opensource.wolfsonmicro.com>
2010-12-22 13:33 ` Liam Girdwood
2010-12-22 13:36 ` Mark Brown

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=1292963892.3296.56.camel@odin \
    --to=lrg@slimlogic.co.uk \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=dp@opensource.wolfsonmicro.com \
    --cc=patches@opensource.wolfsonmicro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox