tps65910.h (30093B)
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 definitios */ 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 */