1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * tps65910.h  --  TI TPS6591x
4 *
5 * Copyright 2010-2011 Texas Instruments Inc.
6 *
7 * Author: Graeme Gregory <gg@slimlogic.co.uk>
8 * Author: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>
9 * Author: Arnaud Deconinck <a-deconinck@ti.com>
10 */
11
12#ifndef __LINUX_MFD_TPS65910_H
13#define __LINUX_MFD_TPS65910_H
14
15#include <linux/gpio.h>
16#include <linux/regmap.h>
17
18/* TPS chip id list */
19#define TPS65910			0
20#define TPS65911			1
21
22/* TPS regulator type list */
23#define REGULATOR_LDO			0
24#define REGULATOR_DCDC			1
25
26/*
27 * List of registers for component TPS65910
28 *
29 */
30
31#define TPS65910_SECONDS				0x0
32#define TPS65910_MINUTES				0x1
33#define TPS65910_HOURS					0x2
34#define TPS65910_DAYS					0x3
35#define TPS65910_MONTHS					0x4
36#define TPS65910_YEARS					0x5
37#define TPS65910_WEEKS					0x6
38#define TPS65910_ALARM_SECONDS				0x8
39#define TPS65910_ALARM_MINUTES				0x9
40#define TPS65910_ALARM_HOURS				0xA
41#define TPS65910_ALARM_DAYS				0xB
42#define TPS65910_ALARM_MONTHS				0xC
43#define TPS65910_ALARM_YEARS				0xD
44#define TPS65910_RTC_CTRL				0x10
45#define TPS65910_RTC_STATUS				0x11
46#define TPS65910_RTC_INTERRUPTS				0x12
47#define TPS65910_RTC_COMP_LSB				0x13
48#define TPS65910_RTC_COMP_MSB				0x14
49#define TPS65910_RTC_RES_PROG				0x15
50#define TPS65910_RTC_RESET_STATUS			0x16
51#define TPS65910_BCK1					0x17
52#define TPS65910_BCK2					0x18
53#define TPS65910_BCK3					0x19
54#define TPS65910_BCK4					0x1A
55#define TPS65910_BCK5					0x1B
56#define TPS65910_PUADEN					0x1C
57#define TPS65910_REF					0x1D
58#define TPS65910_VRTC					0x1E
59#define TPS65910_VIO					0x20
60#define TPS65910_VDD1					0x21
61#define TPS65910_VDD1_OP				0x22
62#define TPS65910_VDD1_SR				0x23
63#define TPS65910_VDD2					0x24
64#define TPS65910_VDD2_OP				0x25
65#define TPS65910_VDD2_SR				0x26
66#define TPS65910_VDD3					0x27
67#define TPS65910_VDIG1					0x30
68#define TPS65910_VDIG2					0x31
69#define TPS65910_VAUX1					0x32
70#define TPS65910_VAUX2					0x33
71#define TPS65910_VAUX33					0x34
72#define TPS65910_VMMC					0x35
73#define TPS65910_VPLL					0x36
74#define TPS65910_VDAC					0x37
75#define TPS65910_THERM					0x38
76#define TPS65910_BBCH					0x39
77#define TPS65910_DCDCCTRL				0x3E
78#define TPS65910_DEVCTRL				0x3F
79#define TPS65910_DEVCTRL2				0x40
80#define TPS65910_SLEEP_KEEP_LDO_ON			0x41
81#define TPS65910_SLEEP_KEEP_RES_ON			0x42
82#define TPS65910_SLEEP_SET_LDO_OFF			0x43
83#define TPS65910_SLEEP_SET_RES_OFF			0x44
84#define TPS65910_EN1_LDO_ASS				0x45
85#define TPS65910_EN1_SMPS_ASS				0x46
86#define TPS65910_EN2_LDO_ASS				0x47
87#define TPS65910_EN2_SMPS_ASS				0x48
88#define TPS65910_EN3_LDO_ASS				0x49
89#define TPS65910_SPARE					0x4A
90#define TPS65910_INT_STS				0x50
91#define TPS65910_INT_MSK				0x51
92#define TPS65910_INT_STS2				0x52
93#define TPS65910_INT_MSK2				0x53
94#define TPS65910_INT_STS3				0x54
95#define TPS65910_INT_MSK3				0x55
96#define TPS65910_GPIO0					0x60
97#define TPS65910_GPIO1					0x61
98#define TPS65910_GPIO2					0x62
99#define TPS65910_GPIO3					0x63
100#define TPS65910_GPIO4					0x64
101#define TPS65910_GPIO5					0x65
102#define TPS65910_GPIO6					0x66
103#define TPS65910_GPIO7					0x67
104#define TPS65910_GPIO8					0x68
105#define TPS65910_JTAGVERNUM				0x80
106#define TPS65910_MAX_REGISTER				0x80
107
108/*
109 * List of registers specific to TPS65911
110 */
111#define TPS65911_VDDCTRL				0x27
112#define TPS65911_VDDCTRL_OP				0x28
113#define TPS65911_VDDCTRL_SR				0x29
114#define TPS65911_LDO1					0x30
115#define TPS65911_LDO2					0x31
116#define TPS65911_LDO5					0x32
117#define TPS65911_LDO8					0x33
118#define TPS65911_LDO7					0x34
119#define TPS65911_LDO6					0x35
120#define TPS65911_LDO4					0x36
121#define TPS65911_LDO3					0x37
122#define TPS65911_VMBCH					0x6A
123#define TPS65911_VMBCH2					0x6B
124
125/*
126 * List of register bitfields for component TPS65910
127 *
128 */
129
130/* RTC_CTRL_REG bitfields */
131#define TPS65910_RTC_CTRL_STOP_RTC			0x01 /*0=stop, 1=run */
132#define TPS65910_RTC_CTRL_AUTO_COMP			0x04
133#define TPS65910_RTC_CTRL_GET_TIME			0x40
134
135/* RTC_STATUS_REG bitfields */
136#define TPS65910_RTC_STATUS_ALARM               0x40
137
138/* RTC_INTERRUPTS_REG bitfields */
139#define TPS65910_RTC_INTERRUPTS_EVERY           0x03
140#define TPS65910_RTC_INTERRUPTS_IT_ALARM        0x08
141
142/*Register BCK1  (0x80) register.RegisterDescription */
143#define BCK1_BCKUP_MASK					0xFF
144#define BCK1_BCKUP_SHIFT				0
145
146
147/*Register BCK2  (0x80) register.RegisterDescription */
148#define BCK2_BCKUP_MASK					0xFF
149#define BCK2_BCKUP_SHIFT				0
150
151
152/*Register BCK3  (0x80) register.RegisterDescription */
153#define BCK3_BCKUP_MASK					0xFF
154#define BCK3_BCKUP_SHIFT				0
155
156
157/*Register BCK4  (0x80) register.RegisterDescription */
158#define BCK4_BCKUP_MASK					0xFF
159#define BCK4_BCKUP_SHIFT				0
160
161
162/*Register BCK5  (0x80) register.RegisterDescription */
163#define BCK5_BCKUP_MASK					0xFF
164#define BCK5_BCKUP_SHIFT				0
165
166
167/*Register PUADEN  (0x80) register.RegisterDescription */
168#define PUADEN_EN3P_MASK				0x80
169#define PUADEN_EN3P_SHIFT				7
170#define PUADEN_I2CCTLP_MASK				0x40
171#define PUADEN_I2CCTLP_SHIFT				6
172#define PUADEN_I2CSRP_MASK				0x20
173#define PUADEN_I2CSRP_SHIFT				5
174#define PUADEN_PWRONP_MASK				0x10
175#define PUADEN_PWRONP_SHIFT				4
176#define PUADEN_SLEEPP_MASK				0x08
177#define PUADEN_SLEEPP_SHIFT				3
178#define PUADEN_PWRHOLDP_MASK				0x04
179#define PUADEN_PWRHOLDP_SHIFT				2
180#define PUADEN_BOOT1P_MASK				0x02
181#define PUADEN_BOOT1P_SHIFT				1
182#define PUADEN_BOOT0P_MASK				0x01
183#define PUADEN_BOOT0P_SHIFT				0
184
185
186/*Register REF	(0x80) register.RegisterDescription */
187#define REF_VMBCH_SEL_MASK				0x0C
188#define REF_VMBCH_SEL_SHIFT				2
189#define REF_ST_MASK					0x03
190#define REF_ST_SHIFT					0
191
192
193/*Register VRTC  (0x80) register.RegisterDescription */
194#define VRTC_VRTC_OFFMASK_MASK				0x08
195#define VRTC_VRTC_OFFMASK_SHIFT				3
196#define VRTC_ST_MASK					0x03
197#define VRTC_ST_SHIFT					0
198
199
200/*Register VIO	(0x80) register.RegisterDescription */
201#define VIO_ILMAX_MASK					0xC0
202#define VIO_ILMAX_SHIFT					6
203#define VIO_SEL_MASK					0x0C
204#define VIO_SEL_SHIFT					2
205#define VIO_ST_MASK					0x03
206#define VIO_ST_SHIFT					0
207
208
209/*Register VDD1  (0x80) register.RegisterDescription */
210#define VDD1_VGAIN_SEL_MASK				0xC0
211#define VDD1_VGAIN_SEL_SHIFT				6
212#define VDD1_ILMAX_MASK					0x20
213#define VDD1_ILMAX_SHIFT				5
214#define VDD1_TSTEP_MASK					0x1C
215#define VDD1_TSTEP_SHIFT				2
216#define VDD1_ST_MASK					0x03
217#define VDD1_ST_SHIFT					0
218
219
220/*Register VDD1_OP  (0x80) register.RegisterDescription */
221#define VDD1_OP_CMD_MASK				0x80
222#define VDD1_OP_CMD_SHIFT				7
223#define VDD1_OP_SEL_MASK				0x7F
224#define VDD1_OP_SEL_SHIFT				0
225
226
227/*Register VDD1_SR  (0x80) register.RegisterDescription */
228#define VDD1_SR_SEL_MASK				0x7F
229#define VDD1_SR_SEL_SHIFT				0
230
231
232/*Register VDD2  (0x80) register.RegisterDescription */
233#define VDD2_VGAIN_SEL_MASK				0xC0
234#define VDD2_VGAIN_SEL_SHIFT				6
235#define VDD2_ILMAX_MASK					0x20
236#define VDD2_ILMAX_SHIFT				5
237#define VDD2_TSTEP_MASK					0x1C
238#define VDD2_TSTEP_SHIFT				2
239#define VDD2_ST_MASK					0x03
240#define VDD2_ST_SHIFT					0
241
242
243/*Register VDD2_OP  (0x80) register.RegisterDescription */
244#define VDD2_OP_CMD_MASK				0x80
245#define VDD2_OP_CMD_SHIFT				7
246#define VDD2_OP_SEL_MASK				0x7F
247#define VDD2_OP_SEL_SHIFT				0
248
249/*Register VDD2_SR  (0x80) register.RegisterDescription */
250#define VDD2_SR_SEL_MASK				0x7F
251#define VDD2_SR_SEL_SHIFT				0
252
253
254/*Registers VDD1, VDD2 voltage values definitions */
255#define VDD1_2_NUM_VOLT_FINE				73
256#define VDD1_2_NUM_VOLT_COARSE				3
257#define VDD1_2_MIN_VOLT					6000
258#define VDD1_2_OFFSET					125
259
260
261/*Register VDD3  (0x80) register.RegisterDescription */
262#define VDD3_CKINEN_MASK				0x04
263#define VDD3_CKINEN_SHIFT				2
264#define VDD3_ST_MASK					0x03
265#define VDD3_ST_SHIFT					0
266#define VDDCTRL_MIN_VOLT				6000
267#define VDDCTRL_OFFSET					125
268
269/*Registers VDIG (0x80) to VDAC register.RegisterDescription */
270#define LDO_SEL_MASK					0x0C
271#define LDO_SEL_SHIFT					2
272#define LDO_ST_MASK					0x03
273#define LDO_ST_SHIFT					0
274#define LDO_ST_ON_BIT					0x01
275#define LDO_ST_MODE_BIT					0x02
276
277
278/* Registers LDO1 to LDO8 in tps65910 */
279#define LDO1_SEL_MASK					0xFC
280#define LDO3_SEL_MASK					0x7C
281#define LDO_MIN_VOLT					1000
282#define LDO_MAX_VOLT					3300
283
284
285/*Register VDIG1  (0x80) register.RegisterDescription */
286#define VDIG1_SEL_MASK					0x0C
287#define VDIG1_SEL_SHIFT					2
288#define VDIG1_ST_MASK					0x03
289#define VDIG1_ST_SHIFT					0
290
291
292/*Register VDIG2  (0x80) register.RegisterDescription */
293#define VDIG2_SEL_MASK					0x0C
294#define VDIG2_SEL_SHIFT					2
295#define VDIG2_ST_MASK					0x03
296#define VDIG2_ST_SHIFT					0
297
298
299/*Register VAUX1  (0x80) register.RegisterDescription */
300#define VAUX1_SEL_MASK					0x0C
301#define VAUX1_SEL_SHIFT					2
302#define VAUX1_ST_MASK					0x03
303#define VAUX1_ST_SHIFT					0
304
305
306/*Register VAUX2  (0x80) register.RegisterDescription */
307#define VAUX2_SEL_MASK					0x0C
308#define VAUX2_SEL_SHIFT					2
309#define VAUX2_ST_MASK					0x03
310#define VAUX2_ST_SHIFT					0
311
312
313/*Register VAUX33  (0x80) register.RegisterDescription */
314#define VAUX33_SEL_MASK					0x0C
315#define VAUX33_SEL_SHIFT				2
316#define VAUX33_ST_MASK					0x03
317#define VAUX33_ST_SHIFT					0
318
319
320/*Register VMMC  (0x80) register.RegisterDescription */
321#define VMMC_SEL_MASK					0x0C
322#define VMMC_SEL_SHIFT					2
323#define VMMC_ST_MASK					0x03
324#define VMMC_ST_SHIFT					0
325
326
327/*Register VPLL  (0x80) register.RegisterDescription */
328#define VPLL_SEL_MASK					0x0C
329#define VPLL_SEL_SHIFT					2
330#define VPLL_ST_MASK					0x03
331#define VPLL_ST_SHIFT					0
332
333
334/*Register VDAC  (0x80) register.RegisterDescription */
335#define VDAC_SEL_MASK					0x0C
336#define VDAC_SEL_SHIFT					2
337#define VDAC_ST_MASK					0x03
338#define VDAC_ST_SHIFT					0
339
340
341/*Register THERM  (0x80) register.RegisterDescription */
342#define THERM_THERM_HD_MASK				0x20
343#define THERM_THERM_HD_SHIFT				5
344#define THERM_THERM_TS_MASK				0x10
345#define THERM_THERM_TS_SHIFT				4
346#define THERM_THERM_HDSEL_MASK				0x0C
347#define THERM_THERM_HDSEL_SHIFT				2
348#define THERM_RSVD1_MASK				0x02
349#define THERM_RSVD1_SHIFT				1
350#define THERM_THERM_STATE_MASK				0x01
351#define THERM_THERM_STATE_SHIFT				0
352
353
354/*Register BBCH  (0x80) register.RegisterDescription */
355#define BBCH_BBSEL_MASK					0x06
356#define BBCH_BBSEL_SHIFT				1
357
358
359/*Register DCDCCTRL  (0x80) register.RegisterDescription */
360#define DCDCCTRL_VDD2_PSKIP_MASK			0x20
361#define DCDCCTRL_VDD2_PSKIP_SHIFT			5
362#define DCDCCTRL_VDD1_PSKIP_MASK			0x10
363#define DCDCCTRL_VDD1_PSKIP_SHIFT			4
364#define DCDCCTRL_VIO_PSKIP_MASK				0x08
365#define DCDCCTRL_VIO_PSKIP_SHIFT			3
366#define DCDCCTRL_DCDCCKEXT_MASK				0x04
367#define DCDCCTRL_DCDCCKEXT_SHIFT			2
368#define DCDCCTRL_DCDCCKSYNC_MASK			0x03
369#define DCDCCTRL_DCDCCKSYNC_SHIFT			0
370
371
372/*Register DEVCTRL  (0x80) register.RegisterDescription */
373#define DEVCTRL_PWR_OFF_MASK				0x80
374#define DEVCTRL_PWR_OFF_SHIFT				7
375#define DEVCTRL_RTC_PWDN_MASK				0x40
376#define DEVCTRL_RTC_PWDN_SHIFT				6
377#define DEVCTRL_CK32K_CTRL_MASK				0x20
378#define DEVCTRL_CK32K_CTRL_SHIFT			5
379#define DEVCTRL_SR_CTL_I2C_SEL_MASK			0x10
380#define DEVCTRL_SR_CTL_I2C_SEL_SHIFT			4
381#define DEVCTRL_DEV_OFF_RST_MASK			0x08
382#define DEVCTRL_DEV_OFF_RST_SHIFT			3
383#define DEVCTRL_DEV_ON_MASK				0x04
384#define DEVCTRL_DEV_ON_SHIFT				2
385#define DEVCTRL_DEV_SLP_MASK				0x02
386#define DEVCTRL_DEV_SLP_SHIFT				1
387#define DEVCTRL_DEV_OFF_MASK				0x01
388#define DEVCTRL_DEV_OFF_SHIFT				0
389
390
391/*Register DEVCTRL2  (0x80) register.RegisterDescription */
392#define DEVCTRL2_TSLOT_LENGTH_MASK			0x30
393#define DEVCTRL2_TSLOT_LENGTH_SHIFT			4
394#define DEVCTRL2_SLEEPSIG_POL_MASK			0x08
395#define DEVCTRL2_SLEEPSIG_POL_SHIFT			3
396#define DEVCTRL2_PWON_LP_OFF_MASK			0x04
397#define DEVCTRL2_PWON_LP_OFF_SHIFT			2
398#define DEVCTRL2_PWON_LP_RST_MASK			0x02
399#define DEVCTRL2_PWON_LP_RST_SHIFT			1
400#define DEVCTRL2_IT_POL_MASK				0x01
401#define DEVCTRL2_IT_POL_SHIFT				0
402
403
404/*Register SLEEP_KEEP_LDO_ON  (0x80) register.RegisterDescription */
405#define SLEEP_KEEP_LDO_ON_VDAC_KEEPON_MASK		0x80
406#define SLEEP_KEEP_LDO_ON_VDAC_KEEPON_SHIFT		7
407#define SLEEP_KEEP_LDO_ON_VPLL_KEEPON_MASK		0x40
408#define SLEEP_KEEP_LDO_ON_VPLL_KEEPON_SHIFT		6
409#define SLEEP_KEEP_LDO_ON_VAUX33_KEEPON_MASK		0x20
410#define SLEEP_KEEP_LDO_ON_VAUX33_KEEPON_SHIFT		5
411#define SLEEP_KEEP_LDO_ON_VAUX2_KEEPON_MASK		0x10
412#define SLEEP_KEEP_LDO_ON_VAUX2_KEEPON_SHIFT		4
413#define SLEEP_KEEP_LDO_ON_VAUX1_KEEPON_MASK		0x08
414#define SLEEP_KEEP_LDO_ON_VAUX1_KEEPON_SHIFT		3
415#define SLEEP_KEEP_LDO_ON_VDIG2_KEEPON_MASK		0x04
416#define SLEEP_KEEP_LDO_ON_VDIG2_KEEPON_SHIFT		2
417#define SLEEP_KEEP_LDO_ON_VDIG1_KEEPON_MASK		0x02
418#define SLEEP_KEEP_LDO_ON_VDIG1_KEEPON_SHIFT		1
419#define SLEEP_KEEP_LDO_ON_VMMC_KEEPON_MASK		0x01
420#define SLEEP_KEEP_LDO_ON_VMMC_KEEPON_SHIFT		0
421
422
423/*Register SLEEP_KEEP_RES_ON  (0x80) register.RegisterDescription */
424#define SLEEP_KEEP_RES_ON_THERM_KEEPON_MASK		0x80
425#define SLEEP_KEEP_RES_ON_THERM_KEEPON_SHIFT		7
426#define SLEEP_KEEP_RES_ON_CLKOUT32K_KEEPON_MASK		0x40
427#define SLEEP_KEEP_RES_ON_CLKOUT32K_KEEPON_SHIFT	6
428#define SLEEP_KEEP_RES_ON_VRTC_KEEPON_MASK		0x20
429#define SLEEP_KEEP_RES_ON_VRTC_KEEPON_SHIFT		5
430#define SLEEP_KEEP_RES_ON_I2CHS_KEEPON_MASK		0x10
431#define SLEEP_KEEP_RES_ON_I2CHS_KEEPON_SHIFT		4
432#define SLEEP_KEEP_RES_ON_VDD3_KEEPON_MASK		0x08
433#define SLEEP_KEEP_RES_ON_VDD3_KEEPON_SHIFT		3
434#define SLEEP_KEEP_RES_ON_VDD2_KEEPON_MASK		0x04
435#define SLEEP_KEEP_RES_ON_VDD2_KEEPON_SHIFT		2
436#define SLEEP_KEEP_RES_ON_VDD1_KEEPON_MASK		0x02
437#define SLEEP_KEEP_RES_ON_VDD1_KEEPON_SHIFT		1
438#define SLEEP_KEEP_RES_ON_VIO_KEEPON_MASK		0x01
439#define SLEEP_KEEP_RES_ON_VIO_KEEPON_SHIFT		0
440
441
442/*Register SLEEP_SET_LDO_OFF  (0x80) register.RegisterDescription */
443#define SLEEP_SET_LDO_OFF_VDAC_SETOFF_MASK		0x80
444#define SLEEP_SET_LDO_OFF_VDAC_SETOFF_SHIFT		7
445#define SLEEP_SET_LDO_OFF_VPLL_SETOFF_MASK		0x40
446#define SLEEP_SET_LDO_OFF_VPLL_SETOFF_SHIFT		6
447#define SLEEP_SET_LDO_OFF_VAUX33_SETOFF_MASK		0x20
448#define SLEEP_SET_LDO_OFF_VAUX33_SETOFF_SHIFT		5
449#define SLEEP_SET_LDO_OFF_VAUX2_SETOFF_MASK		0x10
450#define SLEEP_SET_LDO_OFF_VAUX2_SETOFF_SHIFT		4
451#define SLEEP_SET_LDO_OFF_VAUX1_SETOFF_MASK		0x08
452#define SLEEP_SET_LDO_OFF_VAUX1_SETOFF_SHIFT		3
453#define SLEEP_SET_LDO_OFF_VDIG2_SETOFF_MASK		0x04
454#define SLEEP_SET_LDO_OFF_VDIG2_SETOFF_SHIFT		2
455#define SLEEP_SET_LDO_OFF_VDIG1_SETOFF_MASK		0x02
456#define SLEEP_SET_LDO_OFF_VDIG1_SETOFF_SHIFT		1
457#define SLEEP_SET_LDO_OFF_VMMC_SETOFF_MASK		0x01
458#define SLEEP_SET_LDO_OFF_VMMC_SETOFF_SHIFT		0
459
460
461/*Register SLEEP_SET_RES_OFF  (0x80) register.RegisterDescription */
462#define SLEEP_SET_RES_OFF_DEFAULT_VOLT_MASK		0x80
463#define SLEEP_SET_RES_OFF_DEFAULT_VOLT_SHIFT		7
464#define SLEEP_SET_RES_OFF_RSVD_MASK			0x60
465#define SLEEP_SET_RES_OFF_RSVD_SHIFT			5
466#define SLEEP_SET_RES_OFF_SPARE_SETOFF_MASK		0x10
467#define SLEEP_SET_RES_OFF_SPARE_SETOFF_SHIFT		4
468#define SLEEP_SET_RES_OFF_VDD3_SETOFF_MASK		0x08
469#define SLEEP_SET_RES_OFF_VDD3_SETOFF_SHIFT		3
470#define SLEEP_SET_RES_OFF_VDD2_SETOFF_MASK		0x04
471#define SLEEP_SET_RES_OFF_VDD2_SETOFF_SHIFT		2
472#define SLEEP_SET_RES_OFF_VDD1_SETOFF_MASK		0x02
473#define SLEEP_SET_RES_OFF_VDD1_SETOFF_SHIFT		1
474#define SLEEP_SET_RES_OFF_VIO_SETOFF_MASK		0x01
475#define SLEEP_SET_RES_OFF_VIO_SETOFF_SHIFT		0
476
477
478/*Register EN1_LDO_ASS	(0x80) register.RegisterDescription */
479#define EN1_LDO_ASS_VDAC_EN1_MASK			0x80
480#define EN1_LDO_ASS_VDAC_EN1_SHIFT			7
481#define EN1_LDO_ASS_VPLL_EN1_MASK			0x40
482#define EN1_LDO_ASS_VPLL_EN1_SHIFT			6
483#define EN1_LDO_ASS_VAUX33_EN1_MASK			0x20
484#define EN1_LDO_ASS_VAUX33_EN1_SHIFT			5
485#define EN1_LDO_ASS_VAUX2_EN1_MASK			0x10
486#define EN1_LDO_ASS_VAUX2_EN1_SHIFT			4
487#define EN1_LDO_ASS_VAUX1_EN1_MASK			0x08
488#define EN1_LDO_ASS_VAUX1_EN1_SHIFT			3
489#define EN1_LDO_ASS_VDIG2_EN1_MASK			0x04
490#define EN1_LDO_ASS_VDIG2_EN1_SHIFT			2
491#define EN1_LDO_ASS_VDIG1_EN1_MASK			0x02
492#define EN1_LDO_ASS_VDIG1_EN1_SHIFT			1
493#define EN1_LDO_ASS_VMMC_EN1_MASK			0x01
494#define EN1_LDO_ASS_VMMC_EN1_SHIFT			0
495
496
497/*Register EN1_SMPS_ASS  (0x80) register.RegisterDescription */
498#define EN1_SMPS_ASS_RSVD_MASK				0xE0
499#define EN1_SMPS_ASS_RSVD_SHIFT				5
500#define EN1_SMPS_ASS_SPARE_EN1_MASK			0x10
501#define EN1_SMPS_ASS_SPARE_EN1_SHIFT			4
502#define EN1_SMPS_ASS_VDD3_EN1_MASK			0x08
503#define EN1_SMPS_ASS_VDD3_EN1_SHIFT			3
504#define EN1_SMPS_ASS_VDD2_EN1_MASK			0x04
505#define EN1_SMPS_ASS_VDD2_EN1_SHIFT			2
506#define EN1_SMPS_ASS_VDD1_EN1_MASK			0x02
507#define EN1_SMPS_ASS_VDD1_EN1_SHIFT			1
508#define EN1_SMPS_ASS_VIO_EN1_MASK			0x01
509#define EN1_SMPS_ASS_VIO_EN1_SHIFT			0
510
511
512/*Register EN2_LDO_ASS	(0x80) register.RegisterDescription */
513#define EN2_LDO_ASS_VDAC_EN2_MASK			0x80
514#define EN2_LDO_ASS_VDAC_EN2_SHIFT			7
515#define EN2_LDO_ASS_VPLL_EN2_MASK			0x40
516#define EN2_LDO_ASS_VPLL_EN2_SHIFT			6
517#define EN2_LDO_ASS_VAUX33_EN2_MASK			0x20
518#define EN2_LDO_ASS_VAUX33_EN2_SHIFT			5
519#define EN2_LDO_ASS_VAUX2_EN2_MASK			0x10
520#define EN2_LDO_ASS_VAUX2_EN2_SHIFT			4
521#define EN2_LDO_ASS_VAUX1_EN2_MASK			0x08
522#define EN2_LDO_ASS_VAUX1_EN2_SHIFT			3
523#define EN2_LDO_ASS_VDIG2_EN2_MASK			0x04
524#define EN2_LDO_ASS_VDIG2_EN2_SHIFT			2
525#define EN2_LDO_ASS_VDIG1_EN2_MASK			0x02
526#define EN2_LDO_ASS_VDIG1_EN2_SHIFT			1
527#define EN2_LDO_ASS_VMMC_EN2_MASK			0x01
528#define EN2_LDO_ASS_VMMC_EN2_SHIFT			0
529
530
531/*Register EN2_SMPS_ASS  (0x80) register.RegisterDescription */
532#define EN2_SMPS_ASS_RSVD_MASK				0xE0
533#define EN2_SMPS_ASS_RSVD_SHIFT				5
534#define EN2_SMPS_ASS_SPARE_EN2_MASK			0x10
535#define EN2_SMPS_ASS_SPARE_EN2_SHIFT			4
536#define EN2_SMPS_ASS_VDD3_EN2_MASK			0x08
537#define EN2_SMPS_ASS_VDD3_EN2_SHIFT			3
538#define EN2_SMPS_ASS_VDD2_EN2_MASK			0x04
539#define EN2_SMPS_ASS_VDD2_EN2_SHIFT			2
540#define EN2_SMPS_ASS_VDD1_EN2_MASK			0x02
541#define EN2_SMPS_ASS_VDD1_EN2_SHIFT			1
542#define EN2_SMPS_ASS_VIO_EN2_MASK			0x01
543#define EN2_SMPS_ASS_VIO_EN2_SHIFT			0
544
545
546/*Register EN3_LDO_ASS	(0x80) register.RegisterDescription */
547#define EN3_LDO_ASS_VDAC_EN3_MASK			0x80
548#define EN3_LDO_ASS_VDAC_EN3_SHIFT			7
549#define EN3_LDO_ASS_VPLL_EN3_MASK			0x40
550#define EN3_LDO_ASS_VPLL_EN3_SHIFT			6
551#define EN3_LDO_ASS_VAUX33_EN3_MASK			0x20
552#define EN3_LDO_ASS_VAUX33_EN3_SHIFT			5
553#define EN3_LDO_ASS_VAUX2_EN3_MASK			0x10
554#define EN3_LDO_ASS_VAUX2_EN3_SHIFT			4
555#define EN3_LDO_ASS_VAUX1_EN3_MASK			0x08
556#define EN3_LDO_ASS_VAUX1_EN3_SHIFT			3
557#define EN3_LDO_ASS_VDIG2_EN3_MASK			0x04
558#define EN3_LDO_ASS_VDIG2_EN3_SHIFT			2
559#define EN3_LDO_ASS_VDIG1_EN3_MASK			0x02
560#define EN3_LDO_ASS_VDIG1_EN3_SHIFT			1
561#define EN3_LDO_ASS_VMMC_EN3_MASK			0x01
562#define EN3_LDO_ASS_VMMC_EN3_SHIFT			0
563
564
565/*Register SPARE  (0x80) register.RegisterDescription */
566#define SPARE_SPARE_MASK				0xFF
567#define SPARE_SPARE_SHIFT				0
568
569#define TPS65910_INT_STS_RTC_PERIOD_IT_MASK			0x80
570#define TPS65910_INT_STS_RTC_PERIOD_IT_SHIFT			7
571#define TPS65910_INT_STS_RTC_ALARM_IT_MASK			0x40
572#define TPS65910_INT_STS_RTC_ALARM_IT_SHIFT			6
573#define TPS65910_INT_STS_HOTDIE_IT_MASK				0x20
574#define TPS65910_INT_STS_HOTDIE_IT_SHIFT			5
575#define TPS65910_INT_STS_PWRHOLD_F_IT_MASK			0x10
576#define TPS65910_INT_STS_PWRHOLD_F_IT_SHIFT			4
577#define TPS65910_INT_STS_PWRON_LP_IT_MASK			0x08
578#define TPS65910_INT_STS_PWRON_LP_IT_SHIFT			3
579#define TPS65910_INT_STS_PWRON_IT_MASK				0x04
580#define TPS65910_INT_STS_PWRON_IT_SHIFT				2
581#define TPS65910_INT_STS_VMBHI_IT_MASK				0x02
582#define TPS65910_INT_STS_VMBHI_IT_SHIFT				1
583#define TPS65910_INT_STS_VMBDCH_IT_MASK				0x01
584#define TPS65910_INT_STS_VMBDCH_IT_SHIFT			0
585
586#define TPS65910_INT_MSK_RTC_PERIOD_IT_MSK_MASK			0x80
587#define TPS65910_INT_MSK_RTC_PERIOD_IT_MSK_SHIFT		7
588#define TPS65910_INT_MSK_RTC_ALARM_IT_MSK_MASK			0x40
589#define TPS65910_INT_MSK_RTC_ALARM_IT_MSK_SHIFT			6
590#define TPS65910_INT_MSK_HOTDIE_IT_MSK_MASK			0x20
591#define TPS65910_INT_MSK_HOTDIE_IT_MSK_SHIFT			5
592#define TPS65910_INT_MSK_PWRHOLD_IT_MSK_MASK			0x10
593#define TPS65910_INT_MSK_PWRHOLD_IT_MSK_SHIFT			4
594#define TPS65910_INT_MSK_PWRON_LP_IT_MSK_MASK			0x08
595#define TPS65910_INT_MSK_PWRON_LP_IT_MSK_SHIFT			3
596#define TPS65910_INT_MSK_PWRON_IT_MSK_MASK			0x04
597#define TPS65910_INT_MSK_PWRON_IT_MSK_SHIFT			2
598#define TPS65910_INT_MSK_VMBHI_IT_MSK_MASK			0x02
599#define TPS65910_INT_MSK_VMBHI_IT_MSK_SHIFT			1
600#define TPS65910_INT_MSK_VMBDCH_IT_MSK_MASK			0x01
601#define TPS65910_INT_MSK_VMBDCH_IT_MSK_SHIFT			0
602
603#define TPS65910_INT_STS2_GPIO0_F_IT_SHIFT			2
604#define TPS65910_INT_STS2_GPIO0_F_IT_MASK			0x02
605#define TPS65910_INT_STS2_GPIO0_R_IT_SHIFT			1
606#define TPS65910_INT_STS2_GPIO0_R_IT_MASK			0x01
607
608#define TPS65910_INT_MSK2_GPIO0_F_IT_MSK_SHIFT			2
609#define TPS65910_INT_MSK2_GPIO0_F_IT_MSK_MASK			0x02
610#define TPS65910_INT_MSK2_GPIO0_R_IT_MSK_SHIFT			1
611#define TPS65910_INT_MSK2_GPIO0_R_IT_MSK_MASK			0x01
612
613/*Register INT_STS  (0x80) register.RegisterDescription */
614#define INT_STS_RTC_PERIOD_IT_MASK			0x80
615#define INT_STS_RTC_PERIOD_IT_SHIFT			7
616#define INT_STS_RTC_ALARM_IT_MASK			0x40
617#define INT_STS_RTC_ALARM_IT_SHIFT			6
618#define INT_STS_HOTDIE_IT_MASK				0x20
619#define INT_STS_HOTDIE_IT_SHIFT				5
620#define INT_STS_PWRHOLD_R_IT_MASK			0x10
621#define INT_STS_PWRHOLD_R_IT_SHIFT			4
622#define INT_STS_PWRON_LP_IT_MASK			0x08
623#define INT_STS_PWRON_LP_IT_SHIFT			3
624#define INT_STS_PWRON_IT_MASK				0x04
625#define INT_STS_PWRON_IT_SHIFT				2
626#define INT_STS_VMBHI_IT_MASK				0x02
627#define INT_STS_VMBHI_IT_SHIFT				1
628#define INT_STS_PWRHOLD_F_IT_MASK			0x01
629#define INT_STS_PWRHOLD_F_IT_SHIFT			0
630
631
632/*Register INT_MSK  (0x80) register.RegisterDescription */
633#define INT_MSK_RTC_PERIOD_IT_MSK_MASK			0x80
634#define INT_MSK_RTC_PERIOD_IT_MSK_SHIFT			7
635#define INT_MSK_RTC_ALARM_IT_MSK_MASK			0x40
636#define INT_MSK_RTC_ALARM_IT_MSK_SHIFT			6
637#define INT_MSK_HOTDIE_IT_MSK_MASK			0x20
638#define INT_MSK_HOTDIE_IT_MSK_SHIFT			5
639#define INT_MSK_PWRHOLD_R_IT_MSK_MASK			0x10
640#define INT_MSK_PWRHOLD_R_IT_MSK_SHIFT			4
641#define INT_MSK_PWRON_LP_IT_MSK_MASK			0x08
642#define INT_MSK_PWRON_LP_IT_MSK_SHIFT			3
643#define INT_MSK_PWRON_IT_MSK_MASK			0x04
644#define INT_MSK_PWRON_IT_MSK_SHIFT			2
645#define INT_MSK_VMBHI_IT_MSK_MASK			0x02
646#define INT_MSK_VMBHI_IT_MSK_SHIFT			1
647#define INT_MSK_PWRHOLD_F_IT_MSK_MASK			0x01
648#define INT_MSK_PWRHOLD_F_IT_MSK_SHIFT			0
649
650
651/*Register INT_STS2  (0x80) register.RegisterDescription */
652#define INT_STS2_GPIO3_F_IT_MASK			0x80
653#define INT_STS2_GPIO3_F_IT_SHIFT			7
654#define INT_STS2_GPIO3_R_IT_MASK			0x40
655#define INT_STS2_GPIO3_R_IT_SHIFT			6
656#define INT_STS2_GPIO2_F_IT_MASK			0x20
657#define INT_STS2_GPIO2_F_IT_SHIFT			5
658#define INT_STS2_GPIO2_R_IT_MASK			0x10
659#define INT_STS2_GPIO2_R_IT_SHIFT			4
660#define INT_STS2_GPIO1_F_IT_MASK			0x08
661#define INT_STS2_GPIO1_F_IT_SHIFT			3
662#define INT_STS2_GPIO1_R_IT_MASK			0x04
663#define INT_STS2_GPIO1_R_IT_SHIFT			2
664#define INT_STS2_GPIO0_F_IT_MASK			0x02
665#define INT_STS2_GPIO0_F_IT_SHIFT			1
666#define INT_STS2_GPIO0_R_IT_MASK			0x01
667#define INT_STS2_GPIO0_R_IT_SHIFT			0
668
669
670/*Register INT_MSK2  (0x80) register.RegisterDescription */
671#define INT_MSK2_GPIO3_F_IT_MSK_MASK			0x80
672#define INT_MSK2_GPIO3_F_IT_MSK_SHIFT			7
673#define INT_MSK2_GPIO3_R_IT_MSK_MASK			0x40
674#define INT_MSK2_GPIO3_R_IT_MSK_SHIFT			6
675#define INT_MSK2_GPIO2_F_IT_MSK_MASK			0x20
676#define INT_MSK2_GPIO2_F_IT_MSK_SHIFT			5
677#define INT_MSK2_GPIO2_R_IT_MSK_MASK			0x10
678#define INT_MSK2_GPIO2_R_IT_MSK_SHIFT			4
679#define INT_MSK2_GPIO1_F_IT_MSK_MASK			0x08
680#define INT_MSK2_GPIO1_F_IT_MSK_SHIFT			3
681#define INT_MSK2_GPIO1_R_IT_MSK_MASK			0x04
682#define INT_MSK2_GPIO1_R_IT_MSK_SHIFT			2
683#define INT_MSK2_GPIO0_F_IT_MSK_MASK			0x02
684#define INT_MSK2_GPIO0_F_IT_MSK_SHIFT			1
685#define INT_MSK2_GPIO0_R_IT_MSK_MASK			0x01
686#define INT_MSK2_GPIO0_R_IT_MSK_SHIFT			0
687
688
689/*Register INT_STS3  (0x80) register.RegisterDescription */
690#define INT_STS3_PWRDN_IT_MASK				0x80
691#define INT_STS3_PWRDN_IT_SHIFT				7
692#define INT_STS3_VMBCH2_L_IT_MASK			0x40
693#define INT_STS3_VMBCH2_L_IT_SHIFT			6
694#define INT_STS3_VMBCH2_H_IT_MASK			0x20
695#define INT_STS3_VMBCH2_H_IT_SHIFT			5
696#define INT_STS3_WTCHDG_IT_MASK				0x10
697#define INT_STS3_WTCHDG_IT_SHIFT			4
698#define INT_STS3_GPIO5_F_IT_MASK			0x08
699#define INT_STS3_GPIO5_F_IT_SHIFT			3
700#define INT_STS3_GPIO5_R_IT_MASK			0x04
701#define INT_STS3_GPIO5_R_IT_SHIFT			2
702#define INT_STS3_GPIO4_F_IT_MASK			0x02
703#define INT_STS3_GPIO4_F_IT_SHIFT			1
704#define INT_STS3_GPIO4_R_IT_MASK			0x01
705#define INT_STS3_GPIO4_R_IT_SHIFT			0
706
707
708/*Register INT_MSK3  (0x80) register.RegisterDescription */
709#define INT_MSK3_PWRDN_IT_MSK_MASK			0x80
710#define INT_MSK3_PWRDN_IT_MSK_SHIFT			7
711#define INT_MSK3_VMBCH2_L_IT_MSK_MASK			0x40
712#define INT_MSK3_VMBCH2_L_IT_MSK_SHIFT			6
713#define INT_MSK3_VMBCH2_H_IT_MSK_MASK			0x20
714#define INT_MSK3_VMBCH2_H_IT_MSK_SHIFT			5
715#define INT_MSK3_WTCHDG_IT_MSK_MASK			0x10
716#define INT_MSK3_WTCHDG_IT_MSK_SHIFT			4
717#define INT_MSK3_GPIO5_F_IT_MSK_MASK			0x08
718#define INT_MSK3_GPIO5_F_IT_MSK_SHIFT			3
719#define INT_MSK3_GPIO5_R_IT_MSK_MASK			0x04
720#define INT_MSK3_GPIO5_R_IT_MSK_SHIFT			2
721#define INT_MSK3_GPIO4_F_IT_MSK_MASK			0x02
722#define INT_MSK3_GPIO4_F_IT_MSK_SHIFT			1
723#define INT_MSK3_GPIO4_R_IT_MSK_MASK			0x01
724#define INT_MSK3_GPIO4_R_IT_MSK_SHIFT			0
725
726
727/*Register GPIO  (0x80) register.RegisterDescription */
728#define GPIO_SLEEP_MASK                         0x80
729#define GPIO_SLEEP_SHIFT                        7
730#define GPIO_DEB_MASK                           0x10
731#define GPIO_DEB_SHIFT                          4
732#define GPIO_PUEN_MASK                          0x08
733#define GPIO_PUEN_SHIFT                         3
734#define GPIO_CFG_MASK                           0x04
735#define GPIO_CFG_SHIFT                          2
736#define GPIO_STS_MASK                           0x02
737#define GPIO_STS_SHIFT                          1
738#define GPIO_SET_MASK                           0x01
739#define GPIO_SET_SHIFT                          0
740
741
742/*Register JTAGVERNUM  (0x80) register.RegisterDescription */
743#define JTAGVERNUM_VERNUM_MASK				0x0F
744#define JTAGVERNUM_VERNUM_SHIFT				0
745
746
747/* Register VDDCTRL (0x27) bit definitions */
748#define VDDCTRL_ST_MASK                                  0x03
749#define VDDCTRL_ST_SHIFT                                 0
750
751
752/*Register VDDCTRL_OP  (0x28) bit definitions */
753#define VDDCTRL_OP_CMD_MASK                              0x80
754#define VDDCTRL_OP_CMD_SHIFT                             7
755#define VDDCTRL_OP_SEL_MASK                              0x7F
756#define VDDCTRL_OP_SEL_SHIFT                             0
757
758
759/*Register VDDCTRL_SR  (0x29) bit definitions */
760#define VDDCTRL_SR_SEL_MASK                              0x7F
761#define VDDCTRL_SR_SEL_SHIFT                             0
762
763
764/* IRQ Definitions */
765#define TPS65910_IRQ_VBAT_VMBDCH			0
766#define TPS65910_IRQ_VBAT_VMHI				1
767#define TPS65910_IRQ_PWRON				2
768#define TPS65910_IRQ_PWRON_LP				3
769#define TPS65910_IRQ_PWRHOLD				4
770#define TPS65910_IRQ_HOTDIE				5
771#define TPS65910_IRQ_RTC_ALARM				6
772#define TPS65910_IRQ_RTC_PERIOD				7
773#define TPS65910_IRQ_GPIO_R				8
774#define TPS65910_IRQ_GPIO_F				9
775#define TPS65910_NUM_IRQ				10
776
777#define TPS65911_IRQ_PWRHOLD_F				0
778#define TPS65911_IRQ_VBAT_VMHI				1
779#define TPS65911_IRQ_PWRON				2
780#define TPS65911_IRQ_PWRON_LP				3
781#define TPS65911_IRQ_PWRHOLD_R				4
782#define TPS65911_IRQ_HOTDIE				5
783#define TPS65911_IRQ_RTC_ALARM				6
784#define TPS65911_IRQ_RTC_PERIOD				7
785#define TPS65911_IRQ_GPIO0_R				8
786#define TPS65911_IRQ_GPIO0_F				9
787#define TPS65911_IRQ_GPIO1_R				10
788#define TPS65911_IRQ_GPIO1_F				11
789#define TPS65911_IRQ_GPIO2_R				12
790#define TPS65911_IRQ_GPIO2_F				13
791#define TPS65911_IRQ_GPIO3_R				14
792#define TPS65911_IRQ_GPIO3_F				15
793#define TPS65911_IRQ_GPIO4_R				16
794#define TPS65911_IRQ_GPIO4_F				17
795#define TPS65911_IRQ_GPIO5_R				18
796#define TPS65911_IRQ_GPIO5_F				19
797#define TPS65911_IRQ_WTCHDG				20
798#define TPS65911_IRQ_VMBCH2_H				21
799#define TPS65911_IRQ_VMBCH2_L				22
800#define TPS65911_IRQ_PWRDN				23
801
802#define TPS65911_NUM_IRQ				24
803
804/* GPIO Register Definitions */
805#define TPS65910_GPIO_DEB				BIT(2)
806#define TPS65910_GPIO_PUEN				BIT(3)
807#define TPS65910_GPIO_CFG				BIT(2)
808#define TPS65910_GPIO_STS				BIT(1)
809#define TPS65910_GPIO_SET				BIT(0)
810
811/* Max number of TPS65910/11 GPIOs */
812#define TPS65910_NUM_GPIO				6
813#define TPS65911_NUM_GPIO				9
814#define TPS6591X_MAX_NUM_GPIO				9
815
816/* Regulator Index Definitions */
817#define TPS65910_REG_VRTC				0
818#define TPS65910_REG_VIO				1
819#define TPS65910_REG_VDD1				2
820#define TPS65910_REG_VDD2				3
821#define TPS65910_REG_VDD3				4
822#define TPS65910_REG_VDIG1				5
823#define TPS65910_REG_VDIG2				6
824#define TPS65910_REG_VPLL				7
825#define TPS65910_REG_VDAC				8
826#define TPS65910_REG_VAUX1				9
827#define TPS65910_REG_VAUX2				10
828#define TPS65910_REG_VAUX33				11
829#define TPS65910_REG_VMMC				12
830#define TPS65910_REG_VBB				13
831
832#define TPS65911_REG_VDDCTRL				4
833#define TPS65911_REG_LDO1				5
834#define TPS65911_REG_LDO2				6
835#define TPS65911_REG_LDO3				7
836#define TPS65911_REG_LDO4				8
837#define TPS65911_REG_LDO5				9
838#define TPS65911_REG_LDO6				10
839#define TPS65911_REG_LDO7				11
840#define TPS65911_REG_LDO8				12
841
842/* Max number of TPS65910/11 regulators */
843#define TPS65910_NUM_REGS				14
844
845/* External sleep controls through EN1/EN2/EN3/SLEEP inputs */
846#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1		0x1
847#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN2		0x2
848#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN3		0x4
849#define TPS65911_SLEEP_CONTROL_EXT_INPUT_SLEEP		0x8
850
851/*
852 * Sleep keepon data: Maintains the state in sleep mode
853 * @therm_keepon: Keep on the thermal monitoring in sleep state.
854 * @clkout32k_keepon: Keep on the 32KHz clock output in sleep state.
855 * @i2chs_keepon: Keep on high speed internal clock in sleep state.
856 */
857struct tps65910_sleep_keepon_data {
858	unsigned therm_keepon:1;
859	unsigned clkout32k_keepon:1;
860	unsigned i2chs_keepon:1;
861};
862
863/**
864 * struct tps65910_board
865 * Board platform data may be used to initialize regulators.
866 */
867
868struct tps65910_board {
869	int gpio_base;
870	int irq;
871	int irq_base;
872	int vmbch_threshold;
873	int vmbch2_threshold;
874	bool en_ck32k_xtal;
875	bool en_dev_slp;
876	bool pm_off;
877	struct tps65910_sleep_keepon_data slp_keepon;
878	bool en_gpio_sleep[TPS6591X_MAX_NUM_GPIO];
879	unsigned long regulator_ext_sleep_control[TPS65910_NUM_REGS];
880	struct regulator_init_data *tps65910_pmic_init_data[TPS65910_NUM_REGS];
881};
882
883/**
884 * struct tps65910 - tps65910 sub-driver chip access routines
885 */
886
887struct tps65910 {
888	struct device *dev;
889	struct i2c_client *i2c_client;
890	struct regmap *regmap;
891	unsigned long id;
892
893	/* Device node parsed board data */
894	struct tps65910_board *of_plat_data;
895
896	/* IRQ Handling */
897	int chip_irq;
898	struct regmap_irq_chip_data *irq_data;
899};
900
901struct tps65910_platform_data {
902	int irq;
903	int irq_base;
904};
905
906static inline int tps65910_chip_id(struct tps65910 *tps65910)
907{
908	return tps65910->id;
909}
910
911#endif /*  __LINUX_MFD_TPS65910_H */
912