summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/vc44xx_data.c
diff options
context:
space:
mode:
authorKevin Hilman2011-03-31 01:36:30 +0200
committerKevin Hilman2011-09-15 21:08:58 +0200
commitf5395480f5088a86cc8594d29b5c2f07f6995c3d (patch)
tree85b13fd9a57214de3d59f6dbf4a3702f7873cc6e /arch/arm/mach-omap2/vc44xx_data.c
parentOMAP3+: voltage domain: move PMIC struct from vdd_info into struct voltagedomain (diff)
downloadkernel-qcow2-linux-f5395480f5088a86cc8594d29b5c2f07f6995c3d.tar.gz
kernel-qcow2-linux-f5395480f5088a86cc8594d29b5c2f07f6995c3d.tar.xz
kernel-qcow2-linux-f5395480f5088a86cc8594d29b5c2f07f6995c3d.zip
OMAP3+: VC: make I2C config programmable with PMIC-specific settings
Remove hard-coded I2C configuration in favor of settings that can be configured from PMIC-specific values. Currently only high-speed mode and the master-code value are supported, since they were the only fields currently used, but extending this is now trivial. Thanks to Nishanth Menon <nm@ti.com> for reporting/fixing a sparse problem and making omap_vc_i2c_init() static, as well as finding and fixing a problem with the shift/mask of mcode. Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/vc44xx_data.c')
-rw-r--r--arch/arm/mach-omap2/vc44xx_data.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/vc44xx_data.c b/arch/arm/mach-omap2/vc44xx_data.c
index 1610bdedee6b..148be18397f8 100644
--- a/arch/arm/mach-omap2/vc44xx_data.c
+++ b/arch/arm/mach-omap2/vc44xx_data.c
@@ -45,6 +45,9 @@ static const struct omap_vc_common omap4_vc_common = {
.cmd_ret_shift = OMAP4430_RET_SHIFT,
.cmd_off_shift = OMAP4430_OFF_SHIFT,
.cfg_channel_reg = OMAP4_PRM_VC_CFG_CHANNEL_OFFSET,
+ .i2c_cfg_reg = OMAP4_PRM_VC_CFG_I2C_MODE_OFFSET,
+ .i2c_cfg_hsen_mask = OMAP4430_HSMODEEN_MASK,
+ .i2c_mcode_mask = OMAP4430_HSMCODE_MASK,
};
/* VC instance data for each controllable voltage line */