diff options
-rw-r--r-- | drivers/mfd/twl6040.c | 9 | ||||
-rw-r--r-- | include/linux/mfd/twl6040.h | 1 |
2 files changed, 8 insertions, 2 deletions
diff --git a/drivers/mfd/twl6040.c b/drivers/mfd/twl6040.c index 03dbff3597a2..cb37bb8f8e41 100644 --- a/drivers/mfd/twl6040.c +++ b/drivers/mfd/twl6040.c | |||
@@ -87,8 +87,13 @@ static struct reg_default twl6040_defaults[] = { | |||
87 | }; | 87 | }; |
88 | 88 | ||
89 | static struct reg_default twl6040_patch[] = { | 89 | static struct reg_default twl6040_patch[] = { |
90 | /* Select I2C bus access to dual access registers */ | 90 | /* |
91 | { TWL6040_REG_ACCCTL, 0x09 }, | 91 | * Select I2C bus access to dual access registers |
92 | * Interrupt register is cleared on read | ||
93 | * Select fast mode for i2c (400KHz) | ||
94 | */ | ||
95 | { TWL6040_REG_ACCCTL, | ||
96 | TWL6040_I2CSEL | TWL6040_INTCLRMODE | TWL6040_I2CMODE(1) }, | ||
92 | }; | 97 | }; |
93 | 98 | ||
94 | 99 | ||
diff --git a/include/linux/mfd/twl6040.h b/include/linux/mfd/twl6040.h index 81f639bc1ae6..a69d16b30c18 100644 --- a/include/linux/mfd/twl6040.h +++ b/include/linux/mfd/twl6040.h | |||
@@ -157,6 +157,7 @@ | |||
157 | #define TWL6040_I2CSEL 0x01 | 157 | #define TWL6040_I2CSEL 0x01 |
158 | #define TWL6040_RESETSPLIT 0x04 | 158 | #define TWL6040_RESETSPLIT 0x04 |
159 | #define TWL6040_INTCLRMODE 0x08 | 159 | #define TWL6040_INTCLRMODE 0x08 |
160 | #define TWL6040_I2CMODE(x) ((x & 0x3) << 4) | ||
160 | 161 | ||
161 | /* STATUS (0x2E) fields */ | 162 | /* STATUS (0x2E) fields */ |
162 | 163 | ||