From c049b6f7f97e87f155ce6059bfc6b50a28087d6b Mon Sep 17 00:00:00 2001 From: David Paris Date: Fri, 4 Mar 2011 14:57:08 +0100 Subject: MFD: tc35892: Optimize power save settings for suspend Compared to HSI GPIO V3.1, register 0x82 is set with a different value 0x82 = 0xE (HSI GPIO V3.1) 0x82 = 0xF (on android) In case of android, it seems that GPIO reset should be applied to reach 13uA of consumption on TC35892 when AP in DeepSleep Change-Id: I64eaa4304fcd9f71546cadba0aa703c91b6075df Signed-off-by: David Paris Signed-off-by: Jonas Aaberg --- include/linux/mfd/tc35892.h | 60 ++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 25 deletions(-) (limited to 'include') diff --git a/include/linux/mfd/tc35892.h b/include/linux/mfd/tc35892.h index e47f770d306..41b572c1f8e 100644 --- a/include/linux/mfd/tc35892.h +++ b/include/linux/mfd/tc35892.h @@ -15,21 +15,43 @@ #define TC35892_RSTCTRL_KBDRST (1 << 1) #define TC35892_RSTCTRL_GPIRST (1 << 0) -#define TC35892_IRQST 0x91 -#define TC35892_MANFCODE_MAGIC 0x03 #define TC35892_MANFCODE 0x80 +#define TC35892_MANFCODE_MAGIC 0x03 #define TC35892_VERSION 0x81 -#define TC35892_IOCFG 0xA7 - +#define TC35892_RSTCTRL 0x82 +#define TC35892_EXTRSTN 0x83 +#define TC35892_RSTINTCLR 0x84 #define TC35892_CLKMODE 0x88 #define TC35892_CLKCFG 0x89 #define TC35892_CLKEN 0x8A +#define TC35892_IRQST 0x91 -#define TC35892_RSTCTRL 0x82 -#define TC35892_EXTRSTN 0x83 -#define TC35892_RSTINTCLR 0x84 +#define TC35892_DRIVE0_L 0xA0 +#define TC35892_DRIVE0_H 0xA1 +#define TC35892_DRIVE1_L 0xA2 +#define TC35892_DRIVE1_H 0xA3 +#define TC35892_DRIVE2_L 0xA4 +#define TC35892_DRIVE2_H 0XA5 +#define TC35892_DRIVE3 0xA6 +#define TC35892_IOCFG 0xA7 + +#define TC35892_IOPC0_L 0xAA +#define TC35892_IOPC0_H 0xAB +#define TC35892_IOPC1_L 0xAC +#define TC35892_IOPC1_H 0xAD +#define TC35892_IOPC2_L 0xAE +#define TC35892_IOPC2_H 0xAF +#define TC35892_GPIODATA0 0xC0 +#define TC35892_GPIOMASK0 0xC1 +#define TC35892_GPIODATA1 0xC2 +#define TC35892_GPIOMASK1 0xC3 +#define TC35892_GPIODATA2 0xC4 +#define TC35892_GPIOMASK2 0xC5 +#define TC35892_GPIODIR0 0xC6 +#define TC35892_GPIODIR1 0xC7 +#define TC35892_GPIODIR2 0xC8 #define TC35892_GPIOIS0 0xC9 #define TC35892_GPIOIS1 0xCA #define TC35892_GPIOIS2 0xCB @@ -51,17 +73,12 @@ #define TC35892_GPIOIC0 0xDC #define TC35892_GPIOIC1 0xDD #define TC35892_GPIOIC2 0xDE - -#define TC35892_GPIODATA0 0xC0 -#define TC35892_GPIOMASK0 0xc1 -#define TC35892_GPIODATA1 0xC2 -#define TC35892_GPIOMASK1 0xc3 -#define TC35892_GPIODATA2 0xC4 -#define TC35892_GPIOMASK2 0xC5 - -#define TC35892_GPIODIR0 0xC6 -#define TC35892_GPIODIR1 0xC7 -#define TC35892_GPIODIR2 0xC8 +#define TC35892_GPIOODM0 0xE0 +#define TC35892_GPIOODE0 0xE1 +#define TC35892_GPIOODM1 0xE2 +#define TC35892_GPIOODE1 0xE3 +#define TC35892_GPIOODM2 0xE4 +#define TC35892_GPIOODE2 0xE5 #define TC35892_GPIOSYNC0 0xE6 #define TC35892_GPIOSYNC1 0xE7 @@ -71,13 +88,6 @@ #define TC35892_GPIOWAKE1 0xEA #define TC35892_GPIOWAKE2 0xEB -#define TC35892_GPIOODM0 0xE0 -#define TC35892_GPIOODE0 0xE1 -#define TC35892_GPIOODM1 0xE2 -#define TC35892_GPIOODE1 0xE3 -#define TC35892_GPIOODM2 0xE4 -#define TC35892_GPIOODE2 0xE5 - #define TC35892_INT_GPIIRQ 0 #define TC35892_INT_TI0IRQ 1 #define TC35892_INT_TI1IRQ 2 -- cgit v1.2.3