summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMargarita Olaya Cabrera <magi.olaya@ti.com>2010-07-15 13:38:00 -0500
committerRicardo Perez Olivares <x0081762@ti.com>2010-07-16 17:41:31 -0500
commitc030fd3138e0705b129022d2f2cb19396b65c270 (patch)
treec599601a2404529edb64084693e0a922722460f5
parentf23ca443cff5f05b647e1067b2d5a322bdf3ad67 (diff)
ASoC: McPDM: Enable wd reset for ES2.0
With revision ES2.0 a new bit is provide to enable the pdm watchdog logic. Signed-off-by: Margarita Olaya Cabrera <magi.olaya@ti.com>
-rw-r--r--sound/soc/omap/mcpdm.c8
-rw-r--r--sound/soc/omap/mcpdm.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/sound/soc/omap/mcpdm.c b/sound/soc/omap/mcpdm.c
index d2bb50adca75..1da0dc5c9a14 100644
--- a/sound/soc/omap/mcpdm.c
+++ b/sound/soc/omap/mcpdm.c
@@ -328,7 +328,7 @@ int omap_mcpdm_request(void)
{
struct platform_device *pdev;
struct omap_mcpdm_platform_data *pdata;
- int ret;
+ int ret, ctrl;
pdev = to_platform_device(mcpdm->dev);
pdata = pdev->dev.platform_data;
@@ -360,6 +360,12 @@ int omap_mcpdm_request(void)
goto err;
}
+#ifndef CONFIG_OMAP4_ES1
+ ctrl = omap_mcpdm_read(MCPDM_CTRL);
+ ctrl |= WD_EN;
+ omap_mcpdm_write(MCPDM_CTRL, ctrl);
+#endif
+
return 0;
err:
diff --git a/sound/soc/omap/mcpdm.h b/sound/soc/omap/mcpdm.h
index ab649ab970b8..93189b3d5ac7 100644
--- a/sound/soc/omap/mcpdm.h
+++ b/sound/soc/omap/mcpdm.h
@@ -80,6 +80,7 @@
#define STATUS_INT 0x0400
#define SW_UP_RST 0x0800
#define SW_DN_RST 0x1000
+#define WD_EN 0x4000
#define PDM_UP_MASK 0x007
#define PDM_DN_MASK 0x0F8
#define PDM_CMD_MASK 0x200