Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*
0003  * Register declarations for DA9052 PMICs.
0004  *
0005  * Copyright(c) 2011 Dialog Semiconductor Ltd.
0006  *
0007  * Author: David Dajun Chen <dchen@diasemi.com>
0008  */
0009 
0010 #ifndef __LINUX_MFD_DA9052_REG_H
0011 #define __LINUX_MFD_DA9052_REG_H
0012 
0013 /* PAGE REGISTERS */
0014 #define DA9052_PAGE0_CON_REG        0
0015 #define DA9052_PAGE1_CON_REG        128
0016 
0017 /* STATUS REGISTERS */
0018 #define DA9052_STATUS_A_REG     1
0019 #define DA9052_STATUS_B_REG     2
0020 #define DA9052_STATUS_C_REG     3
0021 #define DA9052_STATUS_D_REG     4
0022 
0023 /* PARK REGISTER */
0024 #define DA9052_PARK_REGISTER        DA9052_STATUS_D_REG
0025 
0026 /* EVENT REGISTERS */
0027 #define DA9052_EVENT_A_REG      5
0028 #define DA9052_EVENT_B_REG      6
0029 #define DA9052_EVENT_C_REG      7
0030 #define DA9052_EVENT_D_REG      8
0031 #define DA9052_FAULTLOG_REG     9
0032 
0033 /* IRQ REGISTERS */
0034 #define DA9052_IRQ_MASK_A_REG       10
0035 #define DA9052_IRQ_MASK_B_REG       11
0036 #define DA9052_IRQ_MASK_C_REG       12
0037 #define DA9052_IRQ_MASK_D_REG       13
0038 
0039 /* CONTROL REGISTERS */
0040 #define DA9052_CONTROL_A_REG        14
0041 #define DA9052_CONTROL_B_REG        15
0042 #define DA9052_CONTROL_C_REG        16
0043 #define DA9052_CONTROL_D_REG        17
0044 
0045 #define DA9052_PDDIS_REG        18
0046 #define DA9052_INTERFACE_REG        19
0047 #define DA9052_RESET_REG        20
0048 
0049 /* GPIO REGISTERS */
0050 #define DA9052_GPIO_0_1_REG     21
0051 #define DA9052_GPIO_2_3_REG     22
0052 #define DA9052_GPIO_4_5_REG     23
0053 #define DA9052_GPIO_6_7_REG     24
0054 #define DA9052_GPIO_8_9_REG     25
0055 #define DA9052_GPIO_10_11_REG       26
0056 #define DA9052_GPIO_12_13_REG       27
0057 #define DA9052_GPIO_14_15_REG       28
0058 
0059 /* POWER SEQUENCER CONTROL REGISTERS */
0060 #define DA9052_ID_0_1_REG       29
0061 #define DA9052_ID_2_3_REG       30
0062 #define DA9052_ID_4_5_REG       31
0063 #define DA9052_ID_6_7_REG       32
0064 #define DA9052_ID_8_9_REG       33
0065 #define DA9052_ID_10_11_REG     34
0066 #define DA9052_ID_12_13_REG     35
0067 #define DA9052_ID_14_15_REG     36
0068 #define DA9052_ID_16_17_REG     37
0069 #define DA9052_ID_18_19_REG     38
0070 #define DA9052_ID_20_21_REG     39
0071 #define DA9052_SEQ_STATUS_REG       40
0072 #define DA9052_SEQ_A_REG        41
0073 #define DA9052_SEQ_B_REG        42
0074 #define DA9052_SEQ_TIMER_REG        43
0075 
0076 /* LDO AND BUCK REGISTERS */
0077 #define DA9052_BUCKA_REG        44
0078 #define DA9052_BUCKB_REG        45
0079 #define DA9052_BUCKCORE_REG     46
0080 #define DA9052_BUCKPRO_REG      47
0081 #define DA9052_BUCKMEM_REG      48
0082 #define DA9052_BUCKPERI_REG     49
0083 #define DA9052_LDO1_REG     50
0084 #define DA9052_LDO2_REG     51
0085 #define DA9052_LDO3_REG     52
0086 #define DA9052_LDO4_REG     53
0087 #define DA9052_LDO5_REG     54
0088 #define DA9052_LDO6_REG     55
0089 #define DA9052_LDO7_REG     56
0090 #define DA9052_LDO8_REG     57
0091 #define DA9052_LDO9_REG     58
0092 #define DA9052_LDO10_REG        59
0093 #define DA9052_SUPPLY_REG       60
0094 #define DA9052_PULLDOWN_REG     61
0095 #define DA9052_CHGBUCK_REG      62
0096 #define DA9052_WAITCONT_REG     63
0097 #define DA9052_ISET_REG     64
0098 #define DA9052_BATCHG_REG       65
0099 
0100 /* BATTERY CONTROL REGISTRS */
0101 #define DA9052_CHG_CONT_REG     66
0102 #define DA9052_INPUT_CONT_REG       67
0103 #define DA9052_CHG_TIME_REG     68
0104 #define DA9052_BBAT_CONT_REG        69
0105 
0106 /* LED CONTROL REGISTERS */
0107 #define DA9052_BOOST_REG        70
0108 #define DA9052_LED_CONT_REG     71
0109 #define DA9052_LEDMIN123_REG        72
0110 #define DA9052_LED1_CONF_REG        73
0111 #define DA9052_LED2_CONF_REG        74
0112 #define DA9052_LED3_CONF_REG        75
0113 #define DA9052_LED1CONT_REG     76
0114 #define DA9052_LED2CONT_REG     77
0115 #define DA9052_LED3CONT_REG     78
0116 #define DA9052_LED_CONT_4_REG       79
0117 #define DA9052_LED_CONT_5_REG       80
0118 
0119 /* ADC CONTROL REGISTERS */
0120 #define DA9052_ADC_MAN_REG      81
0121 #define DA9052_ADC_CONT_REG     82
0122 #define DA9052_ADC_RES_L_REG        83
0123 #define DA9052_ADC_RES_H_REG        84
0124 #define DA9052_VDD_RES_REG      85
0125 #define DA9052_VDD_MON_REG      86
0126 
0127 #define DA9052_ICHG_AV_REG      87
0128 #define DA9052_ICHG_THD_REG     88
0129 #define DA9052_ICHG_END_REG     89
0130 #define DA9052_TBAT_RES_REG     90
0131 #define DA9052_TBAT_HIGHP_REG       91
0132 #define DA9052_TBAT_HIGHN_REG       92
0133 #define DA9052_TBAT_LOW_REG     93
0134 #define DA9052_T_OFFSET_REG     94
0135 
0136 #define DA9052_ADCIN4_RES_REG       95
0137 #define DA9052_AUTO4_HIGH_REG       96
0138 #define DA9052_AUTO4_LOW_REG        97
0139 #define DA9052_ADCIN5_RES_REG       98
0140 #define DA9052_AUTO5_HIGH_REG       99
0141 #define DA9052_AUTO5_LOW_REG        100
0142 #define DA9052_ADCIN6_RES_REG       101
0143 #define DA9052_AUTO6_HIGH_REG       102
0144 #define DA9052_AUTO6_LOW_REG        103
0145 
0146 #define DA9052_TJUNC_RES_REG        104
0147 
0148 /* TSI CONTROL REGISTERS */
0149 #define DA9052_TSI_CONT_A_REG       105
0150 #define DA9052_TSI_CONT_B_REG       106
0151 #define DA9052_TSI_X_MSB_REG        107
0152 #define DA9052_TSI_Y_MSB_REG        108
0153 #define DA9052_TSI_LSB_REG      109
0154 #define DA9052_TSI_Z_MSB_REG        110
0155 
0156 /* RTC COUNT REGISTERS */
0157 #define DA9052_COUNT_S_REG      111
0158 #define DA9052_COUNT_MI_REG     112
0159 #define DA9052_COUNT_H_REG      113
0160 #define DA9052_COUNT_D_REG      114
0161 #define DA9052_COUNT_MO_REG     115
0162 #define DA9052_COUNT_Y_REG      116
0163 
0164 /* RTC CONTROL REGISTERS */
0165 #define DA9052_ALARM_MI_REG     117
0166 #define DA9052_ALARM_H_REG      118
0167 #define DA9052_ALARM_D_REG      119
0168 #define DA9052_ALARM_MO_REG     120
0169 #define DA9052_ALARM_Y_REG      121
0170 #define DA9052_SECOND_A_REG     122
0171 #define DA9052_SECOND_B_REG     123
0172 #define DA9052_SECOND_C_REG     124
0173 #define DA9052_SECOND_D_REG     125
0174 
0175 /* PAGE CONFIGURATION BIT */
0176 #define DA9052_PAGE_CONF        0X80
0177 
0178 /* STATUS REGISTER A BITS */
0179 #define DA9052_STATUSA_VDATDET      0X80
0180 #define DA9052_STATUSA_VBUSSEL      0X40
0181 #define DA9052_STATUSA_DCINSEL      0X20
0182 #define DA9052_STATUSA_VBUSDET      0X10
0183 #define DA9052_STATUSA_DCINDET      0X08
0184 #define DA9052_STATUSA_IDGND        0X04
0185 #define DA9052_STATUSA_IDFLOAT      0X02
0186 #define DA9052_STATUSA_NONKEY       0X01
0187 
0188 /* STATUS REGISTER B BITS */
0189 #define DA9052_STATUSB_COMPDET      0X80
0190 #define DA9052_STATUSB_SEQUENCING   0X40
0191 #define DA9052_STATUSB_GPFB2        0X20
0192 #define DA9052_STATUSB_CHGTO        0X10
0193 #define DA9052_STATUSB_CHGEND       0X08
0194 #define DA9052_STATUSB_CHGLIM       0X04
0195 #define DA9052_STATUSB_CHGPRE       0X02
0196 #define DA9052_STATUSB_CHGATT       0X01
0197 
0198 /* STATUS REGISTER C BITS */
0199 #define DA9052_STATUSC_GPI7     0X80
0200 #define DA9052_STATUSC_GPI6     0X40
0201 #define DA9052_STATUSC_GPI5     0X20
0202 #define DA9052_STATUSC_GPI4     0X10
0203 #define DA9052_STATUSC_GPI3     0X08
0204 #define DA9052_STATUSC_GPI2     0X04
0205 #define DA9052_STATUSC_GPI1     0X02
0206 #define DA9052_STATUSC_GPI0     0X01
0207 
0208 /* STATUS REGISTER D BITS */
0209 #define DA9052_STATUSD_GPI15        0X80
0210 #define DA9052_STATUSD_GPI14        0X40
0211 #define DA9052_STATUSD_GPI13        0X20
0212 #define DA9052_STATUSD_GPI12        0X10
0213 #define DA9052_STATUSD_GPI11        0X08
0214 #define DA9052_STATUSD_GPI10        0X04
0215 #define DA9052_STATUSD_GPI9     0X02
0216 #define DA9052_STATUSD_GPI8     0X01
0217 
0218 /* EVENT REGISTER A BITS */
0219 #define DA9052_EVENTA_ECOMP1V2      0X80
0220 #define DA9052_EVENTA_ESEQRDY       0X40
0221 #define DA9052_EVENTA_EALRAM        0X20
0222 #define DA9052_EVENTA_EVDDLOW       0X10
0223 #define DA9052_EVENTA_EVBUSREM      0X08
0224 #define DA9052_EVENTA_EDCINREM      0X04
0225 #define DA9052_EVENTA_EVBUSDET      0X02
0226 #define DA9052_EVENTA_EDCINDET      0X01
0227 
0228 /* EVENT REGISTER B BITS */
0229 #define DA9052_EVENTB_ETSIREADY 0X80
0230 #define DA9052_EVENTB_EPENDOWN      0X40
0231 #define DA9052_EVENTB_EADCEOM       0X20
0232 #define DA9052_EVENTB_ETBAT     0X10
0233 #define DA9052_EVENTB_ECHGEND       0X08
0234 #define DA9052_EVENTB_EIDGND        0X04
0235 #define DA9052_EVENTB_EIDFLOAT      0X02
0236 #define DA9052_EVENTB_ENONKEY       0X01
0237 
0238 /* EVENT REGISTER C BITS */
0239 #define DA9052_EVENTC_EGPI7     0X80
0240 #define DA9052_EVENTC_EGPI6     0X40
0241 #define DA9052_EVENTC_EGPI5     0X20
0242 #define DA9052_EVENTC_EGPI4     0X10
0243 #define DA9052_EVENTC_EGPI3     0X08
0244 #define DA9052_EVENTC_EGPI2     0X04
0245 #define DA9052_EVENTC_EGPI1     0X02
0246 #define DA9052_EVENTC_EGPI0     0X01
0247 
0248 /* EVENT REGISTER D BITS */
0249 #define DA9052_EVENTD_EGPI15        0X80
0250 #define DA9052_EVENTD_EGPI14        0X40
0251 #define DA9052_EVENTD_EGPI13        0X20
0252 #define DA9052_EVENTD_EGPI12        0X10
0253 #define DA9052_EVENTD_EGPI11        0X08
0254 #define DA9052_EVENTD_EGPI10        0X04
0255 #define DA9052_EVENTD_EGPI9     0X02
0256 #define DA9052_EVENTD_EGPI8     0X01
0257 
0258 /* IRQ MASK REGISTERS BITS */
0259 #define DA9052_M_NONKEY     0X0100
0260 
0261 /* TSI EVENT REGISTERS BITS */
0262 #define DA9052_E_PEN_DOWN       0X4000
0263 #define DA9052_E_TSI_READY      0X8000
0264 
0265 /* FAULT LOG REGISTER BITS */
0266 #define DA9052_FAULTLOG_WAITSET 0X80
0267 #define DA9052_FAULTLOG_NSDSET      0X40
0268 #define DA9052_FAULTLOG_KEYSHUT 0X20
0269 #define DA9052_FAULTLOG_TEMPOVER    0X08
0270 #define DA9052_FAULTLOG_VDDSTART    0X04
0271 #define DA9052_FAULTLOG_VDDFAULT    0X02
0272 #define DA9052_FAULTLOG_TWDERROR    0X01
0273 
0274 /* CONTROL REGISTER A BITS */
0275 #define DA9052_CONTROLA_GPIV        0X80
0276 #define DA9052_CONTROLA_PMOTYPE 0X20
0277 #define DA9052_CONTROLA_PMOV        0X10
0278 #define DA9052_CONTROLA_PMIV        0X08
0279 #define DA9052_CONTROLA_PMIFV       0X08
0280 #define DA9052_CONTROLA_PWR1EN      0X04
0281 #define DA9052_CONTROLA_PWREN       0X02
0282 #define DA9052_CONTROLA_SYSEN       0X01
0283 
0284 /* CONTROL REGISTER B BITS */
0285 #define DA9052_CONTROLB_SHUTDOWN    0X80
0286 #define DA9052_CONTROLB_DEEPSLEEP   0X40
0287 #define DA9052_CONTROL_B_WRITEMODE  0X20
0288 #define DA9052_CONTROLB_BBATEN      0X10
0289 #define DA9052_CONTROLB_OTPREADEN   0X08
0290 #define DA9052_CONTROLB_AUTOBOOT    0X04
0291 #define DA9052_CONTROLB_ACTDIODE    0X02
0292 #define DA9052_CONTROLB_BUCKMERGE   0X01
0293 
0294 /* CONTROL REGISTER C BITS */
0295 #define DA9052_CONTROLC_BLINKDUR    0X80
0296 #define DA9052_CONTROLC_BLINKFRQ    0X60
0297 #define DA9052_CONTROLC_DEBOUNCING  0X1C
0298 #define DA9052_CONTROLC_PMFB2PIN    0X02
0299 #define DA9052_CONTROLC_PMFB1PIN    0X01
0300 
0301 /* CONTROL REGISTER D BITS */
0302 #define DA9052_CONTROLD_WATCHDOG    0X80
0303 #define DA9052_CONTROLD_ACCDETEN    0X40
0304 #define DA9052_CONTROLD_GPI1415SD   0X20
0305 #define DA9052_CONTROLD_NONKEYSD    0X10
0306 #define DA9052_CONTROLD_KEEPACTEN   0X08
0307 #define DA9052_CONTROLD_TWDSCALE    0X07
0308 
0309 /* POWER DOWN DISABLE REGISTER BITS */
0310 #define DA9052_PDDIS_PMCONTPD       0X80
0311 #define DA9052_PDDIS_OUT32KPD       0X40
0312 #define DA9052_PDDIS_CHGBBATPD      0X20
0313 #define DA9052_PDDIS_CHGPD      0X10
0314 #define DA9052_PDDIS_HS2WIREPD      0X08
0315 #define DA9052_PDDIS_PMIFPD     0X04
0316 #define DA9052_PDDIS_GPADCPD        0X02
0317 #define DA9052_PDDIS_GPIOPD     0X01
0318 
0319 /* CONTROL REGISTER D BITS */
0320 #define DA9052_INTERFACE_IFBASEADDR 0XE0
0321 #define DA9052_INTERFACE_NCSPOL 0X10
0322 #define DA9052_INTERFACE_RWPOL      0X08
0323 #define DA9052_INTERFACE_CPHA       0X04
0324 #define DA9052_INTERFACE_CPOL       0X02
0325 #define DA9052_INTERFACE_IFTYPE 0X01
0326 
0327 /* CONTROL REGISTER D BITS */
0328 #define DA9052_RESET_RESETEVENT 0XC0
0329 #define DA9052_RESET_RESETTIMER 0X3F
0330 
0331 /* GPIO REGISTERS */
0332 /* GPIO CONTROL REGISTER BITS */
0333 #define DA9052_GPIO_EVEN_PORT_PIN   0X03
0334 #define DA9052_GPIO_EVEN_PORT_TYPE  0X04
0335 #define DA9052_GPIO_EVEN_PORT_MODE  0X08
0336 
0337 #define DA9052_GPIO_ODD_PORT_PIN    0X30
0338 #define DA9052_GPIO_ODD_PORT_TYPE   0X40
0339 #define DA9052_GPIO_ODD_PORT_MODE   0X80
0340 
0341 /*POWER SEQUENCER REGISTER BITS */
0342 /* SEQ CONTROL REGISTER BITS FOR ID 0 AND 1 */
0343 #define DA9052_ID01_LDO1STEP        0XF0
0344 #define DA9052_ID01_SYSPRE      0X04
0345 #define DA9052_ID01_DEFSUPPLY       0X02
0346 #define DA9052_ID01_NRESMODE        0X01
0347 
0348 /* SEQ CONTROL REGISTER BITS FOR ID 2 AND 3 */
0349 #define DA9052_ID23_LDO3STEP        0XF0
0350 #define DA9052_ID23_LDO2STEP        0X0F
0351 
0352 /* SEQ CONTROL REGISTER BITS FOR ID 4 AND 5 */
0353 #define DA9052_ID45_LDO5STEP        0XF0
0354 #define DA9052_ID45_LDO4STEP        0X0F
0355 
0356 /* SEQ CONTROL REGISTER BITS FOR ID 6 AND 7 */
0357 #define DA9052_ID67_LDO7STEP        0XF0
0358 #define DA9052_ID67_LDO6STEP        0X0F
0359 
0360 /* SEQ CONTROL REGISTER BITS FOR ID 8 AND 9 */
0361 #define DA9052_ID89_LDO9STEP        0XF0
0362 #define DA9052_ID89_LDO8STEP        0X0F
0363 
0364 /* SEQ CONTROL REGISTER BITS FOR ID 10 AND 11 */
0365 #define DA9052_ID1011_PDDISSTEP 0XF0
0366 #define DA9052_ID1011_LDO10STEP 0X0F
0367 
0368 /* SEQ CONTROL REGISTER BITS FOR ID 12 AND 13 */
0369 #define DA9052_ID1213_VMEMSWSTEP    0XF0
0370 #define DA9052_ID1213_VPERISWSTEP   0X0F
0371 
0372 /* SEQ CONTROL REGISTER BITS FOR ID 14 AND 15 */
0373 #define DA9052_ID1415_BUCKPROSTEP   0XF0
0374 #define DA9052_ID1415_BUCKCORESTEP  0X0F
0375 
0376 /* SEQ CONTROL REGISTER BITS FOR ID 16 AND 17 */
0377 #define DA9052_ID1617_BUCKPERISTEP  0XF0
0378 #define DA9052_ID1617_BUCKMEMSTEP   0X0F
0379 
0380 /* SEQ CONTROL REGISTER BITS FOR ID 18 AND 19 */
0381 #define DA9052_ID1819_GPRISE2STEP   0XF0
0382 #define DA9052_ID1819_GPRISE1STEP   0X0F
0383 
0384 /* SEQ CONTROL REGISTER BITS FOR ID 20 AND 21 */
0385 #define DA9052_ID2021_GPFALL2STEP   0XF0
0386 #define DA9052_ID2021_GPFALL1STEP   0X0F
0387 
0388 /* POWER SEQ STATUS REGISTER BITS */
0389 #define DA9052_SEQSTATUS_SEQPOINTER 0XF0
0390 #define DA9052_SEQSTATUS_WAITSTEP   0X0F
0391 
0392 /* POWER SEQ A REGISTER BITS */
0393 #define DA9052_SEQA_POWEREND        0XF0
0394 #define DA9052_SEQA_SYSTEMEND       0X0F
0395 
0396 /* POWER SEQ B REGISTER BITS */
0397 #define DA9052_SEQB_PARTDOWN        0XF0
0398 #define DA9052_SEQB_MAXCOUNT        0X0F
0399 
0400 /* POWER SEQ TIMER REGISTER BITS */
0401 #define DA9052_SEQTIMER_SEQDUMMY    0XF0
0402 #define DA9052_SEQTIMER_SEQTIME 0X0F
0403 
0404 /*POWER SUPPLY CONTROL REGISTER BITS */
0405 /* BUCK REGISTER A BITS */
0406 #define DA9052_BUCKA_BPROILIM       0XC0
0407 #define DA9052_BUCKA_BPROMODE       0X30
0408 #define DA9052_BUCKA_BCOREILIM      0X0C
0409 #define DA9052_BUCKA_BCOREMODE      0X03
0410 
0411 /* BUCK REGISTER B BITS */
0412 #define DA9052_BUCKB_BERIILIM       0XC0
0413 #define DA9052_BUCKB_BPERIMODE      0X30
0414 #define DA9052_BUCKB_BMEMILIM       0X0C
0415 #define DA9052_BUCKB_BMEMMODE       0X03
0416 
0417 /* BUCKCORE REGISTER BITS */
0418 #define DA9052_BUCKCORE_BCORECONF   0X80
0419 #define DA9052_BUCKCORE_BCOREEN 0X40
0420 #define DA9052_BUCKCORE_VBCORE      0X3F
0421 
0422 /* BUCKPRO REGISTER BITS */
0423 #define DA9052_BUCKPRO_BPROCONF 0X80
0424 #define DA9052_BUCKPRO_BPROEN       0X40
0425 #define DA9052_BUCKPRO_VBPRO        0X3F
0426 
0427 /* BUCKMEM REGISTER BITS */
0428 #define DA9052_BUCKMEM_BMEMCONF 0X80
0429 #define DA9052_BUCKMEM_BMEMEN       0X40
0430 #define DA9052_BUCKMEM_VBMEM        0X3F
0431 
0432 /* BUCKPERI REGISTER BITS */
0433 #define DA9052_BUCKPERI_BPERICONF   0X80
0434 #define DA9052_BUCKPERI_BPERIEN 0X40
0435 #define DA9052_BUCKPERI_BPERIHS 0X20
0436 #define DA9052_BUCKPERI_VBPERI      0X1F
0437 
0438 /* LDO1 REGISTER BITS */
0439 #define DA9052_LDO1_LDO1CONF        0X80
0440 #define DA9052_LDO1_LDO1EN      0X40
0441 #define DA9052_LDO1_VLDO1       0X1F
0442 
0443 /* LDO2 REGISTER BITS */
0444 #define DA9052_LDO2_LDO2CONF        0X80
0445 #define DA9052_LDO2_LDO2EN      0X40
0446 #define DA9052_LDO2_VLDO2       0X3F
0447 
0448 /* LDO3 REGISTER BITS */
0449 #define DA9052_LDO3_LDO3CONF        0X80
0450 #define DA9052_LDO3_LDO3EN      0X40
0451 #define DA9052_LDO3_VLDO3       0X3F
0452 
0453 /* LDO4 REGISTER BITS */
0454 #define DA9052_LDO4_LDO4CONF        0X80
0455 #define DA9052_LDO4_LDO4EN      0X40
0456 #define DA9052_LDO4_VLDO4       0X3F
0457 
0458 /* LDO5 REGISTER BITS */
0459 #define DA9052_LDO5_LDO5CONF        0X80
0460 #define DA9052_LDO5_LDO5EN      0X40
0461 #define DA9052_LDO5_VLDO5       0X3F
0462 
0463 /* LDO6 REGISTER BITS */
0464 #define DA9052_LDO6_LDO6CONF        0X80
0465 #define DA9052_LDO6_LDO6EN      0X40
0466 #define DA9052_LDO6_VLDO6       0X3F
0467 
0468 /* LDO7 REGISTER BITS */
0469 #define DA9052_LDO7_LDO7CONF        0X80
0470 #define DA9052_LDO7_LDO7EN      0X40
0471 #define DA9052_LDO7_VLDO7       0X3F
0472 
0473 /* LDO8 REGISTER BITS */
0474 #define DA9052_LDO8_LDO8CONF        0X80
0475 #define DA9052_LDO8_LDO8EN      0X40
0476 #define DA9052_LDO8_VLDO8       0X3F
0477 
0478 /* LDO9 REGISTER BITS */
0479 #define DA9052_LDO9_LDO9CONF        0X80
0480 #define DA9052_LDO9_LDO9EN      0X40
0481 #define DA9052_LDO9_VLDO9       0X3F
0482 
0483 /* LDO10 REGISTER BITS */
0484 #define DA9052_LDO10_LDO10CONF      0X80
0485 #define DA9052_LDO10_LDO10EN        0X40
0486 #define DA9052_LDO10_VLDO10     0X3F
0487 
0488 /* SUPPLY REGISTER BITS */
0489 #define DA9052_SUPPLY_VLOCK     0X80
0490 #define DA9052_SUPPLY_VMEMSWEN      0X40
0491 #define DA9052_SUPPLY_VPERISWEN 0X20
0492 #define DA9052_SUPPLY_VLDO3GO       0X10
0493 #define DA9052_SUPPLY_VLDO2GO       0X08
0494 #define DA9052_SUPPLY_VBMEMGO       0X04
0495 #define DA9052_SUPPLY_VBPROGO       0X02
0496 #define DA9052_SUPPLY_VBCOREGO      0X01
0497 
0498 /* PULLDOWN REGISTER BITS */
0499 #define DA9052_PULLDOWN_LDO5PDDIS   0X20
0500 #define DA9052_PULLDOWN_LDO2PDDIS   0X10
0501 #define DA9052_PULLDOWN_LDO1PDDIS   0X08
0502 #define DA9052_PULLDOWN_MEMPDDIS    0X04
0503 #define DA9052_PULLDOWN_PROPDDIS    0X02
0504 #define DA9052_PULLDOWN_COREPDDIS   0X01
0505 
0506 /* BAT CHARGER REGISTER BITS */
0507 /* CHARGER BUCK REGISTER BITS */
0508 #define DA9052_CHGBUCK_CHGTEMP      0X80
0509 #define DA9052_CHGBUCK_CHGUSBILIM   0X40
0510 #define DA9052_CHGBUCK_CHGBUCKLP    0X20
0511 #define DA9052_CHGBUCK_CHGBUCKEN    0X10
0512 #define DA9052_CHGBUCK_ISETBUCK 0X0F
0513 
0514 /* WAIT COUNTER REGISTER BITS */
0515 #define DA9052_WAITCONT_WAITDIR 0X80
0516 #define DA9052_WAITCONT_RTCCLOCK    0X40
0517 #define DA9052_WAITCONT_WAITMODE    0X20
0518 #define DA9052_WAITCONT_EN32KOUT    0X10
0519 #define DA9052_WAITCONT_DELAYTIME   0X0F
0520 
0521 /* ISET CONTROL REGISTER BITS */
0522 #define DA9052_ISET_ISETDCIN        0XF0
0523 #define DA9052_ISET_ISETVBUS        0X0F
0524 
0525 /* BATTERY CHARGER CONTROL REGISTER BITS */
0526 #define DA9052_BATCHG_ICHGPRE       0XC0
0527 #define DA9052_BATCHG_ICHGBAT       0X3F
0528 
0529 /* CHARGER COUNTER REGISTER BITS */
0530 #define DA9052_CHG_CONT_VCHG_BAT    0XF8
0531 #define DA9052_CHG_CONT_TCTR        0X07
0532 
0533 /* INPUT CONTROL REGISTER BITS */
0534 #define DA9052_INPUT_CONT_TCTR_MODE 0X80
0535 #define DA9052_INPUT_CONT_VBUS_SUSP 0X10
0536 #define DA9052_INPUT_CONT_DCIN_SUSP 0X08
0537 
0538 /* CHARGING TIME REGISTER BITS */
0539 #define DA9052_CHGTIME_CHGTIME      0XFF
0540 
0541 /* BACKUP BATTERY CONTROL REGISTER BITS */
0542 #define DA9052_BBATCONT_BCHARGERISET    0XF0
0543 #define DA9052_BBATCONT_BCHARGERVSET    0X0F
0544 
0545 /* LED REGISTERS BITS */
0546 /* LED BOOST REGISTER BITS */
0547 #define DA9052_BOOST_EBFAULT        0X80
0548 #define DA9052_BOOST_MBFAULT        0X40
0549 #define DA9052_BOOST_BOOSTFRQ       0X20
0550 #define DA9052_BOOST_BOOSTILIM      0X10
0551 #define DA9052_BOOST_LED3INEN       0X08
0552 #define DA9052_BOOST_LED2INEN       0X04
0553 #define DA9052_BOOST_LED1INEN       0X02
0554 #define DA9052_BOOST_BOOSTEN        0X01
0555 
0556 /* LED CONTROL REGISTER BITS */
0557 #define DA9052_LEDCONT_SELLEDMODE   0X80
0558 #define DA9052_LEDCONT_LED3ICONT    0X40
0559 #define DA9052_LEDCONT_LED3RAMP 0X20
0560 #define DA9052_LEDCONT_LED3EN       0X10
0561 #define DA9052_LEDCONT_LED2RAMP 0X08
0562 #define DA9052_LEDCONT_LED2EN       0X04
0563 #define DA9052_LEDCONT_LED1RAMP 0X02
0564 #define DA9052_LEDCONT_LED1EN       0X01
0565 
0566 /* LEDMIN123 REGISTER BIT */
0567 #define DA9052_LEDMIN123_LEDMINCURRENT  0XFF
0568 
0569 /* LED1CONF REGISTER BIT */
0570 #define DA9052_LED1CONF_LED1CURRENT 0XFF
0571 
0572 /* LED2CONF REGISTER BIT */
0573 #define DA9052_LED2CONF_LED2CURRENT 0XFF
0574 
0575 /* LED3CONF REGISTER BIT */
0576 #define DA9052_LED3CONF_LED3CURRENT 0XFF
0577 
0578 /* LED COUNT REGISTER BIT */
0579 #define DA9052_LED_CONT_DIM     0X80
0580 
0581 /* ADC MAN REGISTERS BITS */
0582 #define DA9052_ADC_MAN_MAN_CONV 0X10
0583 #define DA9052_ADC_MAN_MUXSEL_VDDOUT    0X00
0584 #define DA9052_ADC_MAN_MUXSEL_ICH   0X01
0585 #define DA9052_ADC_MAN_MUXSEL_TBAT  0X02
0586 #define DA9052_ADC_MAN_MUXSEL_VBAT  0X03
0587 #define DA9052_ADC_MAN_MUXSEL_AD4   0X04
0588 #define DA9052_ADC_MAN_MUXSEL_AD5   0X05
0589 #define DA9052_ADC_MAN_MUXSEL_AD6   0X06
0590 #define DA9052_ADC_MAN_MUXSEL_VBBAT 0X09
0591 
0592 /* ADC CONTROL REGSISTERS BITS */
0593 #define DA9052_ADCCONT_COMP1V2EN    0X80
0594 #define DA9052_ADCCONT_ADCMODE      0X40
0595 #define DA9052_ADCCONT_TBATISRCEN   0X20
0596 #define DA9052_ADCCONT_AD4ISRCEN    0X10
0597 #define DA9052_ADCCONT_AUTOAD6EN    0X08
0598 #define DA9052_ADCCONT_AUTOAD5EN    0X04
0599 #define DA9052_ADCCONT_AUTOAD4EN    0X02
0600 #define DA9052_ADCCONT_AUTOVDDEN    0X01
0601 
0602 /* ADC 10 BIT MANUAL CONVERSION RESULT LOW REGISTER */
0603 #define DA9052_ADC_RES_LSB      0X03
0604 
0605 /* ADC 10 BIT MANUAL CONVERSION RESULT HIGH REGISTER */
0606 #define DA9052_ADCRESH_ADCRESMSB    0XFF
0607 
0608 /* VDD RES REGSISTER BIT*/
0609 #define DA9052_VDDRES_VDDOUTRES 0XFF
0610 
0611 /* VDD MON REGSISTER BIT */
0612 #define DA9052_VDDMON_VDDOUTMON 0XFF
0613 
0614 /* ICHG_AV REGSISTER BIT */
0615 #define DA9052_ICHGAV_ICHGAV        0XFF
0616 
0617 /* ICHG_THD REGSISTER BIT */
0618 #define DA9052_ICHGTHD_ICHGTHD      0XFF
0619 
0620 /* ICHG_END REGSISTER BIT */
0621 #define DA9052_ICHGEND_ICHGEND      0XFF
0622 
0623 /* TBAT_RES REGSISTER BIT */
0624 #define DA9052_TBATRES_TBATRES      0XFF
0625 
0626 /* TBAT_HIGHP REGSISTER BIT */
0627 #define DA9052_TBATHIGHP_TBATHIGHP  0XFF
0628 
0629 /* TBAT_HIGHN REGSISTER BIT */
0630 #define DA9052_TBATHIGHN_TBATHIGHN  0XFF
0631 
0632 /* TBAT_LOW REGSISTER BIT */
0633 #define DA9052_TBATLOW_TBATLOW      0XFF
0634 
0635 /* T_OFFSET REGSISTER BIT */
0636 #define DA9052_TOFFSET_TOFFSET      0XFF
0637 
0638 /* ADCIN4_RES REGSISTER BIT */
0639 #define DA9052_ADCIN4RES_ADCIN4RES  0XFF
0640 
0641 /* ADCIN4_HIGH REGSISTER BIT */
0642 #define DA9052_AUTO4HIGH_AUTO4HIGH  0XFF
0643 
0644 /* ADCIN4_LOW REGSISTER BIT */
0645 #define DA9052_AUTO4LOW_AUTO4LOW    0XFF
0646 
0647 /* ADCIN5_RES REGSISTER BIT */
0648 #define DA9052_ADCIN5RES_ADCIN5RES  0XFF
0649 
0650 /* ADCIN5_HIGH REGSISTER BIT */
0651 #define DA9052_AUTO5HIGH_AUTOHIGH   0XFF
0652 
0653 /* ADCIN5_LOW REGSISTER BIT */
0654 #define DA9052_AUTO5LOW_AUTO5LOW    0XFF
0655 
0656 /* ADCIN6_RES REGSISTER BIT */
0657 #define DA9052_ADCIN6RES_ADCIN6RES  0XFF
0658 
0659 /* ADCIN6_HIGH REGSISTER BIT */
0660 #define DA9052_AUTO6HIGH_AUTO6HIGH  0XFF
0661 
0662 /* ADCIN6_LOW REGSISTER BIT */
0663 #define DA9052_AUTO6LOW_AUTO6LOW    0XFF
0664 
0665 /* TJUNC_RES REGSISTER BIT*/
0666 #define DA9052_TJUNCRES_TJUNCRES    0XFF
0667 
0668 /* TSI REGISTER */
0669 /* TSI CONTROL REGISTER A BITS */
0670 #define DA9052_TSICONTA_TSIDELAY    0XC0
0671 #define DA9052_TSICONTA_TSISKIP 0X38
0672 #define DA9052_TSICONTA_TSIMODE 0X04
0673 #define DA9052_TSICONTA_PENDETEN    0X02
0674 #define DA9052_TSICONTA_AUTOTSIEN   0X01
0675 
0676 /* TSI CONTROL REGISTER B BITS */
0677 #define DA9052_TSICONTB_ADCREF      0X80
0678 #define DA9052_TSICONTB_TSIMAN      0X40
0679 #define DA9052_TSICONTB_TSIMUX_XP   0X00
0680 #define DA9052_TSICONTB_TSIMUX_YP   0X10
0681 #define DA9052_TSICONTB_TSIMUX_XN   0X20
0682 #define DA9052_TSICONTB_TSIMUX_YN   0X30
0683 #define DA9052_TSICONTB_TSISEL3 0X08
0684 #define DA9052_TSICONTB_TSISEL2 0X04
0685 #define DA9052_TSICONTB_TSISEL1 0X02
0686 #define DA9052_TSICONTB_TSISEL0 0X01
0687 
0688 /* TSI X CO-ORDINATE MSB RESULT REGISTER BITS */
0689 #define DA9052_TSIXMSB_TSIXM        0XFF
0690 
0691 /* TSI Y CO-ORDINATE MSB RESULT REGISTER BITS */
0692 #define DA9052_TSIYMSB_TSIYM        0XFF
0693 
0694 /* TSI CO-ORDINATE LSB RESULT REGISTER BITS */
0695 #define DA9052_TSILSB_PENDOWN       0X40
0696 #define DA9052_TSILSB_TSIZL     0X30
0697 #define DA9052_TSILSB_TSIZL_SHIFT   4
0698 #define DA9052_TSILSB_TSIZL_BITS    2
0699 #define DA9052_TSILSB_TSIYL     0X0C
0700 #define DA9052_TSILSB_TSIYL_SHIFT   2
0701 #define DA9052_TSILSB_TSIYL_BITS    2
0702 #define DA9052_TSILSB_TSIXL     0X03
0703 #define DA9052_TSILSB_TSIXL_SHIFT   0
0704 #define DA9052_TSILSB_TSIXL_BITS    2
0705 
0706 /* TSI Z MEASUREMENT MSB RESULT REGISTER BIT */
0707 #define DA9052_TSIZMSB_TSIZM        0XFF
0708 
0709 /* RTC REGISTER */
0710 /* RTC TIMER SECONDS REGISTER BITS */
0711 #define DA9052_COUNTS_MONITOR       0X40
0712 #define DA9052_RTC_SEC          0X3F
0713 
0714 /* RTC TIMER MINUTES REGISTER BIT */
0715 #define DA9052_RTC_MIN          0X3F
0716 
0717 /* RTC TIMER HOUR REGISTER BIT */
0718 #define DA9052_RTC_HOUR     0X1F
0719 
0720 /* RTC TIMER DAYS REGISTER BIT */
0721 #define DA9052_RTC_DAY          0X1F
0722 
0723 /* RTC TIMER MONTHS REGISTER BIT */
0724 #define DA9052_RTC_MONTH        0X0F
0725 
0726 /* RTC TIMER YEARS REGISTER BIT */
0727 #define DA9052_RTC_YEAR     0X3F
0728 
0729 /* RTC ALARM MINUTES REGISTER BITS */
0730 #define DA9052_ALARMM_I_TICK_TYPE   0X80
0731 #define DA9052_ALARMMI_ALARMTYPE    0X40
0732 
0733 /* RTC ALARM YEARS REGISTER BITS */
0734 #define DA9052_ALARM_Y_TICK_ON      0X80
0735 #define DA9052_ALARM_Y_ALARM_ON 0X40
0736 
0737 /* RTC SECONDS REGISTER A BITS */
0738 #define DA9052_SECONDA_SECONDSA 0XFF
0739 
0740 /* RTC SECONDS REGISTER B BITS */
0741 #define DA9052_SECONDB_SECONDSB 0XFF
0742 
0743 /* RTC SECONDS REGISTER C BITS */
0744 #define DA9052_SECONDC_SECONDSC 0XFF
0745 
0746 /* RTC SECONDS REGISTER D BITS */
0747 #define DA9052_SECONDD_SECONDSD 0XFF
0748 
0749 #endif
0750 /* __LINUX_MFD_DA9052_REG_H */