summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/twl6040.c
diff options
context:
space:
mode:
authorPeter Ujfalusi2014-04-01 15:44:59 +0200
committerLee Jones2014-06-03 09:11:19 +0200
commit11e38e11afcdd598d0978746924a001e3e7cb723 (patch)
treebee6f63cbcb542b8382a361427727d6a68d35e30 /drivers/mfd/twl6040.c
parentmfd: twl6040: Clear the interrupt ID register before requesting IRQ (diff)
downloadkernel-qcow2-linux-11e38e11afcdd598d0978746924a001e3e7cb723.tar.gz
kernel-qcow2-linux-11e38e11afcdd598d0978746924a001e3e7cb723.tar.xz
kernel-qcow2-linux-11e38e11afcdd598d0978746924a001e3e7cb723.zip
mfd: twl6040: Select i2c fast mode as default with regmap patch
All boards using twl6040 configures the i2c bus to 400KHz. While twl6040's defaults to normal mode (100KHz). So far twl6040 has no problem with i2c communication in this configuration it is safer to select fast i2c mode. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd/twl6040.c')
-rw-r--r--drivers/mfd/twl6040.c9
1 files changed, 7 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[] = {
};
static struct reg_default twl6040_patch[] = {
- /* Select I2C bus access to dual access registers */
- { TWL6040_REG_ACCCTL, 0x09 },
+ /*
+ * Select I2C bus access to dual access registers
+ * Interrupt register is cleared on read
+ * Select fast mode for i2c (400KHz)
+ */
+ { TWL6040_REG_ACCCTL,
+ TWL6040_I2CSEL | TWL6040_INTCLRMODE | TWL6040_I2CMODE(1) },
};