Re: [PATCH 3/3] mfd: Enable Debounce logic for SD hotplug detection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 25, 2012 at 1:44 AM, Viswanath Puttagunta <vishp@xxxxxx> wrote:
>
> Enable debounce logic in TWL6030 so that erroneous
> disconnect/connect interrupts will be suppressed.
>
> This will fix issue where SD card is either plugged
> or unplugged very slowly.
>
> Change-Id: Icc3afa4c66b3bc7920f27ff9c9a3f32e67d5833c
> Signed-off-by: Viswanath Puttagunta <vishp@xxxxxx>

Would be better without the Change-Id.
Also, this needs to be posted to linux-omap and linux-mfd, apart from linux-mmc.

> ---
>  drivers/mfd/twl6030-irq.c |    8 ++++++++
>  include/linux/i2c/twl.h   |    5 +++++
>  2 files changed, 13 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/mfd/twl6030-irq.c b/drivers/mfd/twl6030-irq.c
> index b76902f..05bb6e1 100644
> --- a/drivers/mfd/twl6030-irq.c
> +++ b/drivers/mfd/twl6030-irq.c
> @@ -317,6 +317,14 @@ int twl6030_mmc_card_detect_config(void)
>
>  ret);
>                return ret;
>        }
> +       ret = twl_i2c_write_u8(TWL6030_MODULE_ID0,
> +                               (MMC_MINS_DEB_MASK | MMC_MEXT_DEB_MASK),
> +                               TWL6030_MMCDEBOUNCING);
> +       if (ret < 0) {
> +               pr_err("twl6030: Failed to write MMC_MEXT_DEB_MASK %d\n",
> +                                                               ret);
> +               return ret;
> +       }
>
>        return twl6030_irq_base + MMCDETECT_INTR_OFFSET;
>  }
> diff --git a/include/linux/i2c/twl.h b/include/linux/i2c/twl.h
> index 1f90de0..672dcfb 100644
> --- a/include/linux/i2c/twl.h
> +++ b/include/linux/i2c/twl.h
> @@ -147,6 +147,11 @@
>  #define SW_FC                          (0x1 << 2)
>  #define STS_MMC                        0x1
>
> +#define TWL6030_MMCDEBOUNCING          0xED
> +#define MMC_DEB_BYPASS                 (0x1 << 7)
> +#define MMC_MINS_DEB_MASK              (0xF << 3)
> +#define MMC_MEXT_DEB_MASK              (0x7 << 0)

Some description about what these values mean (timing etc) would be helpful.

> +
>  #define TWL6030_CFG_INPUT_PUPD3        0xF2
>  #define MMC_PU                         (0x1 << 3)
>  #define MMC_PD                         (0x1 << 2)
> --
> 1.7.4.1
>
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux