summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorNitin Garg <nitin.garg@freescale.com>2012-10-18 19:08:40 -0500
committerNitin Garg <nitin.garg@freescale.com>2012-10-18 19:20:26 -0500
commiteec23c400e5c39ae338b9112031a302230220294 (patch)
tree5fdaf2380778e78b88838a7f467b24bd6c048200 /include
parent9034a8901397e22523530adafa4c1256ab15fb12 (diff)
ENGR00230334-2: Port 3.0.35 linux kernel to iMX53 SMD for Jellybean bringup.
Port 3.0.35 linux kernel to iMX53 SMD for Jellybean bringup. Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/i2c/mpr.h5
-rwxr-xr-xinclude/linux/mfd/da9052/da9052.h28
-rw-r--r--include/linux/mfd/da9052/pm.h4
-rw-r--r--include/linux/mfd/da9052/reg.h6
4 files changed, 34 insertions, 9 deletions
diff --git a/include/linux/i2c/mpr.h b/include/linux/i2c/mpr.h
index ded00db775f3..8dbbee648098 100644
--- a/include/linux/i2c/mpr.h
+++ b/include/linux/i2c/mpr.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. All Rights Reserved.
+ * Copyright (C) 2010-2012 Freescale Semiconductor, Inc. All Rights Reserved.
*/
/*
@@ -43,6 +43,7 @@
* should be write at last.
*/
#define ELECTRODE_CONF_ADDR 0x5e
+#define ECR_CL_BT_5BIT_VAL 0x80
#define AUTO_CONFIG_CTRL_ADDR 0x7b
/* AUTO_CONFIG_USL: Upper Limit for auto baseline search, this
* register is related to VDD supplied on your board, the value of
@@ -55,7 +56,7 @@
#define AUTO_CONFIG_TL_ADDR 0x7f
/* Threshold of touch/release trigger */
-#define TOUCH_THRESHOLD 0x0f
+#define TOUCH_THRESHOLD 0x0c
#define RELEASE_THRESHOLD 0x0a
/* Mask Button bits of STATUS_0 & STATUS_1 register */
#define TOUCH_STATUS_MASK 0xfff
diff --git a/include/linux/mfd/da9052/da9052.h b/include/linux/mfd/da9052/da9052.h
index fd83f73bcd82..18dd74bde4f8 100755
--- a/include/linux/mfd/da9052/da9052.h
+++ b/include/linux/mfd/da9052/da9052.h
@@ -75,6 +75,9 @@
#define DA9052_SSC_I2C_REPEAT_WRITE_MODE 1
#define DA9052_SSC_I2C_WRITE_MODE DA9052_SSC_I2C_REPEAT_WRITE_MODE
+#define DA9053_VERSION_AA 1
+#define DA9053_VERSION_BB 2
+
struct da9052_ssc_msg {
unsigned char data;
unsigned char addr;
@@ -95,7 +98,6 @@ struct da9052_eh_nb{
struct da9052_regulator_init_data {
struct regulator_init_data *init_data;
int id;
-
};
struct da9052_regulator_platform_data {
@@ -114,6 +116,25 @@ struct da9052_tsi_platform_data {
};
+struct da9052_bat_platform_data {
+ u16 sw_temp_control_en;
+ u16 monitoring_interval;
+ u16 sw_bat_temp_threshold;
+ u16 sw_junc_temp_threshold;
+ u16 hysteresis_window_size;
+ u16 current_monitoring_window;
+ u16 bat_with_no_resistor;
+ u16 bat_capacity_limit_low;
+ u16 bat_capacity_full;
+ u16 bat_capacity_limit_high;
+ u16 chg_hysteresis_const;
+ u16 hysteresis_reading_interval;
+ u16 hysteresis_no_of_reading;
+ u16 filter_size;
+ u16 bat_volt_cutoff;
+ u16 vbat_first_valid_detect_iteration;
+};
+
struct da9052 {
struct mutex ssc_lock;
struct mutex eve_nb_lock;
@@ -143,9 +164,9 @@ struct da9052 {
struct device *dev;
struct i2c_adapter *adapter;
unsigned char slave_addr;
+ int chip_version;
};
-
struct da9052_platform_data {
int (*init)(struct da9052 *da9052);
int irq_high;
@@ -156,6 +177,7 @@ struct da9052_platform_data {
struct regulator_init_data *regulators;
struct da9052_leds_platform_data *led_data;
struct da9052_tsi_platform_data *tsi_data;
+ struct da9052_bat_platform_data *bat_data;
};
struct da9052_ssc_ops {
@@ -206,4 +228,6 @@ int eh_register_nb(struct da9052 *da9052, struct da9052_eh_nb *nb);
int eh_unregister_nb(struct da9052 *da9052, struct da9052_eh_nb *nb);
int da9052_manual_read(struct da9052 *da9052,
unsigned char channel);
+void da9053_power_off(void);
+int da9053_get_chip_version(void);
#endif /* __LINUX_MFD_DA9052_DA9052_H */
diff --git a/include/linux/mfd/da9052/pm.h b/include/linux/mfd/da9052/pm.h
index 9a1c4f8b4ea8..f5901e8f1ed1 100644
--- a/include/linux/mfd/da9052/pm.h
+++ b/include/linux/mfd/da9052/pm.h
@@ -50,14 +50,14 @@
#define DA9052_BUCK_MEM_VOLT_UPPER 2500
#define DA9052_BUCK_MEM_VOLT_LOWER 925
#define DA9052_BUCK_MEM_STEP 25
-#if defined (CONFIG_PMIC_DA9052)
+#if defined(CONFIG_PMIC_DA9052)
#define DA9052_BUCK_PERI_VOLT_UPPER 3600
#define DA9052_BUCK_PERI_VOLT_LOWER 1800
#define DA9052_BUCK_PERI_STEP_BELOW_3000 50
#define DA9052_BUCK_PERI_STEP_ABOVE_3000 100000
#define DA9052_BUCK_PERI_VALUES_UPTO_3000 24
#define DA9052_BUCK_PERI_VALUES_3000 3000000
-#elif defined (CONFIG_PMIC_DA9053AA) || (CONFIG_PMIC_DA9053Bx)
+#elif defined(CONFIG_PMIC_DA9053AA) || defined(CONFIG_PMIC_DA9053Bx)
#define DA9052_BUCK_PERI_VOLT_UPPER 2500
#define DA9052_BUCK_PERI_VOLT_LOWER 925
#define DA9052_BUCK_PERI_STEP 25
diff --git a/include/linux/mfd/da9052/reg.h b/include/linux/mfd/da9052/reg.h
index 9daaa02e565f..8c4c9dff8fe5 100644
--- a/include/linux/mfd/da9052/reg.h
+++ b/include/linux/mfd/da9052/reg.h
@@ -533,10 +533,10 @@
/* BUCKPERI REGISTER */
#define DA9052_BUCKPERI_BPERICONF (1<<7)
#define DA9052_BUCKPERI_BPERIEN (1<<6)
-#if defined (CONFIG_PMIC_DA9052)
+#if defined(CONFIG_PMIC_DA9052)
#define DA9052_BUCKPERI_BPERIHS (1<<5)
#define DA9052_BUCKPERI_VBPERI (31<<0)
-#elif defined (CONFIG_PMIC_DA9053AA) || (CONFIG_PMIC_DA9053Bx)
+#elif defined(CONFIG_PMIC_DA9053AA) || defined(CONFIG_PMIC_DA9053Bx)
#define DA9052_BUCKPERI_VBPERI (63<<0)
#endif
@@ -663,7 +663,7 @@
#define DA9052_BOOST_BOOSTEN (1<<0)
/* LED COUNT REGISTER */
-#if defined (CONFIG_PMIC_DA9053Bx)
+#if defined(CONFIG_PMIC_DA9053Bx)
#define DA9052_LEDCONT_SELLEDMODE (1<<7)
#endif
#define DA9052_LEDCONT_LED3ICONT (1<<6)