diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/i2c/twl.h | 84 | ||||
-rw-r--r-- | include/linux/mfd/88pm80x.h | 2 | ||||
-rw-r--r-- | include/linux/mfd/abx500.h | 2 | ||||
-rw-r--r-- | include/linux/mfd/abx500/ab8500-sysctrl.h | 5 | ||||
-rw-r--r-- | include/linux/mfd/abx500/ab8500.h | 12 | ||||
-rw-r--r-- | include/linux/mfd/arizona/pdata.h | 12 | ||||
-rw-r--r-- | include/linux/mfd/arizona/registers.h | 16 | ||||
-rw-r--r-- | include/linux/mfd/dbx500-prcmu.h | 12 | ||||
-rw-r--r-- | include/linux/mfd/max8925.h | 3 | ||||
-rw-r--r-- | include/linux/mfd/palmas.h | 52 | ||||
-rw-r--r-- | include/linux/mfd/rtsx_pci.h | 9 | ||||
-rw-r--r-- | include/linux/platform_data/usb-omap.h | 1 | ||||
-rw-r--r-- | include/linux/platform_data/ux500_wdt.h | 19 | ||||
-rw-r--r-- | include/linux/vexpress.h | 8 |
14 files changed, 195 insertions, 42 deletions
diff --git a/include/linux/i2c/twl.h b/include/linux/i2c/twl.h index 1ff54b114efc..488debbef895 100644 --- a/include/linux/i2c/twl.h +++ b/include/linux/i2c/twl.h | |||
@@ -39,51 +39,55 @@ | |||
39 | * address each module uses within a given i2c slave. | 39 | * address each module uses within a given i2c slave. |
40 | */ | 40 | */ |
41 | 41 | ||
42 | /* Module IDs for similar functionalities found in twl4030/twl6030 */ | ||
43 | enum twl_module_ids { | ||
44 | TWL_MODULE_USB, | ||
45 | TWL_MODULE_PIH, | ||
46 | TWL_MODULE_MAIN_CHARGE, | ||
47 | TWL_MODULE_PM_MASTER, | ||
48 | TWL_MODULE_PM_RECEIVER, | ||
49 | |||
50 | TWL_MODULE_RTC, | ||
51 | TWL_MODULE_PWM, | ||
52 | TWL_MODULE_LED, | ||
53 | TWL_MODULE_SECURED_REG, | ||
54 | |||
55 | TWL_MODULE_LAST, | ||
56 | }; | ||
57 | |||
58 | /* Modules only available in twl4030 series */ | ||
42 | enum twl4030_module_ids { | 59 | enum twl4030_module_ids { |
43 | TWL4030_MODULE_USB = 0, /* Slave 0 (i2c address 0x48) */ | 60 | TWL4030_MODULE_AUDIO_VOICE = TWL_MODULE_LAST, |
44 | TWL4030_MODULE_AUDIO_VOICE, /* Slave 1 (i2c address 0x49) */ | ||
45 | TWL4030_MODULE_GPIO, | 61 | TWL4030_MODULE_GPIO, |
46 | TWL4030_MODULE_INTBR, | 62 | TWL4030_MODULE_INTBR, |
47 | TWL4030_MODULE_PIH, | ||
48 | |||
49 | TWL4030_MODULE_TEST, | 63 | TWL4030_MODULE_TEST, |
50 | TWL4030_MODULE_KEYPAD, /* Slave 2 (i2c address 0x4a) */ | 64 | TWL4030_MODULE_KEYPAD, |
65 | |||
51 | TWL4030_MODULE_MADC, | 66 | TWL4030_MODULE_MADC, |
52 | TWL4030_MODULE_INTERRUPTS, | 67 | TWL4030_MODULE_INTERRUPTS, |
53 | TWL4030_MODULE_LED, | ||
54 | |||
55 | TWL4030_MODULE_MAIN_CHARGE, | ||
56 | TWL4030_MODULE_PRECHARGE, | 68 | TWL4030_MODULE_PRECHARGE, |
57 | TWL4030_MODULE_PWM0, | 69 | TWL4030_MODULE_BACKUP, |
58 | TWL4030_MODULE_PWM1, | 70 | TWL4030_MODULE_INT, |
59 | TWL4030_MODULE_PWMA, | ||
60 | 71 | ||
61 | TWL4030_MODULE_PWMB, | ||
62 | TWL5031_MODULE_ACCESSORY, | 72 | TWL5031_MODULE_ACCESSORY, |
63 | TWL5031_MODULE_INTERRUPTS, | 73 | TWL5031_MODULE_INTERRUPTS, |
64 | TWL4030_MODULE_BACKUP, /* Slave 3 (i2c address 0x4b) */ | ||
65 | TWL4030_MODULE_INT, | ||
66 | 74 | ||
67 | TWL4030_MODULE_PM_MASTER, | ||
68 | TWL4030_MODULE_PM_RECEIVER, | ||
69 | TWL4030_MODULE_RTC, | ||
70 | TWL4030_MODULE_SECURED_REG, | ||
71 | TWL4030_MODULE_LAST, | 75 | TWL4030_MODULE_LAST, |
72 | }; | 76 | }; |
73 | 77 | ||
74 | /* Similar functionalities implemented in TWL4030/6030 */ | 78 | /* Modules only available in twl6030 series */ |
75 | #define TWL_MODULE_USB TWL4030_MODULE_USB | 79 | enum twl6030_module_ids { |
76 | #define TWL_MODULE_PIH TWL4030_MODULE_PIH | 80 | TWL6030_MODULE_ID0 = TWL_MODULE_LAST, |
77 | #define TWL_MODULE_MAIN_CHARGE TWL4030_MODULE_MAIN_CHARGE | 81 | TWL6030_MODULE_ID1, |
78 | #define TWL_MODULE_PM_MASTER TWL4030_MODULE_PM_MASTER | 82 | TWL6030_MODULE_ID2, |
79 | #define TWL_MODULE_PM_RECEIVER TWL4030_MODULE_PM_RECEIVER | 83 | TWL6030_MODULE_GPADC, |
80 | #define TWL_MODULE_RTC TWL4030_MODULE_RTC | 84 | TWL6030_MODULE_GASGAUGE, |
81 | #define TWL_MODULE_PWM TWL4030_MODULE_PWM0 | 85 | |
82 | #define TWL_MODULE_LED TWL4030_MODULE_LED | 86 | TWL6030_MODULE_LAST, |
87 | }; | ||
83 | 88 | ||
84 | #define TWL6030_MODULE_ID0 13 | 89 | /* Until the clients has been converted to use TWL_MODULE_LED */ |
85 | #define TWL6030_MODULE_ID1 14 | 90 | #define TWL4030_MODULE_LED TWL_MODULE_LED |
86 | #define TWL6030_MODULE_ID2 15 | ||
87 | 91 | ||
88 | #define GPIO_INTR_OFFSET 0 | 92 | #define GPIO_INTR_OFFSET 0 |
89 | #define KEYPAD_INTR_OFFSET 1 | 93 | #define KEYPAD_INTR_OFFSET 1 |
@@ -171,20 +175,22 @@ TWL_CLASS_IS(4030, TWL4030_CLASS_ID) | |||
171 | TWL_CLASS_IS(6030, TWL6030_CLASS_ID) | 175 | TWL_CLASS_IS(6030, TWL6030_CLASS_ID) |
172 | 176 | ||
173 | /* | 177 | /* |
174 | * Read and write single 8-bit registers | ||
175 | */ | ||
176 | int twl_i2c_write_u8(u8 mod_no, u8 val, u8 reg); | ||
177 | int twl_i2c_read_u8(u8 mod_no, u8 *val, u8 reg); | ||
178 | |||
179 | /* | ||
180 | * Read and write several 8-bit registers at once. | 178 | * Read and write several 8-bit registers at once. |
181 | * | ||
182 | * IMPORTANT: For twl_i2c_write(), allocate num_bytes + 1 | ||
183 | * for the value, and populate your data starting at offset 1. | ||
184 | */ | 179 | */ |
185 | int twl_i2c_write(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes); | 180 | int twl_i2c_write(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes); |
186 | int twl_i2c_read(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes); | 181 | int twl_i2c_read(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes); |
187 | 182 | ||
183 | /* | ||
184 | * Read and write single 8-bit registers | ||
185 | */ | ||
186 | static inline int twl_i2c_write_u8(u8 mod_no, u8 val, u8 reg) { | ||
187 | return twl_i2c_write(mod_no, &val, reg, 1); | ||
188 | } | ||
189 | |||
190 | static inline int twl_i2c_read_u8(u8 mod_no, u8 *val, u8 reg) { | ||
191 | return twl_i2c_read(mod_no, val, reg, 1); | ||
192 | } | ||
193 | |||
188 | int twl_get_type(void); | 194 | int twl_get_type(void); |
189 | int twl_get_version(void); | 195 | int twl_get_version(void); |
190 | int twl_get_hfclk_rate(void); | 196 | int twl_get_hfclk_rate(void); |
diff --git a/include/linux/mfd/88pm80x.h b/include/linux/mfd/88pm80x.h index 478672ed0c3d..e94537befabd 100644 --- a/include/linux/mfd/88pm80x.h +++ b/include/linux/mfd/88pm80x.h | |||
@@ -365,5 +365,5 @@ static inline int pm80x_dev_resume(struct device *dev) | |||
365 | 365 | ||
366 | extern int pm80x_init(struct i2c_client *client, | 366 | extern int pm80x_init(struct i2c_client *client, |
367 | const struct i2c_device_id *id); | 367 | const struct i2c_device_id *id); |
368 | extern int pm80x_deinit(struct i2c_client *client); | 368 | extern int pm80x_deinit(void); |
369 | #endif /* __LINUX_MFD_88PM80X_H */ | 369 | #endif /* __LINUX_MFD_88PM80X_H */ |
diff --git a/include/linux/mfd/abx500.h b/include/linux/mfd/abx500.h index 80e3b8683a84..9ead60bc66b7 100644 --- a/include/linux/mfd/abx500.h +++ b/include/linux/mfd/abx500.h | |||
@@ -311,6 +311,7 @@ int abx500_mask_and_set_register_interruptible(struct device *dev, u8 bank, | |||
311 | int abx500_get_chip_id(struct device *dev); | 311 | int abx500_get_chip_id(struct device *dev); |
312 | int abx500_event_registers_startup_state_get(struct device *dev, u8 *event); | 312 | int abx500_event_registers_startup_state_get(struct device *dev, u8 *event); |
313 | int abx500_startup_irq_enabled(struct device *dev, unsigned int irq); | 313 | int abx500_startup_irq_enabled(struct device *dev, unsigned int irq); |
314 | void abx500_dump_all_banks(void); | ||
314 | 315 | ||
315 | struct abx500_ops { | 316 | struct abx500_ops { |
316 | int (*get_chip_id) (struct device *); | 317 | int (*get_chip_id) (struct device *); |
@@ -321,6 +322,7 @@ struct abx500_ops { | |||
321 | int (*mask_and_set_register) (struct device *, u8, u8, u8, u8); | 322 | int (*mask_and_set_register) (struct device *, u8, u8, u8, u8); |
322 | int (*event_registers_startup_state_get) (struct device *, u8 *); | 323 | int (*event_registers_startup_state_get) (struct device *, u8 *); |
323 | int (*startup_irq_enabled) (struct device *, unsigned int); | 324 | int (*startup_irq_enabled) (struct device *, unsigned int); |
325 | void (*dump_all_banks) (struct device *); | ||
324 | }; | 326 | }; |
325 | 327 | ||
326 | int abx500_register_ops(struct device *core_dev, struct abx500_ops *ops); | 328 | int abx500_register_ops(struct device *core_dev, struct abx500_ops *ops); |
diff --git a/include/linux/mfd/abx500/ab8500-sysctrl.h b/include/linux/mfd/abx500/ab8500-sysctrl.h index 10eb50973c39..ebf12e793db9 100644 --- a/include/linux/mfd/abx500/ab8500-sysctrl.h +++ b/include/linux/mfd/abx500/ab8500-sysctrl.h | |||
@@ -37,6 +37,11 @@ static inline int ab8500_sysctrl_clear(u16 reg, u8 bits) | |||
37 | return ab8500_sysctrl_write(reg, bits, 0); | 37 | return ab8500_sysctrl_write(reg, bits, 0); |
38 | } | 38 | } |
39 | 39 | ||
40 | /* Configuration data for SysClkReq1RfClkBuf - SysClkReq8RfClkBuf */ | ||
41 | struct ab8500_sysctrl_platform_data { | ||
42 | u8 initial_req_buf_config[8]; | ||
43 | }; | ||
44 | |||
40 | /* Registers */ | 45 | /* Registers */ |
41 | #define AB8500_TURNONSTATUS 0x100 | 46 | #define AB8500_TURNONSTATUS 0x100 |
42 | #define AB8500_RESETSTATUS 0x101 | 47 | #define AB8500_RESETSTATUS 0x101 |
diff --git a/include/linux/mfd/abx500/ab8500.h b/include/linux/mfd/abx500/ab8500.h index fc0534483c72..9db0bda446a0 100644 --- a/include/linux/mfd/abx500/ab8500.h +++ b/include/linux/mfd/abx500/ab8500.h | |||
@@ -368,10 +368,12 @@ struct regulator_reg_init; | |||
368 | struct regulator_init_data; | 368 | struct regulator_init_data; |
369 | struct ab8500_gpio_platform_data; | 369 | struct ab8500_gpio_platform_data; |
370 | struct ab8500_codec_platform_data; | 370 | struct ab8500_codec_platform_data; |
371 | struct ab8500_sysctrl_platform_data; | ||
371 | 372 | ||
372 | /** | 373 | /** |
373 | * struct ab8500_platform_data - AB8500 platform data | 374 | * struct ab8500_platform_data - AB8500 platform data |
374 | * @irq_base: start of AB8500 IRQs, AB8500_NR_IRQS will be used | 375 | * @irq_base: start of AB8500 IRQs, AB8500_NR_IRQS will be used |
376 | * @pm_power_off: Should machine pm power off hook be registered or not | ||
375 | * @init: board-specific initialization after detection of ab8500 | 377 | * @init: board-specific initialization after detection of ab8500 |
376 | * @num_regulator_reg_init: number of regulator init registers | 378 | * @num_regulator_reg_init: number of regulator init registers |
377 | * @regulator_reg_init: regulator init registers | 379 | * @regulator_reg_init: regulator init registers |
@@ -380,6 +382,7 @@ struct ab8500_codec_platform_data; | |||
380 | */ | 382 | */ |
381 | struct ab8500_platform_data { | 383 | struct ab8500_platform_data { |
382 | int irq_base; | 384 | int irq_base; |
385 | bool pm_power_off; | ||
383 | void (*init) (struct ab8500 *); | 386 | void (*init) (struct ab8500 *); |
384 | int num_regulator_reg_init; | 387 | int num_regulator_reg_init; |
385 | struct ab8500_regulator_reg_init *regulator_reg_init; | 388 | struct ab8500_regulator_reg_init *regulator_reg_init; |
@@ -387,6 +390,7 @@ struct ab8500_platform_data { | |||
387 | struct regulator_init_data *regulator; | 390 | struct regulator_init_data *regulator; |
388 | struct abx500_gpio_platform_data *gpio; | 391 | struct abx500_gpio_platform_data *gpio; |
389 | struct ab8500_codec_platform_data *codec; | 392 | struct ab8500_codec_platform_data *codec; |
393 | struct ab8500_sysctrl_platform_data *sysctrl; | ||
390 | }; | 394 | }; |
391 | 395 | ||
392 | extern int ab8500_init(struct ab8500 *ab8500, | 396 | extern int ab8500_init(struct ab8500 *ab8500, |
@@ -508,4 +512,12 @@ static inline int is_ab9540_2p0_or_earlier(struct ab8500 *ab) | |||
508 | return (is_ab9540(ab) && (ab->chip_id < AB8500_CUT2P0)); | 512 | return (is_ab9540(ab) && (ab->chip_id < AB8500_CUT2P0)); |
509 | } | 513 | } |
510 | 514 | ||
515 | #ifdef CONFIG_AB8500_DEBUG | ||
516 | void ab8500_dump_all_banks(struct device *dev); | ||
517 | void ab8500_debug_register_interrupt(int line); | ||
518 | #else | ||
519 | static inline void ab8500_dump_all_banks(struct device *dev) {} | ||
520 | static inline void ab8500_debug_register_interrupt(int line) {} | ||
521 | #endif | ||
522 | |||
511 | #endif /* MFD_AB8500_H */ | 523 | #endif /* MFD_AB8500_H */ |
diff --git a/include/linux/mfd/arizona/pdata.h b/include/linux/mfd/arizona/pdata.h index 96d64f2b8d78..455c51d22d6b 100644 --- a/include/linux/mfd/arizona/pdata.h +++ b/include/linux/mfd/arizona/pdata.h | |||
@@ -56,6 +56,8 @@ | |||
56 | #define ARIZONA_DMIC_MICBIAS2 2 | 56 | #define ARIZONA_DMIC_MICBIAS2 2 |
57 | #define ARIZONA_DMIC_MICBIAS3 3 | 57 | #define ARIZONA_DMIC_MICBIAS3 3 |
58 | 58 | ||
59 | #define ARIZONA_MAX_MICBIAS 3 | ||
60 | |||
59 | #define ARIZONA_INMODE_DIFF 0 | 61 | #define ARIZONA_INMODE_DIFF 0 |
60 | #define ARIZONA_INMODE_SE 1 | 62 | #define ARIZONA_INMODE_SE 1 |
61 | #define ARIZONA_INMODE_DMIC 2 | 63 | #define ARIZONA_INMODE_DMIC 2 |
@@ -71,6 +73,13 @@ | |||
71 | 73 | ||
72 | struct regulator_init_data; | 74 | struct regulator_init_data; |
73 | 75 | ||
76 | struct arizona_micbias { | ||
77 | int mV; /** Regulated voltage */ | ||
78 | unsigned int ext_cap:1; /** External capacitor fitted */ | ||
79 | unsigned int discharge:1; /** Actively discharge */ | ||
80 | unsigned int fast_start:1; /** Enable aggressive startup ramp rate */ | ||
81 | }; | ||
82 | |||
74 | struct arizona_micd_config { | 83 | struct arizona_micd_config { |
75 | unsigned int src; | 84 | unsigned int src; |
76 | unsigned int bias; | 85 | unsigned int bias; |
@@ -136,6 +145,9 @@ struct arizona_pdata { | |||
136 | /** Reference voltage for DMIC inputs */ | 145 | /** Reference voltage for DMIC inputs */ |
137 | int dmic_ref[ARIZONA_MAX_INPUT]; | 146 | int dmic_ref[ARIZONA_MAX_INPUT]; |
138 | 147 | ||
148 | /** MICBIAS configurations */ | ||
149 | struct arizona_micbias micbias[ARIZONA_MAX_MICBIAS]; | ||
150 | |||
139 | /** Mode of input structures */ | 151 | /** Mode of input structures */ |
140 | int inmode[ARIZONA_MAX_INPUT]; | 152 | int inmode[ARIZONA_MAX_INPUT]; |
141 | 153 | ||
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h index 188d89abd963..340355136069 100644 --- a/include/linux/mfd/arizona/registers.h +++ b/include/linux/mfd/arizona/registers.h | |||
@@ -984,18 +984,34 @@ | |||
984 | #define ARIZONA_DSP1_STATUS_1 0x1104 | 984 | #define ARIZONA_DSP1_STATUS_1 0x1104 |
985 | #define ARIZONA_DSP1_STATUS_2 0x1105 | 985 | #define ARIZONA_DSP1_STATUS_2 0x1105 |
986 | #define ARIZONA_DSP1_STATUS_3 0x1106 | 986 | #define ARIZONA_DSP1_STATUS_3 0x1106 |
987 | #define ARIZONA_DSP1_SCRATCH_0 0x1140 | ||
988 | #define ARIZONA_DSP1_SCRATCH_1 0x1141 | ||
989 | #define ARIZONA_DSP1_SCRATCH_2 0x1142 | ||
990 | #define ARIZONA_DSP1_SCRATCH_3 0x1143 | ||
987 | #define ARIZONA_DSP2_CONTROL_1 0x1200 | 991 | #define ARIZONA_DSP2_CONTROL_1 0x1200 |
988 | #define ARIZONA_DSP2_CLOCKING_1 0x1201 | 992 | #define ARIZONA_DSP2_CLOCKING_1 0x1201 |
989 | #define ARIZONA_DSP2_STATUS_1 0x1204 | 993 | #define ARIZONA_DSP2_STATUS_1 0x1204 |
990 | #define ARIZONA_DSP2_STATUS_2 0x1205 | 994 | #define ARIZONA_DSP2_STATUS_2 0x1205 |
995 | #define ARIZONA_DSP2_SCRATCH_0 0x1240 | ||
996 | #define ARIZONA_DSP2_SCRATCH_1 0x1241 | ||
997 | #define ARIZONA_DSP2_SCRATCH_2 0x1242 | ||
998 | #define ARIZONA_DSP2_SCRATCH_3 0x1243 | ||
991 | #define ARIZONA_DSP3_CONTROL_1 0x1300 | 999 | #define ARIZONA_DSP3_CONTROL_1 0x1300 |
992 | #define ARIZONA_DSP3_CLOCKING_1 0x1301 | 1000 | #define ARIZONA_DSP3_CLOCKING_1 0x1301 |
993 | #define ARIZONA_DSP3_STATUS_1 0x1304 | 1001 | #define ARIZONA_DSP3_STATUS_1 0x1304 |
994 | #define ARIZONA_DSP3_STATUS_2 0x1305 | 1002 | #define ARIZONA_DSP3_STATUS_2 0x1305 |
1003 | #define ARIZONA_DSP3_SCRATCH_0 0x1340 | ||
1004 | #define ARIZONA_DSP3_SCRATCH_1 0x1341 | ||
1005 | #define ARIZONA_DSP3_SCRATCH_2 0x1342 | ||
1006 | #define ARIZONA_DSP3_SCRATCH_3 0x1343 | ||
995 | #define ARIZONA_DSP4_CONTROL_1 0x1400 | 1007 | #define ARIZONA_DSP4_CONTROL_1 0x1400 |
996 | #define ARIZONA_DSP4_CLOCKING_1 0x1401 | 1008 | #define ARIZONA_DSP4_CLOCKING_1 0x1401 |
997 | #define ARIZONA_DSP4_STATUS_1 0x1404 | 1009 | #define ARIZONA_DSP4_STATUS_1 0x1404 |
998 | #define ARIZONA_DSP4_STATUS_2 0x1405 | 1010 | #define ARIZONA_DSP4_STATUS_2 0x1405 |
1011 | #define ARIZONA_DSP4_SCRATCH_0 0x1440 | ||
1012 | #define ARIZONA_DSP4_SCRATCH_1 0x1441 | ||
1013 | #define ARIZONA_DSP4_SCRATCH_2 0x1442 | ||
1014 | #define ARIZONA_DSP4_SCRATCH_3 0x1443 | ||
999 | 1015 | ||
1000 | /* | 1016 | /* |
1001 | * Field Definitions. | 1017 | * Field Definitions. |
diff --git a/include/linux/mfd/dbx500-prcmu.h b/include/linux/mfd/dbx500-prcmu.h index f8bac7cfc25f..3abcca91eecd 100644 --- a/include/linux/mfd/dbx500-prcmu.h +++ b/include/linux/mfd/dbx500-prcmu.h | |||
@@ -151,6 +151,18 @@ enum prcmu_clock { | |||
151 | }; | 151 | }; |
152 | 152 | ||
153 | /** | 153 | /** |
154 | * enum prcmu_wdog_id - PRCMU watchdog IDs | ||
155 | * @PRCMU_WDOG_ALL: use all timers | ||
156 | * @PRCMU_WDOG_CPU1: use first CPU timer only | ||
157 | * @PRCMU_WDOG_CPU2: use second CPU timer conly | ||
158 | */ | ||
159 | enum prcmu_wdog_id { | ||
160 | PRCMU_WDOG_ALL = 0x00, | ||
161 | PRCMU_WDOG_CPU1 = 0x01, | ||
162 | PRCMU_WDOG_CPU2 = 0x02, | ||
163 | }; | ||
164 | |||
165 | /** | ||
154 | * enum ape_opp - APE OPP states definition | 166 | * enum ape_opp - APE OPP states definition |
155 | * @APE_OPP_INIT: | 167 | * @APE_OPP_INIT: |
156 | * @APE_NO_CHANGE: The APE operating point is unchanged | 168 | * @APE_NO_CHANGE: The APE operating point is unchanged |
diff --git a/include/linux/mfd/max8925.h b/include/linux/mfd/max8925.h index 74d8e2969630..ce8502e9e7dc 100644 --- a/include/linux/mfd/max8925.h +++ b/include/linux/mfd/max8925.h | |||
@@ -190,6 +190,8 @@ enum { | |||
190 | MAX8925_NR_IRQS, | 190 | MAX8925_NR_IRQS, |
191 | }; | 191 | }; |
192 | 192 | ||
193 | |||
194 | |||
193 | struct max8925_chip { | 195 | struct max8925_chip { |
194 | struct device *dev; | 196 | struct device *dev; |
195 | struct i2c_client *i2c; | 197 | struct i2c_client *i2c; |
@@ -201,7 +203,6 @@ struct max8925_chip { | |||
201 | int irq_base; | 203 | int irq_base; |
202 | int core_irq; | 204 | int core_irq; |
203 | int tsc_irq; | 205 | int tsc_irq; |
204 | |||
205 | unsigned int wakeup_flag; | 206 | unsigned int wakeup_flag; |
206 | }; | 207 | }; |
207 | 208 | ||
diff --git a/include/linux/mfd/palmas.h b/include/linux/mfd/palmas.h index 29f6616e12f0..a4d13d7cd001 100644 --- a/include/linux/mfd/palmas.h +++ b/include/linux/mfd/palmas.h | |||
@@ -2789,4 +2789,56 @@ enum usb_irq_events { | |||
2789 | #define PALMAS_GPADC_TRIM15 0xE | 2789 | #define PALMAS_GPADC_TRIM15 0xE |
2790 | #define PALMAS_GPADC_TRIM16 0xF | 2790 | #define PALMAS_GPADC_TRIM16 0xF |
2791 | 2791 | ||
2792 | static inline int palmas_read(struct palmas *palmas, unsigned int base, | ||
2793 | unsigned int reg, unsigned int *val) | ||
2794 | { | ||
2795 | unsigned int addr = PALMAS_BASE_TO_REG(base, reg); | ||
2796 | int slave_id = PALMAS_BASE_TO_SLAVE(base); | ||
2797 | |||
2798 | return regmap_read(palmas->regmap[slave_id], addr, val); | ||
2799 | } | ||
2800 | |||
2801 | static inline int palmas_write(struct palmas *palmas, unsigned int base, | ||
2802 | unsigned int reg, unsigned int value) | ||
2803 | { | ||
2804 | unsigned int addr = PALMAS_BASE_TO_REG(base, reg); | ||
2805 | int slave_id = PALMAS_BASE_TO_SLAVE(base); | ||
2806 | |||
2807 | return regmap_write(palmas->regmap[slave_id], addr, value); | ||
2808 | } | ||
2809 | |||
2810 | static inline int palmas_bulk_write(struct palmas *palmas, unsigned int base, | ||
2811 | unsigned int reg, const void *val, size_t val_count) | ||
2812 | { | ||
2813 | unsigned int addr = PALMAS_BASE_TO_REG(base, reg); | ||
2814 | int slave_id = PALMAS_BASE_TO_SLAVE(base); | ||
2815 | |||
2816 | return regmap_bulk_write(palmas->regmap[slave_id], addr, | ||
2817 | val, val_count); | ||
2818 | } | ||
2819 | |||
2820 | static inline int palmas_bulk_read(struct palmas *palmas, unsigned int base, | ||
2821 | unsigned int reg, void *val, size_t val_count) | ||
2822 | { | ||
2823 | unsigned int addr = PALMAS_BASE_TO_REG(base, reg); | ||
2824 | int slave_id = PALMAS_BASE_TO_SLAVE(base); | ||
2825 | |||
2826 | return regmap_bulk_read(palmas->regmap[slave_id], addr, | ||
2827 | val, val_count); | ||
2828 | } | ||
2829 | |||
2830 | static inline int palmas_update_bits(struct palmas *palmas, unsigned int base, | ||
2831 | unsigned int reg, unsigned int mask, unsigned int val) | ||
2832 | { | ||
2833 | unsigned int addr = PALMAS_BASE_TO_REG(base, reg); | ||
2834 | int slave_id = PALMAS_BASE_TO_SLAVE(base); | ||
2835 | |||
2836 | return regmap_update_bits(palmas->regmap[slave_id], addr, mask, val); | ||
2837 | } | ||
2838 | |||
2839 | static inline int palmas_irq_get_virq(struct palmas *palmas, int irq) | ||
2840 | { | ||
2841 | return regmap_irq_get_virq(palmas->irq_data, irq); | ||
2842 | } | ||
2843 | |||
2792 | #endif /* __LINUX_MFD_PALMAS_H */ | 2844 | #endif /* __LINUX_MFD_PALMAS_H */ |
diff --git a/include/linux/mfd/rtsx_pci.h b/include/linux/mfd/rtsx_pci.h index 4b117a3f54d4..26ea7f1b7caf 100644 --- a/include/linux/mfd/rtsx_pci.h +++ b/include/linux/mfd/rtsx_pci.h | |||
@@ -465,7 +465,7 @@ | |||
465 | #define SD_RSP_TYPE_R6 0x01 | 465 | #define SD_RSP_TYPE_R6 0x01 |
466 | #define SD_RSP_TYPE_R7 0x01 | 466 | #define SD_RSP_TYPE_R7 0x01 |
467 | 467 | ||
468 | /* SD_CONFIURE3 */ | 468 | /* SD_CONFIGURE3 */ |
469 | #define SD_RSP_80CLK_TIMEOUT_EN 0x01 | 469 | #define SD_RSP_80CLK_TIMEOUT_EN 0x01 |
470 | 470 | ||
471 | /* Card Transfer Reset Register */ | 471 | /* Card Transfer Reset Register */ |
@@ -581,8 +581,11 @@ | |||
581 | #define CARD_GPIO_DIR 0xFD57 | 581 | #define CARD_GPIO_DIR 0xFD57 |
582 | #define CARD_GPIO 0xFD58 | 582 | #define CARD_GPIO 0xFD58 |
583 | #define CARD_DATA_SOURCE 0xFD5B | 583 | #define CARD_DATA_SOURCE 0xFD5B |
584 | #define SD30_CLK_DRIVE_SEL 0xFD5A | ||
584 | #define CARD_SELECT 0xFD5C | 585 | #define CARD_SELECT 0xFD5C |
585 | #define SD30_DRIVE_SEL 0xFD5E | 586 | #define SD30_DRIVE_SEL 0xFD5E |
587 | #define SD30_CMD_DRIVE_SEL 0xFD5E | ||
588 | #define SD30_DAT_DRIVE_SEL 0xFD5F | ||
586 | #define CARD_CLK_EN 0xFD69 | 589 | #define CARD_CLK_EN 0xFD69 |
587 | #define SDIO_CTRL 0xFD6B | 590 | #define SDIO_CTRL 0xFD6B |
588 | #define CD_PAD_CTL 0xFD73 | 591 | #define CD_PAD_CTL 0xFD73 |
@@ -655,6 +658,8 @@ | |||
655 | #define MSGTXDATA3 0xFE47 | 658 | #define MSGTXDATA3 0xFE47 |
656 | #define MSGTXCTL 0xFE48 | 659 | #define MSGTXCTL 0xFE48 |
657 | #define PETXCFG 0xFE49 | 660 | #define PETXCFG 0xFE49 |
661 | #define LTR_CTL 0xFE4A | ||
662 | #define OBFF_CFG 0xFE4C | ||
658 | 663 | ||
659 | #define CDRESUMECTL 0xFE52 | 664 | #define CDRESUMECTL 0xFE52 |
660 | #define WAKE_SEL_CTL 0xFE54 | 665 | #define WAKE_SEL_CTL 0xFE54 |
@@ -735,6 +740,7 @@ struct rtsx_pcr { | |||
735 | 740 | ||
736 | unsigned int card_inserted; | 741 | unsigned int card_inserted; |
737 | unsigned int card_removed; | 742 | unsigned int card_removed; |
743 | unsigned int card_exist; | ||
738 | 744 | ||
739 | struct delayed_work carddet_work; | 745 | struct delayed_work carddet_work; |
740 | struct delayed_work idle_work; | 746 | struct delayed_work idle_work; |
@@ -799,6 +805,7 @@ int rtsx_pci_switch_clock(struct rtsx_pcr *pcr, unsigned int card_clock, | |||
799 | u8 ssc_depth, bool initial_mode, bool double_clk, bool vpclk); | 805 | u8 ssc_depth, bool initial_mode, bool double_clk, bool vpclk); |
800 | int rtsx_pci_card_power_on(struct rtsx_pcr *pcr, int card); | 806 | int rtsx_pci_card_power_on(struct rtsx_pcr *pcr, int card); |
801 | int rtsx_pci_card_power_off(struct rtsx_pcr *pcr, int card); | 807 | int rtsx_pci_card_power_off(struct rtsx_pcr *pcr, int card); |
808 | int rtsx_pci_card_exclusive_check(struct rtsx_pcr *pcr, int card); | ||
802 | int rtsx_pci_switch_output_voltage(struct rtsx_pcr *pcr, u8 voltage); | 809 | int rtsx_pci_switch_output_voltage(struct rtsx_pcr *pcr, u8 voltage); |
803 | unsigned int rtsx_pci_card_exist(struct rtsx_pcr *pcr); | 810 | unsigned int rtsx_pci_card_exist(struct rtsx_pcr *pcr); |
804 | void rtsx_pci_complete_unfinished_transfer(struct rtsx_pcr *pcr); | 811 | void rtsx_pci_complete_unfinished_transfer(struct rtsx_pcr *pcr); |
diff --git a/include/linux/platform_data/usb-omap.h b/include/linux/platform_data/usb-omap.h index e697c85ad3bc..fa579b4c666b 100644 --- a/include/linux/platform_data/usb-omap.h +++ b/include/linux/platform_data/usb-omap.h | |||
@@ -55,6 +55,7 @@ struct ohci_hcd_omap_platform_data { | |||
55 | }; | 55 | }; |
56 | 56 | ||
57 | struct usbhs_omap_platform_data { | 57 | struct usbhs_omap_platform_data { |
58 | int nports; | ||
58 | enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS]; | 59 | enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS]; |
59 | int reset_gpio_port[OMAP3_HS_USB_PORTS]; | 60 | int reset_gpio_port[OMAP3_HS_USB_PORTS]; |
60 | struct regulator *regulator[OMAP3_HS_USB_PORTS]; | 61 | struct regulator *regulator[OMAP3_HS_USB_PORTS]; |
diff --git a/include/linux/platform_data/ux500_wdt.h b/include/linux/platform_data/ux500_wdt.h new file mode 100644 index 000000000000..1689ff4c3bfd --- /dev/null +++ b/include/linux/platform_data/ux500_wdt.h | |||
@@ -0,0 +1,19 @@ | |||
1 | /* | ||
2 | * Copyright (C) ST Ericsson SA 2011 | ||
3 | * | ||
4 | * License Terms: GNU General Public License v2 | ||
5 | * | ||
6 | * STE Ux500 Watchdog platform data | ||
7 | */ | ||
8 | #ifndef __UX500_WDT_H | ||
9 | #define __UX500_WDT_H | ||
10 | |||
11 | /** | ||
12 | * struct ux500_wdt_data | ||
13 | */ | ||
14 | struct ux500_wdt_data { | ||
15 | unsigned int timeout; | ||
16 | bool has_28_bits_resolution; | ||
17 | }; | ||
18 | |||
19 | #endif /* __UX500_WDT_H */ | ||
diff --git a/include/linux/vexpress.h b/include/linux/vexpress.h index c52215ff4245..75818744ab59 100644 --- a/include/linux/vexpress.h +++ b/include/linux/vexpress.h | |||
@@ -27,6 +27,14 @@ | |||
27 | #define VEXPRESS_GPIO_MMC_CARDIN 0 | 27 | #define VEXPRESS_GPIO_MMC_CARDIN 0 |
28 | #define VEXPRESS_GPIO_MMC_WPROT 1 | 28 | #define VEXPRESS_GPIO_MMC_WPROT 1 |
29 | #define VEXPRESS_GPIO_FLASH_WPn 2 | 29 | #define VEXPRESS_GPIO_FLASH_WPn 2 |
30 | #define VEXPRESS_GPIO_LED0 3 | ||
31 | #define VEXPRESS_GPIO_LED1 4 | ||
32 | #define VEXPRESS_GPIO_LED2 5 | ||
33 | #define VEXPRESS_GPIO_LED3 6 | ||
34 | #define VEXPRESS_GPIO_LED4 7 | ||
35 | #define VEXPRESS_GPIO_LED5 8 | ||
36 | #define VEXPRESS_GPIO_LED6 9 | ||
37 | #define VEXPRESS_GPIO_LED7 10 | ||
30 | 38 | ||
31 | #define VEXPRESS_RES_FUNC(_site, _func) \ | 39 | #define VEXPRESS_RES_FUNC(_site, _func) \ |
32 | { \ | 40 | { \ |