linux/include/linux/mfd/da9052/reg.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * Register declarations for DA9052 PMICs.
   4 *
   5 * Copyright(c) 2011 Dialog Semiconductor Ltd.
   6 *
   7 * Author: David Dajun Chen <dchen@diasemi.com>
   8 */
   9
  10#ifndef __LINUX_MFD_DA9052_REG_H
  11#define __LINUX_MFD_DA9052_REG_H
  12
  13/* PAGE REGISTERS */
  14#define DA9052_PAGE0_CON_REG            0
  15#define DA9052_PAGE1_CON_REG            128
  16
  17/* STATUS REGISTERS */
  18#define DA9052_STATUS_A_REG             1
  19#define DA9052_STATUS_B_REG             2
  20#define DA9052_STATUS_C_REG             3
  21#define DA9052_STATUS_D_REG             4
  22
  23/* PARK REGISTER */
  24#define DA9052_PARK_REGISTER            DA9052_STATUS_D_REG
  25
  26/* EVENT REGISTERS */
  27#define DA9052_EVENT_A_REG              5
  28#define DA9052_EVENT_B_REG              6
  29#define DA9052_EVENT_C_REG              7
  30#define DA9052_EVENT_D_REG              8
  31#define DA9052_FAULTLOG_REG             9
  32
  33/* IRQ REGISTERS */
  34#define DA9052_IRQ_MASK_A_REG           10
  35#define DA9052_IRQ_MASK_B_REG           11
  36#define DA9052_IRQ_MASK_C_REG           12
  37#define DA9052_IRQ_MASK_D_REG           13
  38
  39/* CONTROL REGISTERS */
  40#define DA9052_CONTROL_A_REG            14
  41#define DA9052_CONTROL_B_REG            15
  42#define DA9052_CONTROL_C_REG            16
  43#define DA9052_CONTROL_D_REG            17
  44
  45#define DA9052_PDDIS_REG                18
  46#define DA9052_INTERFACE_REG            19
  47#define DA9052_RESET_REG                20
  48
  49/* GPIO REGISTERS */
  50#define DA9052_GPIO_0_1_REG             21
  51#define DA9052_GPIO_2_3_REG             22
  52#define DA9052_GPIO_4_5_REG             23
  53#define DA9052_GPIO_6_7_REG             24
  54#define DA9052_GPIO_8_9_REG             25
  55#define DA9052_GPIO_10_11_REG           26
  56#define DA9052_GPIO_12_13_REG           27
  57#define DA9052_GPIO_14_15_REG           28
  58
  59/* POWER SEQUENCER CONTROL REGISTERS */
  60#define DA9052_ID_0_1_REG               29
  61#define DA9052_ID_2_3_REG               30
  62#define DA9052_ID_4_5_REG               31
  63#define DA9052_ID_6_7_REG               32
  64#define DA9052_ID_8_9_REG               33
  65#define DA9052_ID_10_11_REG             34
  66#define DA9052_ID_12_13_REG             35
  67#define DA9052_ID_14_15_REG             36
  68#define DA9052_ID_16_17_REG             37
  69#define DA9052_ID_18_19_REG             38
  70#define DA9052_ID_20_21_REG             39
  71#define DA9052_SEQ_STATUS_REG           40
  72#define DA9052_SEQ_A_REG                41
  73#define DA9052_SEQ_B_REG                42
  74#define DA9052_SEQ_TIMER_REG            43
  75
  76/* LDO AND BUCK REGISTERS */
  77#define DA9052_BUCKA_REG                44
  78#define DA9052_BUCKB_REG                45
  79#define DA9052_BUCKCORE_REG             46
  80#define DA9052_BUCKPRO_REG              47
  81#define DA9052_BUCKMEM_REG              48
  82#define DA9052_BUCKPERI_REG             49
  83#define DA9052_LDO1_REG         50
  84#define DA9052_LDO2_REG         51
  85#define DA9052_LDO3_REG         52
  86#define DA9052_LDO4_REG         53
  87#define DA9052_LDO5_REG         54
  88#define DA9052_LDO6_REG         55
  89#define DA9052_LDO7_REG         56
  90#define DA9052_LDO8_REG         57
  91#define DA9052_LDO9_REG         58
  92#define DA9052_LDO10_REG                59
  93#define DA9052_SUPPLY_REG               60
  94#define DA9052_PULLDOWN_REG             61
  95#define DA9052_CHGBUCK_REG              62
  96#define DA9052_WAITCONT_REG             63
  97#define DA9052_ISET_REG         64
  98#define DA9052_BATCHG_REG               65
  99
 100/* BATTERY CONTROL REGISTRS */
 101#define DA9052_CHG_CONT_REG             66
 102#define DA9052_INPUT_CONT_REG           67
 103#define DA9052_CHG_TIME_REG             68
 104#define DA9052_BBAT_CONT_REG            69
 105
 106/* LED CONTROL REGISTERS */
 107#define DA9052_BOOST_REG                70
 108#define DA9052_LED_CONT_REG             71
 109#define DA9052_LEDMIN123_REG            72
 110#define DA9052_LED1_CONF_REG            73
 111#define DA9052_LED2_CONF_REG            74
 112#define DA9052_LED3_CONF_REG            75
 113#define DA9052_LED1CONT_REG             76
 114#define DA9052_LED2CONT_REG             77
 115#define DA9052_LED3CONT_REG             78
 116#define DA9052_LED_CONT_4_REG           79
 117#define DA9052_LED_CONT_5_REG           80
 118
 119/* ADC CONTROL REGISTERS */
 120#define DA9052_ADC_MAN_REG              81
 121#define DA9052_ADC_CONT_REG             82
 122#define DA9052_ADC_RES_L_REG            83
 123#define DA9052_ADC_RES_H_REG            84
 124#define DA9052_VDD_RES_REG              85
 125#define DA9052_VDD_MON_REG              86
 126
 127#define DA9052_ICHG_AV_REG              87
 128#define DA9052_ICHG_THD_REG             88
 129#define DA9052_ICHG_END_REG             89
 130#define DA9052_TBAT_RES_REG             90
 131#define DA9052_TBAT_HIGHP_REG           91
 132#define DA9052_TBAT_HIGHN_REG           92
 133#define DA9052_TBAT_LOW_REG             93
 134#define DA9052_T_OFFSET_REG             94
 135
 136#define DA9052_ADCIN4_RES_REG           95
 137#define DA9052_AUTO4_HIGH_REG           96
 138#define DA9052_AUTO4_LOW_REG            97
 139#define DA9052_ADCIN5_RES_REG           98
 140#define DA9052_AUTO5_HIGH_REG           99
 141#define DA9052_AUTO5_LOW_REG            100
 142#define DA9052_ADCIN6_RES_REG           101
 143#define DA9052_AUTO6_HIGH_REG           102
 144#define DA9052_AUTO6_LOW_REG            103
 145
 146#define DA9052_TJUNC_RES_REG            104
 147
 148/* TSI CONTROL REGISTERS */
 149#define DA9052_TSI_CONT_A_REG           105
 150#define DA9052_TSI_CONT_B_REG           106
 151#define DA9052_TSI_X_MSB_REG            107
 152#define DA9052_TSI_Y_MSB_REG            108
 153#define DA9052_TSI_LSB_REG              109
 154#define DA9052_TSI_Z_MSB_REG            110
 155
 156/* RTC COUNT REGISTERS */
 157#define DA9052_COUNT_S_REG              111
 158#define DA9052_COUNT_MI_REG             112
 159#define DA9052_COUNT_H_REG              113
 160#define DA9052_COUNT_D_REG              114
 161#define DA9052_COUNT_MO_REG             115
 162#define DA9052_COUNT_Y_REG              116
 163
 164/* RTC CONTROL REGISTERS */
 165#define DA9052_ALARM_MI_REG             117
 166#define DA9052_ALARM_H_REG              118
 167#define DA9052_ALARM_D_REG              119
 168#define DA9052_ALARM_MO_REG             120
 169#define DA9052_ALARM_Y_REG              121
 170#define DA9052_SECOND_A_REG             122
 171#define DA9052_SECOND_B_REG             123
 172#define DA9052_SECOND_C_REG             124
 173#define DA9052_SECOND_D_REG             125
 174
 175/* PAGE CONFIGURATION BIT */
 176#define DA9052_PAGE_CONF                0X80
 177
 178/* STATUS REGISTER A BITS */
 179#define DA9052_STATUSA_VDATDET          0X80
 180#define DA9052_STATUSA_VBUSSEL          0X40
 181#define DA9052_STATUSA_DCINSEL          0X20
 182#define DA9052_STATUSA_VBUSDET          0X10
 183#define DA9052_STATUSA_DCINDET          0X08
 184#define DA9052_STATUSA_IDGND            0X04
 185#define DA9052_STATUSA_IDFLOAT          0X02
 186#define DA9052_STATUSA_NONKEY           0X01
 187
 188/* STATUS REGISTER B BITS */
 189#define DA9052_STATUSB_COMPDET          0X80
 190#define DA9052_STATUSB_SEQUENCING       0X40
 191#define DA9052_STATUSB_GPFB2            0X20
 192#define DA9052_STATUSB_CHGTO            0X10
 193#define DA9052_STATUSB_CHGEND           0X08
 194#define DA9052_STATUSB_CHGLIM           0X04
 195#define DA9052_STATUSB_CHGPRE           0X02
 196#define DA9052_STATUSB_CHGATT           0X01
 197
 198/* STATUS REGISTER C BITS */
 199#define DA9052_STATUSC_GPI7             0X80
 200#define DA9052_STATUSC_GPI6             0X40
 201#define DA9052_STATUSC_GPI5             0X20
 202#define DA9052_STATUSC_GPI4             0X10
 203#define DA9052_STATUSC_GPI3             0X08
 204#define DA9052_STATUSC_GPI2             0X04
 205#define DA9052_STATUSC_GPI1             0X02
 206#define DA9052_STATUSC_GPI0             0X01
 207
 208/* STATUS REGISTER D BITS */
 209#define DA9052_STATUSD_GPI15            0X80
 210#define DA9052_STATUSD_GPI14            0X40
 211#define DA9052_STATUSD_GPI13            0X20
 212#define DA9052_STATUSD_GPI12            0X10
 213#define DA9052_STATUSD_GPI11            0X08
 214#define DA9052_STATUSD_GPI10            0X04
 215#define DA9052_STATUSD_GPI9             0X02
 216#define DA9052_STATUSD_GPI8             0X01
 217
 218/* EVENT REGISTER A BITS */
 219#define DA9052_EVENTA_ECOMP1V2          0X80
 220#define DA9052_EVENTA_ESEQRDY           0X40
 221#define DA9052_EVENTA_EALRAM            0X20
 222#define DA9052_EVENTA_EVDDLOW           0X10
 223#define DA9052_EVENTA_EVBUSREM          0X08
 224#define DA9052_EVENTA_EDCINREM          0X04
 225#define DA9052_EVENTA_EVBUSDET          0X02
 226#define DA9052_EVENTA_EDCINDET          0X01
 227
 228/* EVENT REGISTER B BITS */
 229#define DA9052_EVENTB_ETSIREADY 0X80
 230#define DA9052_EVENTB_EPENDOWN          0X40
 231#define DA9052_EVENTB_EADCEOM           0X20
 232#define DA9052_EVENTB_ETBAT             0X10
 233#define DA9052_EVENTB_ECHGEND           0X08
 234#define DA9052_EVENTB_EIDGND            0X04
 235#define DA9052_EVENTB_EIDFLOAT          0X02
 236#define DA9052_EVENTB_ENONKEY           0X01
 237
 238/* EVENT REGISTER C BITS */
 239#define DA9052_EVENTC_EGPI7             0X80
 240#define DA9052_EVENTC_EGPI6             0X40
 241#define DA9052_EVENTC_EGPI5             0X20
 242#define DA9052_EVENTC_EGPI4             0X10
 243#define DA9052_EVENTC_EGPI3             0X08
 244#define DA9052_EVENTC_EGPI2             0X04
 245#define DA9052_EVENTC_EGPI1             0X02
 246#define DA9052_EVENTC_EGPI0             0X01
 247
 248/* EVENT REGISTER D BITS */
 249#define DA9052_EVENTD_EGPI15            0X80
 250#define DA9052_EVENTD_EGPI14            0X40
 251#define DA9052_EVENTD_EGPI13            0X20
 252#define DA9052_EVENTD_EGPI12            0X10
 253#define DA9052_EVENTD_EGPI11            0X08
 254#define DA9052_EVENTD_EGPI10            0X04
 255#define DA9052_EVENTD_EGPI9             0X02
 256#define DA9052_EVENTD_EGPI8             0X01
 257
 258/* IRQ MASK REGISTERS BITS */
 259#define DA9052_M_NONKEY         0X0100
 260
 261/* TSI EVENT REGISTERS BITS */
 262#define DA9052_E_PEN_DOWN               0X4000
 263#define DA9052_E_TSI_READY              0X8000
 264
 265/* FAULT LOG REGISTER BITS */
 266#define DA9052_FAULTLOG_WAITSET 0X80
 267#define DA9052_FAULTLOG_NSDSET          0X40
 268#define DA9052_FAULTLOG_KEYSHUT 0X20
 269#define DA9052_FAULTLOG_TEMPOVER        0X08
 270#define DA9052_FAULTLOG_VDDSTART        0X04
 271#define DA9052_FAULTLOG_VDDFAULT        0X02
 272#define DA9052_FAULTLOG_TWDERROR        0X01
 273
 274/* CONTROL REGISTER A BITS */
 275#define DA9052_CONTROLA_GPIV            0X80
 276#define DA9052_CONTROLA_PMOTYPE 0X20
 277#define DA9052_CONTROLA_PMOV            0X10
 278#define DA9052_CONTROLA_PMIV            0X08
 279#define DA9052_CONTROLA_PMIFV           0X08
 280#define DA9052_CONTROLA_PWR1EN          0X04
 281#define DA9052_CONTROLA_PWREN           0X02
 282#define DA9052_CONTROLA_SYSEN           0X01
 283
 284/* CONTROL REGISTER B BITS */
 285#define DA9052_CONTROLB_SHUTDOWN        0X80
 286#define DA9052_CONTROLB_DEEPSLEEP       0X40
 287#define DA9052_CONTROL_B_WRITEMODE      0X20
 288#define DA9052_CONTROLB_BBATEN          0X10
 289#define DA9052_CONTROLB_OTPREADEN       0X08
 290#define DA9052_CONTROLB_AUTOBOOT        0X04
 291#define DA9052_CONTROLB_ACTDIODE        0X02
 292#define DA9052_CONTROLB_BUCKMERGE       0X01
 293
 294/* CONTROL REGISTER C BITS */
 295#define DA9052_CONTROLC_BLINKDUR        0X80
 296#define DA9052_CONTROLC_BLINKFRQ        0X60
 297#define DA9052_CONTROLC_DEBOUNCING      0X1C
 298#define DA9052_CONTROLC_PMFB2PIN        0X02
 299#define DA9052_CONTROLC_PMFB1PIN        0X01
 300
 301/* CONTROL REGISTER D BITS */
 302#define DA9052_CONTROLD_WATCHDOG        0X80
 303#define DA9052_CONTROLD_ACCDETEN        0X40
 304#define DA9052_CONTROLD_GPI1415SD       0X20
 305#define DA9052_CONTROLD_NONKEYSD        0X10
 306#define DA9052_CONTROLD_KEEPACTEN       0X08
 307#define DA9052_CONTROLD_TWDSCALE        0X07
 308
 309/* POWER DOWN DISABLE REGISTER BITS */
 310#define DA9052_PDDIS_PMCONTPD           0X80
 311#define DA9052_PDDIS_OUT32KPD           0X40
 312#define DA9052_PDDIS_CHGBBATPD          0X20
 313#define DA9052_PDDIS_CHGPD              0X10
 314#define DA9052_PDDIS_HS2WIREPD          0X08
 315#define DA9052_PDDIS_PMIFPD             0X04
 316#define DA9052_PDDIS_GPADCPD            0X02
 317#define DA9052_PDDIS_GPIOPD             0X01
 318
 319/* CONTROL REGISTER D BITS */
 320#define DA9052_INTERFACE_IFBASEADDR     0XE0
 321#define DA9052_INTERFACE_NCSPOL 0X10
 322#define DA9052_INTERFACE_RWPOL          0X08
 323#define DA9052_INTERFACE_CPHA           0X04
 324#define DA9052_INTERFACE_CPOL           0X02
 325#define DA9052_INTERFACE_IFTYPE 0X01
 326
 327/* CONTROL REGISTER D BITS */
 328#define DA9052_RESET_RESETEVENT 0XC0
 329#define DA9052_RESET_RESETTIMER 0X3F
 330
 331/* GPIO REGISTERS */
 332/* GPIO CONTROL REGISTER BITS */
 333#define DA9052_GPIO_EVEN_PORT_PIN       0X03
 334#define DA9052_GPIO_EVEN_PORT_TYPE      0X04
 335#define DA9052_GPIO_EVEN_PORT_MODE      0X08
 336
 337#define DA9052_GPIO_ODD_PORT_PIN        0X30
 338#define DA9052_GPIO_ODD_PORT_TYPE       0X40
 339#define DA9052_GPIO_ODD_PORT_MODE       0X80
 340
 341/*POWER SEQUENCER REGISTER BITS */
 342/* SEQ CONTROL REGISTER BITS FOR ID 0 AND 1 */
 343#define DA9052_ID01_LDO1STEP            0XF0
 344#define DA9052_ID01_SYSPRE              0X04
 345#define DA9052_ID01_DEFSUPPLY           0X02
 346#define DA9052_ID01_NRESMODE            0X01
 347
 348/* SEQ CONTROL REGISTER BITS FOR ID 2 AND 3 */
 349#define DA9052_ID23_LDO3STEP            0XF0
 350#define DA9052_ID23_LDO2STEP            0X0F
 351
 352/* SEQ CONTROL REGISTER BITS FOR ID 4 AND 5 */
 353#define DA9052_ID45_LDO5STEP            0XF0
 354#define DA9052_ID45_LDO4STEP            0X0F
 355
 356/* SEQ CONTROL REGISTER BITS FOR ID 6 AND 7 */
 357#define DA9052_ID67_LDO7STEP            0XF0
 358#define DA9052_ID67_LDO6STEP            0X0F
 359
 360/* SEQ CONTROL REGISTER BITS FOR ID 8 AND 9 */
 361#define DA9052_ID89_LDO9STEP            0XF0
 362#define DA9052_ID89_LDO8STEP            0X0F
 363
 364/* SEQ CONTROL REGISTER BITS FOR ID 10 AND 11 */
 365#define DA9052_ID1011_PDDISSTEP 0XF0
 366#define DA9052_ID1011_LDO10STEP 0X0F
 367
 368/* SEQ CONTROL REGISTER BITS FOR ID 12 AND 13 */
 369#define DA9052_ID1213_VMEMSWSTEP        0XF0
 370#define DA9052_ID1213_VPERISWSTEP       0X0F
 371
 372/* SEQ CONTROL REGISTER BITS FOR ID 14 AND 15 */
 373#define DA9052_ID1415_BUCKPROSTEP       0XF0
 374#define DA9052_ID1415_BUCKCORESTEP      0X0F
 375
 376/* SEQ CONTROL REGISTER BITS FOR ID 16 AND 17 */
 377#define DA9052_ID1617_BUCKPERISTEP      0XF0
 378#define DA9052_ID1617_BUCKMEMSTEP       0X0F
 379
 380/* SEQ CONTROL REGISTER BITS FOR ID 18 AND 19 */
 381#define DA9052_ID1819_GPRISE2STEP       0XF0
 382#define DA9052_ID1819_GPRISE1STEP       0X0F
 383
 384/* SEQ CONTROL REGISTER BITS FOR ID 20 AND 21 */
 385#define DA9052_ID2021_GPFALL2STEP       0XF0
 386#define DA9052_ID2021_GPFALL1STEP       0X0F
 387
 388/* POWER SEQ STATUS REGISTER BITS */
 389#define DA9052_SEQSTATUS_SEQPOINTER     0XF0
 390#define DA9052_SEQSTATUS_WAITSTEP       0X0F
 391
 392/* POWER SEQ A REGISTER BITS */
 393#define DA9052_SEQA_POWEREND            0XF0
 394#define DA9052_SEQA_SYSTEMEND           0X0F
 395
 396/* POWER SEQ B REGISTER BITS */
 397#define DA9052_SEQB_PARTDOWN            0XF0
 398#define DA9052_SEQB_MAXCOUNT            0X0F
 399
 400/* POWER SEQ TIMER REGISTER BITS */
 401#define DA9052_SEQTIMER_SEQDUMMY        0XF0
 402#define DA9052_SEQTIMER_SEQTIME 0X0F
 403
 404/*POWER SUPPLY CONTROL REGISTER BITS */
 405/* BUCK REGISTER A BITS */
 406#define DA9052_BUCKA_BPROILIM           0XC0
 407#define DA9052_BUCKA_BPROMODE           0X30
 408#define DA9052_BUCKA_BCOREILIM          0X0C
 409#define DA9052_BUCKA_BCOREMODE          0X03
 410
 411/* BUCK REGISTER B BITS */
 412#define DA9052_BUCKB_BERIILIM           0XC0
 413#define DA9052_BUCKB_BPERIMODE          0X30
 414#define DA9052_BUCKB_BMEMILIM           0X0C
 415#define DA9052_BUCKB_BMEMMODE           0X03
 416
 417/* BUCKCORE REGISTER BITS */
 418#define DA9052_BUCKCORE_BCORECONF       0X80
 419#define DA9052_BUCKCORE_BCOREEN 0X40
 420#define DA9052_BUCKCORE_VBCORE          0X3F
 421
 422/* BUCKPRO REGISTER BITS */
 423#define DA9052_BUCKPRO_BPROCONF 0X80
 424#define DA9052_BUCKPRO_BPROEN           0X40
 425#define DA9052_BUCKPRO_VBPRO            0X3F
 426
 427/* BUCKMEM REGISTER BITS */
 428#define DA9052_BUCKMEM_BMEMCONF 0X80
 429#define DA9052_BUCKMEM_BMEMEN           0X40
 430#define DA9052_BUCKMEM_VBMEM            0X3F
 431
 432/* BUCKPERI REGISTER BITS */
 433#define DA9052_BUCKPERI_BPERICONF       0X80
 434#define DA9052_BUCKPERI_BPERIEN 0X40
 435#define DA9052_BUCKPERI_BPERIHS 0X20
 436#define DA9052_BUCKPERI_VBPERI          0X1F
 437
 438/* LDO1 REGISTER BITS */
 439#define DA9052_LDO1_LDO1CONF            0X80
 440#define DA9052_LDO1_LDO1EN              0X40
 441#define DA9052_LDO1_VLDO1               0X1F
 442
 443/* LDO2 REGISTER BITS */
 444#define DA9052_LDO2_LDO2CONF            0X80
 445#define DA9052_LDO2_LDO2EN              0X40
 446#define DA9052_LDO2_VLDO2               0X3F
 447
 448/* LDO3 REGISTER BITS */
 449#define DA9052_LDO3_LDO3CONF            0X80
 450#define DA9052_LDO3_LDO3EN              0X40
 451#define DA9052_LDO3_VLDO3               0X3F
 452
 453/* LDO4 REGISTER BITS */
 454#define DA9052_LDO4_LDO4CONF            0X80
 455#define DA9052_LDO4_LDO4EN              0X40
 456#define DA9052_LDO4_VLDO4               0X3F
 457
 458/* LDO5 REGISTER BITS */
 459#define DA9052_LDO5_LDO5CONF            0X80
 460#define DA9052_LDO5_LDO5EN              0X40
 461#define DA9052_LDO5_VLDO5               0X3F
 462
 463/* LDO6 REGISTER BITS */
 464#define DA9052_LDO6_LDO6CONF            0X80
 465#define DA9052_LDO6_LDO6EN              0X40
 466#define DA9052_LDO6_VLDO6               0X3F
 467
 468/* LDO7 REGISTER BITS */
 469#define DA9052_LDO7_LDO7CONF            0X80
 470#define DA9052_LDO7_LDO7EN              0X40
 471#define DA9052_LDO7_VLDO7               0X3F
 472
 473/* LDO8 REGISTER BITS */
 474#define DA9052_LDO8_LDO8CONF            0X80
 475#define DA9052_LDO8_LDO8EN              0X40
 476#define DA9052_LDO8_VLDO8               0X3F
 477
 478/* LDO9 REGISTER BITS */
 479#define DA9052_LDO9_LDO9CONF            0X80
 480#define DA9052_LDO9_LDO9EN              0X40
 481#define DA9052_LDO9_VLDO9               0X3F
 482
 483/* LDO10 REGISTER BITS */
 484#define DA9052_LDO10_LDO10CONF          0X80
 485#define DA9052_LDO10_LDO10EN            0X40
 486#define DA9052_LDO10_VLDO10             0X3F
 487
 488/* SUPPLY REGISTER BITS */
 489#define DA9052_SUPPLY_VLOCK             0X80
 490#define DA9052_SUPPLY_VMEMSWEN          0X40
 491#define DA9052_SUPPLY_VPERISWEN 0X20
 492#define DA9052_SUPPLY_VLDO3GO           0X10
 493#define DA9052_SUPPLY_VLDO2GO           0X08
 494#define DA9052_SUPPLY_VBMEMGO           0X04
 495#define DA9052_SUPPLY_VBPROGO           0X02
 496#define DA9052_SUPPLY_VBCOREGO          0X01
 497
 498/* PULLDOWN REGISTER BITS */
 499#define DA9052_PULLDOWN_LDO5PDDIS       0X20
 500#define DA9052_PULLDOWN_LDO2PDDIS       0X10
 501#define DA9052_PULLDOWN_LDO1PDDIS       0X08
 502#define DA9052_PULLDOWN_MEMPDDIS        0X04
 503#define DA9052_PULLDOWN_PROPDDIS        0X02
 504#define DA9052_PULLDOWN_COREPDDIS       0X01
 505
 506/* BAT CHARGER REGISTER BITS */
 507/* CHARGER BUCK REGISTER BITS */
 508#define DA9052_CHGBUCK_CHGTEMP          0X80
 509#define DA9052_CHGBUCK_CHGUSBILIM       0X40
 510#define DA9052_CHGBUCK_CHGBUCKLP        0X20
 511#define DA9052_CHGBUCK_CHGBUCKEN        0X10
 512#define DA9052_CHGBUCK_ISETBUCK 0X0F
 513
 514/* WAIT COUNTER REGISTER BITS */
 515#define DA9052_WAITCONT_WAITDIR 0X80
 516#define DA9052_WAITCONT_RTCCLOCK        0X40
 517#define DA9052_WAITCONT_WAITMODE        0X20
 518#define DA9052_WAITCONT_EN32KOUT        0X10
 519#define DA9052_WAITCONT_DELAYTIME       0X0F
 520
 521/* ISET CONTROL REGISTER BITS */
 522#define DA9052_ISET_ISETDCIN            0XF0
 523#define DA9052_ISET_ISETVBUS            0X0F
 524
 525/* BATTERY CHARGER CONTROL REGISTER BITS */
 526#define DA9052_BATCHG_ICHGPRE           0XC0
 527#define DA9052_BATCHG_ICHGBAT           0X3F
 528
 529/* CHARGER COUNTER REGISTER BITS */
 530#define DA9052_CHG_CONT_VCHG_BAT        0XF8
 531#define DA9052_CHG_CONT_TCTR            0X07
 532
 533/* INPUT CONTROL REGISTER BITS */
 534#define DA9052_INPUT_CONT_TCTR_MODE     0X80
 535#define DA9052_INPUT_CONT_VBUS_SUSP     0X10
 536#define DA9052_INPUT_CONT_DCIN_SUSP     0X08
 537
 538/* CHARGING TIME REGISTER BITS */
 539#define DA9052_CHGTIME_CHGTIME          0XFF
 540
 541/* BACKUP BATTERY CONTROL REGISTER BITS */
 542#define DA9052_BBATCONT_BCHARGERISET    0XF0
 543#define DA9052_BBATCONT_BCHARGERVSET    0X0F
 544
 545/* LED REGISTERS BITS */
 546/* LED BOOST REGISTER BITS */
 547#define DA9052_BOOST_EBFAULT            0X80
 548#define DA9052_BOOST_MBFAULT            0X40
 549#define DA9052_BOOST_BOOSTFRQ           0X20
 550#define DA9052_BOOST_BOOSTILIM          0X10
 551#define DA9052_BOOST_LED3INEN           0X08
 552#define DA9052_BOOST_LED2INEN           0X04
 553#define DA9052_BOOST_LED1INEN           0X02
 554#define DA9052_BOOST_BOOSTEN            0X01
 555
 556/* LED CONTROL REGISTER BITS */
 557#define DA9052_LEDCONT_SELLEDMODE       0X80
 558#define DA9052_LEDCONT_LED3ICONT        0X40
 559#define DA9052_LEDCONT_LED3RAMP 0X20
 560#define DA9052_LEDCONT_LED3EN           0X10
 561#define DA9052_LEDCONT_LED2RAMP 0X08
 562#define DA9052_LEDCONT_LED2EN           0X04
 563#define DA9052_LEDCONT_LED1RAMP 0X02
 564#define DA9052_LEDCONT_LED1EN           0X01
 565
 566/* LEDMIN123 REGISTER BIT */
 567#define DA9052_LEDMIN123_LEDMINCURRENT  0XFF
 568
 569/* LED1CONF REGISTER BIT */
 570#define DA9052_LED1CONF_LED1CURRENT     0XFF
 571
 572/* LED2CONF REGISTER BIT */
 573#define DA9052_LED2CONF_LED2CURRENT     0XFF
 574
 575/* LED3CONF REGISTER BIT */
 576#define DA9052_LED3CONF_LED3CURRENT     0XFF
 577
 578/* LED COUNT REGISTER BIT */
 579#define DA9052_LED_CONT_DIM             0X80
 580
 581/* ADC MAN REGISTERS BITS */
 582#define DA9052_ADC_MAN_MAN_CONV 0X10
 583#define DA9052_ADC_MAN_MUXSEL_VDDOUT    0X00
 584#define DA9052_ADC_MAN_MUXSEL_ICH       0X01
 585#define DA9052_ADC_MAN_MUXSEL_TBAT      0X02
 586#define DA9052_ADC_MAN_MUXSEL_VBAT      0X03
 587#define DA9052_ADC_MAN_MUXSEL_AD4       0X04
 588#define DA9052_ADC_MAN_MUXSEL_AD5       0X05
 589#define DA9052_ADC_MAN_MUXSEL_AD6       0X06
 590#define DA9052_ADC_MAN_MUXSEL_VBBAT     0X09
 591
 592/* ADC CONTROL REGSISTERS BITS */
 593#define DA9052_ADCCONT_COMP1V2EN        0X80
 594#define DA9052_ADCCONT_ADCMODE          0X40
 595#define DA9052_ADCCONT_TBATISRCEN       0X20
 596#define DA9052_ADCCONT_AD4ISRCEN        0X10
 597#define DA9052_ADCCONT_AUTOAD6EN        0X08
 598#define DA9052_ADCCONT_AUTOAD5EN        0X04
 599#define DA9052_ADCCONT_AUTOAD4EN        0X02
 600#define DA9052_ADCCONT_AUTOVDDEN        0X01
 601
 602/* ADC 10 BIT MANUAL CONVERSION RESULT LOW REGISTER */
 603#define DA9052_ADC_RES_LSB              0X03
 604
 605/* ADC 10 BIT MANUAL CONVERSION RESULT HIGH REGISTER */
 606#define DA9052_ADCRESH_ADCRESMSB        0XFF
 607
 608/* VDD RES REGSISTER BIT*/
 609#define DA9052_VDDRES_VDDOUTRES 0XFF
 610
 611/* VDD MON REGSISTER BIT */
 612#define DA9052_VDDMON_VDDOUTMON 0XFF
 613
 614/* ICHG_AV REGSISTER BIT */
 615#define DA9052_ICHGAV_ICHGAV            0XFF
 616
 617/* ICHG_THD REGSISTER BIT */
 618#define DA9052_ICHGTHD_ICHGTHD          0XFF
 619
 620/* ICHG_END REGSISTER BIT */
 621#define DA9052_ICHGEND_ICHGEND          0XFF
 622
 623/* TBAT_RES REGSISTER BIT */
 624#define DA9052_TBATRES_TBATRES          0XFF
 625
 626/* TBAT_HIGHP REGSISTER BIT */
 627#define DA9052_TBATHIGHP_TBATHIGHP      0XFF
 628
 629/* TBAT_HIGHN REGSISTER BIT */
 630#define DA9052_TBATHIGHN_TBATHIGHN      0XFF
 631
 632/* TBAT_LOW REGSISTER BIT */
 633#define DA9052_TBATLOW_TBATLOW          0XFF
 634
 635/* T_OFFSET REGSISTER BIT */
 636#define DA9052_TOFFSET_TOFFSET          0XFF
 637
 638/* ADCIN4_RES REGSISTER BIT */
 639#define DA9052_ADCIN4RES_ADCIN4RES      0XFF
 640
 641/* ADCIN4_HIGH REGSISTER BIT */
 642#define DA9052_AUTO4HIGH_AUTO4HIGH      0XFF
 643
 644/* ADCIN4_LOW REGSISTER BIT */
 645#define DA9052_AUTO4LOW_AUTO4LOW        0XFF
 646
 647/* ADCIN5_RES REGSISTER BIT */
 648#define DA9052_ADCIN5RES_ADCIN5RES      0XFF
 649
 650/* ADCIN5_HIGH REGSISTER BIT */
 651#define DA9052_AUTO5HIGH_AUTOHIGH       0XFF
 652
 653/* ADCIN5_LOW REGSISTER BIT */
 654#define DA9052_AUTO5LOW_AUTO5LOW        0XFF
 655
 656/* ADCIN6_RES REGSISTER BIT */
 657#define DA9052_ADCIN6RES_ADCIN6RES      0XFF
 658
 659/* ADCIN6_HIGH REGSISTER BIT */
 660#define DA9052_AUTO6HIGH_AUTO6HIGH      0XFF
 661
 662/* ADCIN6_LOW REGSISTER BIT */
 663#define DA9052_AUTO6LOW_AUTO6LOW        0XFF
 664
 665/* TJUNC_RES REGSISTER BIT*/
 666#define DA9052_TJUNCRES_TJUNCRES        0XFF
 667
 668/* TSI REGISTER */
 669/* TSI CONTROL REGISTER A BITS */
 670#define DA9052_TSICONTA_TSIDELAY        0XC0
 671#define DA9052_TSICONTA_TSISKIP 0X38
 672#define DA9052_TSICONTA_TSIMODE 0X04
 673#define DA9052_TSICONTA_PENDETEN        0X02
 674#define DA9052_TSICONTA_AUTOTSIEN       0X01
 675
 676/* TSI CONTROL REGISTER B BITS */
 677#define DA9052_TSICONTB_ADCREF          0X80
 678#define DA9052_TSICONTB_TSIMAN          0X40
 679#define DA9052_TSICONTB_TSIMUX_XP       0X00
 680#define DA9052_TSICONTB_TSIMUX_YP       0X10
 681#define DA9052_TSICONTB_TSIMUX_XN       0X20
 682#define DA9052_TSICONTB_TSIMUX_YN       0X30
 683#define DA9052_TSICONTB_TSISEL3 0X08
 684#define DA9052_TSICONTB_TSISEL2 0X04
 685#define DA9052_TSICONTB_TSISEL1 0X02
 686#define DA9052_TSICONTB_TSISEL0 0X01
 687
 688/* TSI X CO-ORDINATE MSB RESULT REGISTER BITS */
 689#define DA9052_TSIXMSB_TSIXM            0XFF
 690
 691/* TSI Y CO-ORDINATE MSB RESULT REGISTER BITS */
 692#define DA9052_TSIYMSB_TSIYM            0XFF
 693
 694/* TSI CO-ORDINATE LSB RESULT REGISTER BITS */
 695#define DA9052_TSILSB_PENDOWN           0X40
 696#define DA9052_TSILSB_TSIZL             0X30
 697#define DA9052_TSILSB_TSIZL_SHIFT       4
 698#define DA9052_TSILSB_TSIZL_BITS        2
 699#define DA9052_TSILSB_TSIYL             0X0C
 700#define DA9052_TSILSB_TSIYL_SHIFT       2
 701#define DA9052_TSILSB_TSIYL_BITS        2
 702#define DA9052_TSILSB_TSIXL             0X03
 703#define DA9052_TSILSB_TSIXL_SHIFT       0
 704#define DA9052_TSILSB_TSIXL_BITS        2
 705
 706/* TSI Z MEASUREMENT MSB RESULT REGISTER BIT */
 707#define DA9052_TSIZMSB_TSIZM            0XFF
 708
 709/* RTC REGISTER */
 710/* RTC TIMER SECONDS REGISTER BITS */
 711#define DA9052_COUNTS_MONITOR           0X40
 712#define DA9052_RTC_SEC                  0X3F
 713
 714/* RTC TIMER MINUTES REGISTER BIT */
 715#define DA9052_RTC_MIN                  0X3F
 716
 717/* RTC TIMER HOUR REGISTER BIT */
 718#define DA9052_RTC_HOUR         0X1F
 719
 720/* RTC TIMER DAYS REGISTER BIT */
 721#define DA9052_RTC_DAY                  0X1F
 722
 723/* RTC TIMER MONTHS REGISTER BIT */
 724#define DA9052_RTC_MONTH                0X0F
 725
 726/* RTC TIMER YEARS REGISTER BIT */
 727#define DA9052_RTC_YEAR         0X3F
 728
 729/* RTC ALARM MINUTES REGISTER BITS */
 730#define DA9052_ALARMM_I_TICK_TYPE       0X80
 731#define DA9052_ALARMMI_ALARMTYPE        0X40
 732
 733/* RTC ALARM YEARS REGISTER BITS */
 734#define DA9052_ALARM_Y_TICK_ON          0X80
 735#define DA9052_ALARM_Y_ALARM_ON 0X40
 736
 737/* RTC SECONDS REGISTER A BITS */
 738#define DA9052_SECONDA_SECONDSA 0XFF
 739
 740/* RTC SECONDS REGISTER B BITS */
 741#define DA9052_SECONDB_SECONDSB 0XFF
 742
 743/* RTC SECONDS REGISTER C BITS */
 744#define DA9052_SECONDC_SECONDSC 0XFF
 745
 746/* RTC SECONDS REGISTER D BITS */
 747#define DA9052_SECONDD_SECONDSD 0XFF
 748
 749#endif
 750/* __LINUX_MFD_DA9052_REG_H */
 751