Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1204877 > unrolled thread

[PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch

Started byCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
First post2015-08-11 10:40 +0200
Last post2015-08-12 10:30 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - 2015-08-11 10:40 +0200
    Re: [PATCH RESEND 3/5] mfd: arizona: Add register bits for general  purpose switch Lee Jones <lee.jones@linaro.org> - 2015-08-12 10:30 +0200

#1204877 — [PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch

FromCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Date2015-08-11 10:40 +0200
Subject[PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch
Message-ID<pWdgd-8dF-5@gated-at.bofh.it>
The switch is typically used in conjunction with the MICDET clamp in
order to suppress pops and clicks associated with jack insertion.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
---
 drivers/mfd/wm5110-tables.c           |    2 ++
 include/linux/mfd/arizona/pdata.h     |    3 +++
 include/linux/mfd/arizona/registers.h |    8 ++++++++
 3 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c
index dd27872..acb3bb2 100644
--- a/drivers/mfd/wm5110-tables.c
+++ b/drivers/mfd/wm5110-tables.c
@@ -1472,6 +1472,7 @@ static const struct reg_default wm5110_reg_default[] = {
 	{ 0x00000C04, 0xA101 },    /* R3076  - GPIO5 CTRL */
 	{ 0x00000C0F, 0x0400 },    /* R3087  - IRQ CTRL 1 */
 	{ 0x00000C10, 0x1000 },    /* R3088  - GPIO Debounce Config */
+	{ 0x00000C18, 0x0000 },    /* R3096  - GP Switch 1 */
 	{ 0x00000C20, 0x8002 },    /* R3104  - Misc Pad Ctrl 1 */
 	{ 0x00000C21, 0x8001 },    /* R3105  - Misc Pad Ctrl 2 */
 	{ 0x00000C22, 0x0000 },    /* R3106  - Misc Pad Ctrl 3 */
@@ -2524,6 +2525,7 @@ static bool wm5110_readable_register(struct device *dev, unsigned int reg)
 	case ARIZONA_GPIO5_CTRL:
 	case ARIZONA_IRQ_CTRL_1:
 	case ARIZONA_GPIO_DEBOUNCE_CONFIG:
+	case ARIZONA_GP_SWITCH_1:
 	case ARIZONA_MISC_PAD_CTRL_1:
 	case ARIZONA_MISC_PAD_CTRL_2:
 	case ARIZONA_MISC_PAD_CTRL_3:
diff --git a/include/linux/mfd/arizona/pdata.h b/include/linux/mfd/arizona/pdata.h
index f030a32..e76577b 100644
--- a/include/linux/mfd/arizona/pdata.h
+++ b/include/linux/mfd/arizona/pdata.h
@@ -182,6 +182,9 @@ struct arizona_pdata {
 
 	/** GPIO for primary IRQ (used for edge triggered emulation) */
 	int irq_gpio;
+
+	/** General purpose switch control */
+	unsigned int gpsw;
 };
 
 #endif
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h
index 3f3bb2b..e96644c 100644
--- a/include/linux/mfd/arizona/registers.h
+++ b/include/linux/mfd/arizona/registers.h
@@ -869,6 +869,7 @@
 #define ARIZONA_GPIO5_CTRL                       0xC04
 #define ARIZONA_IRQ_CTRL_1                       0xC0F
 #define ARIZONA_GPIO_DEBOUNCE_CONFIG             0xC10
+#define ARIZONA_GP_SWITCH_1                      0xC18
 #define ARIZONA_MISC_PAD_CTRL_1                  0xC20
 #define ARIZONA_MISC_PAD_CTRL_2                  0xC21
 #define ARIZONA_MISC_PAD_CTRL_3                  0xC22
@@ -4573,6 +4574,13 @@
 #define ARIZONA_GP_DBTIME_WIDTH                       4  /* GP_DBTIME - [15:12] */
 
 /*
+ * R3096 (0xC18) - GP Switch 1
+ */
+#define ARIZONA_SW1_MODE_MASK                    0x0003  /* SW1_MODE - [1:0] */
+#define ARIZONA_SW1_MODE_SHIFT                        0  /* SW1_MODE - [1:0] */
+#define ARIZONA_SW1_MODE_WIDTH                        2  /* SW1_MODE - [1:0] */
+
+/*
  * R3104 (0xC20) - Misc Pad Ctrl 1
  */
 #define ARIZONA_LDO1ENA_PD                       0x8000  /* LDO1ENA_PD */
-- 
1.7.2.5

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

[toc] | [next] | [standalone]


#1205699 — Re: [PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch

FromLee Jones <lee.jones@linaro.org>
Date2015-08-12 10:30 +0200
SubjectRe: [PATCH RESEND 3/5] mfd: arizona: Add register bits for general purpose switch
Message-ID<pWzA6-7iu-25@gated-at.bofh.it>
In reply to#1204877
On Tue, 11 Aug 2015, Charles Keepax wrote:

> The switch is typically used in conjunction with the MICDET clamp in
> order to suppress pops and clicks associated with jack insertion.
> 
> Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
> ---
>  drivers/mfd/wm5110-tables.c           |    2 ++
>  include/linux/mfd/arizona/pdata.h     |    3 +++
>  include/linux/mfd/arizona/registers.h |    8 ++++++++
>  3 files changed, 13 insertions(+), 0 deletions(-)

Acked-by: Lee Jones <lee.jones@linaro.org>

> diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c
> index dd27872..acb3bb2 100644
> --- a/drivers/mfd/wm5110-tables.c
> +++ b/drivers/mfd/wm5110-tables.c
> @@ -1472,6 +1472,7 @@ static const struct reg_default wm5110_reg_default[] = {
>  	{ 0x00000C04, 0xA101 },    /* R3076  - GPIO5 CTRL */
>  	{ 0x00000C0F, 0x0400 },    /* R3087  - IRQ CTRL 1 */
>  	{ 0x00000C10, 0x1000 },    /* R3088  - GPIO Debounce Config */
> +	{ 0x00000C18, 0x0000 },    /* R3096  - GP Switch 1 */
>  	{ 0x00000C20, 0x8002 },    /* R3104  - Misc Pad Ctrl 1 */
>  	{ 0x00000C21, 0x8001 },    /* R3105  - Misc Pad Ctrl 2 */
>  	{ 0x00000C22, 0x0000 },    /* R3106  - Misc Pad Ctrl 3 */
> @@ -2524,6 +2525,7 @@ static bool wm5110_readable_register(struct device *dev, unsigned int reg)
>  	case ARIZONA_GPIO5_CTRL:
>  	case ARIZONA_IRQ_CTRL_1:
>  	case ARIZONA_GPIO_DEBOUNCE_CONFIG:
> +	case ARIZONA_GP_SWITCH_1:
>  	case ARIZONA_MISC_PAD_CTRL_1:
>  	case ARIZONA_MISC_PAD_CTRL_2:
>  	case ARIZONA_MISC_PAD_CTRL_3:
> diff --git a/include/linux/mfd/arizona/pdata.h b/include/linux/mfd/arizona/pdata.h
> index f030a32..e76577b 100644
> --- a/include/linux/mfd/arizona/pdata.h
> +++ b/include/linux/mfd/arizona/pdata.h
> @@ -182,6 +182,9 @@ struct arizona_pdata {
>  
>  	/** GPIO for primary IRQ (used for edge triggered emulation) */
>  	int irq_gpio;
> +
> +	/** General purpose switch control */
> +	unsigned int gpsw;
>  };
>  
>  #endif
> diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h
> index 3f3bb2b..e96644c 100644
> --- a/include/linux/mfd/arizona/registers.h
> +++ b/include/linux/mfd/arizona/registers.h
> @@ -869,6 +869,7 @@
>  #define ARIZONA_GPIO5_CTRL                       0xC04
>  #define ARIZONA_IRQ_CTRL_1                       0xC0F
>  #define ARIZONA_GPIO_DEBOUNCE_CONFIG             0xC10
> +#define ARIZONA_GP_SWITCH_1                      0xC18
>  #define ARIZONA_MISC_PAD_CTRL_1                  0xC20
>  #define ARIZONA_MISC_PAD_CTRL_2                  0xC21
>  #define ARIZONA_MISC_PAD_CTRL_3                  0xC22
> @@ -4573,6 +4574,13 @@
>  #define ARIZONA_GP_DBTIME_WIDTH                       4  /* GP_DBTIME - [15:12] */
>  
>  /*
> + * R3096 (0xC18) - GP Switch 1
> + */
> +#define ARIZONA_SW1_MODE_MASK                    0x0003  /* SW1_MODE - [1:0] */
> +#define ARIZONA_SW1_MODE_SHIFT                        0  /* SW1_MODE - [1:0] */
> +#define ARIZONA_SW1_MODE_WIDTH                        2  /* SW1_MODE - [1:0] */
> +
> +/*
>   * R3104 (0xC20) - Misc Pad Ctrl 1
>   */
>  #define ARIZONA_LDO1ENA_PD                       0x8000  /* LDO1ENA_PD */

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web