13 Mar
2010
13 Mar
'10
12:23 p.m.
Hi,
On Fri, 12 Mar 2010 19:52:20 -0600, "Olaya, Margarita" magi.olaya@ti.com wrote:
+/*
- twl6040 register cache & default register settings
- */
+static const u8 twl6040_reg[TWL6040_CACHEREGNUM] = {
0x00, /* not used 0x00 */0x4B, /* TWL6040_ASICID (ro) 0x01 */0x00, /* TWL6040_ASICREV (ro) 0x02 */0x00, /* TWL6040_INTID 0x03 */0x00, /* TWL6040_INTMR 0x04 */0x00, /* TWL6040_NCPCTRL 0x05 */0x00, /* TWL6040_LDOCTL 0x06 */0x00, /* TWL6040_HPPLLCTL 0x07 */0x00, /* TWL6040_LPPLLCTL 0x08 */0x00, /* TWL6040_LPPLLDIV 0x09 */0x00, /* TWL6040_AMICBCTL 0x0A */0x00, /* TWL6040_DMICBCTL 0x0B */0x18, /* TWL6040_MICLCTL 0x0C */0x18, /* TWL6040_MICRCTL 0x0D */0x00, /* TWL6040_MICGAIN 0x0E */0x1B, /* TWL6040_LINEGAIN 0x0F */0x00, /* TWL6040_HSLCTL 0x10 */0x00, /* TWL6040_HSRCTL 0x11 */0x00, /* TWL6040_HSGAIN 0x12 */0x06, /* TWL6040_EARCTL 0x13 */0x00, /* TWL6040_HFLCTL 0x14 */0x03, /* TWL6040_HFLGAIN 0x15 */0x00, /* TWL6040_HFRCTL 0x16 */0x03, /* TWL6040_HFRGAIN 0x17 */0x00, /* TWL6040_VIBCTLL 0x18 */0x00, /* TWL6040_VIBDATL 0x19 */0x00, /* TWL6040_VIBCTLR 0x1A */0x00, /* TWL6040_VIBDATR 0x1B */0x00, /* TWL6040_HKCTL1 0x1C */0x00, /* TWL6040_HKCTL2 0x1D */0x00, /* TWL6040_GPOCTL 0x1E */0x00, /* TWL6040_ALB 0x1F */0x00, /* TWL6040_DLB 0x20 */0x00, /* not used 0x21 */0x00, /* not used 0x22 */0x00, /* not used 0x23 */0x00, /* not used 0x24 */0x00, /* not used 0x25 */0x00, /* not used 0x26 */0x00, /* not used 0x27 */0x00, /* TWL6040_TRIM1 0x28 */0x00, /* TWL6040_TRIM2 0x29 */0x00, /* TWL6040_TRIM3 0x2A */0x00, /* TWL6040_HSOTRIM 0x2B */0x00, /* TWL6040_HFOTRIM 0x2C */0x09, /* TWL6040_ACCCTL 0x2D */0x00, /* TWL6040_STATUS (ro) 0x2E */+};
a little comment about what the default values are would be nice.
#ifdef CONFIG_PM
+static int twl6040_suspend(struct platform_device *pdev, pm_message_t state) +{
struct snd_soc_device *socdev = platform_get_drvdata(pdev);struct snd_soc_codec *codec = socdev->card->codec;twl6040_set_bias_level(codec, SND_SOC_BIAS_OFF);return 0;+}
+static int twl6040_resume(struct platform_device *pdev) +{
struct snd_soc_device *socdev = platform_get_drvdata(pdev);struct snd_soc_codec *codec = socdev->card->codec;twl6040_set_bias_level(codec, SND_SOC_BIAS_STANDBY);twl6040_set_bias_level(codec, codec->suspend_bias_level);return 0;+}
#else #define twl6040_suspend NULL #define twl6040_resume NULL #endif
--
balbi