root/include/linux/mfd/da9150/registers.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-or-later */
   2 /*
   3  * DA9150 MFD Driver - Registers
   4  *
   5  * Copyright (c) 2014 Dialog Semiconductor
   6  *
   7  * Author: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
   8  */
   9 
  10 #ifndef __DA9150_REGISTERS_H
  11 #define __DA9150_REGISTERS_H
  12 
  13 #include <linux/bitops.h>
  14 
  15 /* Registers */
  16 #define DA9150_PAGE_CON                 0x000
  17 #define DA9150_STATUS_A                 0x068
  18 #define DA9150_STATUS_B                 0x069
  19 #define DA9150_STATUS_C                 0x06A
  20 #define DA9150_STATUS_D                 0x06B
  21 #define DA9150_STATUS_E                 0x06C
  22 #define DA9150_STATUS_F                 0x06D
  23 #define DA9150_STATUS_G                 0x06E
  24 #define DA9150_STATUS_H                 0x06F
  25 #define DA9150_STATUS_I                 0x070
  26 #define DA9150_STATUS_J                 0x071
  27 #define DA9150_STATUS_K                 0x072
  28 #define DA9150_STATUS_L                 0x073
  29 #define DA9150_STATUS_N                 0x074
  30 #define DA9150_FAULT_LOG_A              0x076
  31 #define DA9150_FAULT_LOG_B              0x077
  32 #define DA9150_EVENT_E                  0x078
  33 #define DA9150_EVENT_F                  0x079
  34 #define DA9150_EVENT_G                  0x07A
  35 #define DA9150_EVENT_H                  0x07B
  36 #define DA9150_IRQ_MASK_E               0x07C
  37 #define DA9150_IRQ_MASK_F               0x07D
  38 #define DA9150_IRQ_MASK_G               0x07E
  39 #define DA9150_IRQ_MASK_H               0x07F
  40 #define DA9150_PAGE_CON_1               0x080
  41 #define DA9150_CONFIG_A                 0x0E0
  42 #define DA9150_CONFIG_B                 0x0E1
  43 #define DA9150_CONFIG_C                 0x0E2
  44 #define DA9150_CONFIG_D                 0x0E3
  45 #define DA9150_CONFIG_E                 0x0E4
  46 #define DA9150_CONTROL_A                0x0E5
  47 #define DA9150_CONTROL_B                0x0E6
  48 #define DA9150_CONTROL_C                0x0E7
  49 #define DA9150_GPIO_A_B                 0x0E8
  50 #define DA9150_GPIO_C_D                 0x0E9
  51 #define DA9150_GPIO_MODE_CONT           0x0EA
  52 #define DA9150_GPIO_CTRL_B              0x0EB
  53 #define DA9150_GPIO_CTRL_A              0x0EC
  54 #define DA9150_GPIO_CTRL_C              0x0ED
  55 #define DA9150_GPIO_CFG_A               0x0EE
  56 #define DA9150_GPIO_CFG_B               0x0EF
  57 #define DA9150_GPIO_CFG_C               0x0F0
  58 #define DA9150_GPADC_MAN                0x0F2
  59 #define DA9150_GPADC_RES_A              0x0F4
  60 #define DA9150_GPADC_RES_B              0x0F5
  61 #define DA9150_PAGE_CON_2               0x100
  62 #define DA9150_OTP_CONT_SHARED          0x101
  63 #define DA9150_INTERFACE_SHARED         0x105
  64 #define DA9150_CONFIG_A_SHARED          0x106
  65 #define DA9150_CONFIG_D_SHARED          0x109
  66 #define DA9150_ADETVB_CFG_C             0x150
  67 #define DA9150_ADETD_STAT               0x151
  68 #define DA9150_ADET_CMPSTAT             0x152
  69 #define DA9150_ADET_CTRL_A              0x153
  70 #define DA9150_ADETVB_CFG_B             0x154
  71 #define DA9150_ADETVB_CFG_A             0x155
  72 #define DA9150_ADETAC_CFG_A             0x156
  73 #define DA9150_ADDETAC_CFG_B            0x157
  74 #define DA9150_ADETAC_CFG_C             0x158
  75 #define DA9150_ADETAC_CFG_D             0x159
  76 #define DA9150_ADETVB_CFG_D             0x15A
  77 #define DA9150_ADETID_CFG_A             0x15B
  78 #define DA9150_ADET_RID_PT_CHG_H        0x15C
  79 #define DA9150_ADET_RID_PT_CHG_L        0x15D
  80 #define DA9150_PPR_TCTR_B               0x160
  81 #define DA9150_PPR_BKCTRL_A             0x163
  82 #define DA9150_PPR_BKCFG_A              0x164
  83 #define DA9150_PPR_BKCFG_B              0x165
  84 #define DA9150_PPR_CHGCTRL_A            0x166
  85 #define DA9150_PPR_CHGCTRL_B            0x167
  86 #define DA9150_PPR_CHGCTRL_C            0x168
  87 #define DA9150_PPR_TCTR_A               0x169
  88 #define DA9150_PPR_CHGCTRL_D            0x16A
  89 #define DA9150_PPR_CHGCTRL_E            0x16B
  90 #define DA9150_PPR_CHGCTRL_F            0x16C
  91 #define DA9150_PPR_CHGCTRL_G            0x16D
  92 #define DA9150_PPR_CHGCTRL_H            0x16E
  93 #define DA9150_PPR_CHGCTRL_I            0x16F
  94 #define DA9150_PPR_CHGCTRL_J            0x170
  95 #define DA9150_PPR_CHGCTRL_K            0x171
  96 #define DA9150_PPR_CHGCTRL_L            0x172
  97 #define DA9150_PPR_CHGCTRL_M            0x173
  98 #define DA9150_PPR_THYST_A              0x174
  99 #define DA9150_PPR_THYST_B              0x175
 100 #define DA9150_PPR_THYST_C              0x176
 101 #define DA9150_PPR_THYST_D              0x177
 102 #define DA9150_PPR_THYST_E              0x178
 103 #define DA9150_PPR_THYST_F              0x179
 104 #define DA9150_PPR_THYST_G              0x17A
 105 #define DA9150_PAGE_CON_3               0x180
 106 #define DA9150_PAGE_CON_4               0x200
 107 #define DA9150_PAGE_CON_5               0x280
 108 #define DA9150_PAGE_CON_6               0x300
 109 #define DA9150_COREBTLD_STAT_A          0x302
 110 #define DA9150_COREBTLD_CTRL_A          0x303
 111 #define DA9150_CORE_CONFIG_A            0x304
 112 #define DA9150_CORE_CONFIG_C            0x305
 113 #define DA9150_CORE_CONFIG_B            0x306
 114 #define DA9150_CORE_CFG_DATA_A          0x307
 115 #define DA9150_CORE_CFG_DATA_B          0x308
 116 #define DA9150_CORE_CMD_A               0x309
 117 #define DA9150_CORE_DATA_A              0x30A
 118 #define DA9150_CORE_DATA_B              0x30B
 119 #define DA9150_CORE_DATA_C              0x30C
 120 #define DA9150_CORE_DATA_D              0x30D
 121 #define DA9150_CORE2WIRE_STAT_A         0x310
 122 #define DA9150_CORE2WIRE_CTRL_A         0x311
 123 #define DA9150_FW_CTRL_A                0x312
 124 #define DA9150_FW_CTRL_C                0x313
 125 #define DA9150_FW_CTRL_D                0x314
 126 #define DA9150_FG_CTRL_A                0x315
 127 #define DA9150_FG_CTRL_B                0x316
 128 #define DA9150_FW_CTRL_E                0x317
 129 #define DA9150_FW_CTRL_B                0x318
 130 #define DA9150_GPADC_CMAN               0x320
 131 #define DA9150_GPADC_CRES_A             0x322
 132 #define DA9150_GPADC_CRES_B             0x323
 133 #define DA9150_CC_CFG_A                 0x328
 134 #define DA9150_CC_CFG_B                 0x329
 135 #define DA9150_CC_ICHG_RES_A            0x32A
 136 #define DA9150_CC_ICHG_RES_B            0x32B
 137 #define DA9150_CC_IAVG_RES_A            0x32C
 138 #define DA9150_CC_IAVG_RES_B            0x32D
 139 #define DA9150_TAUX_CTRL_A              0x330
 140 #define DA9150_TAUX_RELOAD_H            0x332
 141 #define DA9150_TAUX_RELOAD_L            0x333
 142 #define DA9150_TAUX_VALUE_H             0x334
 143 #define DA9150_TAUX_VALUE_L             0x335
 144 #define DA9150_AUX_DATA_0               0x338
 145 #define DA9150_AUX_DATA_1               0x339
 146 #define DA9150_AUX_DATA_2               0x33A
 147 #define DA9150_AUX_DATA_3               0x33B
 148 #define DA9150_BIF_CTRL                 0x340
 149 #define DA9150_TBAT_CTRL_A              0x342
 150 #define DA9150_TBAT_CTRL_B              0x343
 151 #define DA9150_TBAT_RES_A               0x344
 152 #define DA9150_TBAT_RES_B               0x345
 153 
 154 /* DA9150_PAGE_CON = 0x000 */
 155 #define DA9150_PAGE_SHIFT                       0
 156 #define DA9150_PAGE_MASK                        (0x3f << 0)
 157 #define DA9150_I2C_PAGE_SHIFT                   1
 158 #define DA9150_I2C_PAGE_MASK                    (0x1f << 1)
 159 #define DA9150_WRITE_MODE_SHIFT                 6
 160 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 161 #define DA9150_REVERT_SHIFT                     7
 162 #define DA9150_REVERT_MASK                      BIT(7)
 163 
 164 /* DA9150_STATUS_A = 0x068 */
 165 #define DA9150_WKUP_STAT_SHIFT                  2
 166 #define DA9150_WKUP_STAT_MASK                   (0x0f << 2)
 167 #define DA9150_SLEEP_STAT_SHIFT                 6
 168 #define DA9150_SLEEP_STAT_MASK                  (0x03 << 6)
 169 
 170 /* DA9150_STATUS_B = 0x069 */
 171 #define DA9150_VFAULT_STAT_SHIFT                0
 172 #define DA9150_VFAULT_STAT_MASK                 BIT(0)
 173 #define DA9150_TFAULT_STAT_SHIFT                1
 174 #define DA9150_TFAULT_STAT_MASK                 BIT(1)
 175 
 176 /* DA9150_STATUS_C = 0x06A */
 177 #define DA9150_VDD33_STAT_SHIFT                 0
 178 #define DA9150_VDD33_STAT_MASK                  BIT(0)
 179 #define DA9150_VDD33_SLEEP_SHIFT                1
 180 #define DA9150_VDD33_SLEEP_MASK                 BIT(1)
 181 #define DA9150_LFOSC_STAT_SHIFT                 7
 182 #define DA9150_LFOSC_STAT_MASK                  BIT(7)
 183 
 184 /* DA9150_STATUS_D = 0x06B */
 185 #define DA9150_GPIOA_STAT_SHIFT                 0
 186 #define DA9150_GPIOA_STAT_MASK                  BIT(0)
 187 #define DA9150_GPIOB_STAT_SHIFT                 1
 188 #define DA9150_GPIOB_STAT_MASK                  BIT(1)
 189 #define DA9150_GPIOC_STAT_SHIFT                 2
 190 #define DA9150_GPIOC_STAT_MASK                  BIT(2)
 191 #define DA9150_GPIOD_STAT_SHIFT                 3
 192 #define DA9150_GPIOD_STAT_MASK                  BIT(3)
 193 
 194 /* DA9150_STATUS_E = 0x06C */
 195 #define DA9150_DTYPE_SHIFT                      0
 196 #define DA9150_DTYPE_MASK                       (0x1f << 0)
 197 #define DA9150_DTYPE_DT_NIL                     (0x00 << 0)
 198 #define DA9150_DTYPE_DT_USB_OTG                 BIT(0)
 199 #define DA9150_DTYPE_DT_USB_STD                 (0x02 << 0)
 200 #define DA9150_DTYPE_DT_USB_CHG                 (0x03 << 0)
 201 #define DA9150_DTYPE_DT_ACA_CHG                 (0x04 << 0)
 202 #define DA9150_DTYPE_DT_ACA_OTG                 (0x05 << 0)
 203 #define DA9150_DTYPE_DT_ACA_DOC                 (0x06 << 0)
 204 #define DA9150_DTYPE_DT_DED_CHG                 (0x07 << 0)
 205 #define DA9150_DTYPE_DT_CR5_CHG                 (0x08 << 0)
 206 #define DA9150_DTYPE_DT_CR4_CHG                 (0x0c << 0)
 207 #define DA9150_DTYPE_DT_PT_CHG                  (0x11 << 0)
 208 #define DA9150_DTYPE_DT_NN_ACC                  (0x16 << 0)
 209 #define DA9150_DTYPE_DT_NN_CHG                  (0x17 << 0)
 210 
 211 /* DA9150_STATUS_F = 0x06D */
 212 #define DA9150_SESS_VLD_SHIFT                   0
 213 #define DA9150_SESS_VLD_MASK                    BIT(0)
 214 #define DA9150_ID_ERR_SHIFT                     1
 215 #define DA9150_ID_ERR_MASK                      BIT(1)
 216 #define DA9150_PT_CHG_SHIFT                     2
 217 #define DA9150_PT_CHG_MASK                      BIT(2)
 218 
 219 /* DA9150_STATUS_G = 0x06E */
 220 #define DA9150_RID_SHIFT                        0
 221 #define DA9150_RID_MASK                         (0xff << 0)
 222 
 223 /* DA9150_STATUS_H = 0x06F */
 224 #define DA9150_VBUS_STAT_SHIFT                  0
 225 #define DA9150_VBUS_STAT_MASK                   (0x07 << 0)
 226 #define DA9150_VBUS_STAT_OFF                    (0x00 << 0)
 227 #define DA9150_VBUS_STAT_WAIT                   BIT(0)
 228 #define DA9150_VBUS_STAT_CHG                    (0x02 << 0)
 229 #define DA9150_VBUS_TRED_SHIFT                  3
 230 #define DA9150_VBUS_TRED_MASK                   BIT(3)
 231 #define DA9150_VBUS_DROP_STAT_SHIFT             4
 232 #define DA9150_VBUS_DROP_STAT_MASK              (0x0f << 4)
 233 
 234 /* DA9150_STATUS_I = 0x070 */
 235 #define DA9150_VBUS_ISET_STAT_SHIFT             0
 236 #define DA9150_VBUS_ISET_STAT_MASK              (0x1f << 0)
 237 #define DA9150_VBUS_OT_SHIFT                    7
 238 #define DA9150_VBUS_OT_MASK                     BIT(7)
 239 
 240 /* DA9150_STATUS_J = 0x071 */
 241 #define DA9150_CHG_STAT_SHIFT                   0
 242 #define DA9150_CHG_STAT_MASK                    (0x0f << 0)
 243 #define DA9150_CHG_STAT_OFF                     (0x00 << 0)
 244 #define DA9150_CHG_STAT_SUSP                    BIT(0)
 245 #define DA9150_CHG_STAT_ACT                     (0x02 << 0)
 246 #define DA9150_CHG_STAT_PRE                     (0x03 << 0)
 247 #define DA9150_CHG_STAT_CC                      (0x04 << 0)
 248 #define DA9150_CHG_STAT_CV                      (0x05 << 0)
 249 #define DA9150_CHG_STAT_FULL                    (0x06 << 0)
 250 #define DA9150_CHG_STAT_TEMP                    (0x07 << 0)
 251 #define DA9150_CHG_STAT_TIME                    (0x08 << 0)
 252 #define DA9150_CHG_STAT_BAT                     (0x09 << 0)
 253 #define DA9150_CHG_TEMP_SHIFT                   4
 254 #define DA9150_CHG_TEMP_MASK                    (0x07 << 4)
 255 #define DA9150_CHG_TEMP_UNDER                   (0x06 << 4)
 256 #define DA9150_CHG_TEMP_OVER                    (0x07 << 4)
 257 #define DA9150_CHG_IEND_STAT_SHIFT              7
 258 #define DA9150_CHG_IEND_STAT_MASK               BIT(7)
 259 
 260 /* DA9150_STATUS_K = 0x072 */
 261 #define DA9150_CHG_IAV_H_SHIFT                  0
 262 #define DA9150_CHG_IAV_H_MASK                   (0xff << 0)
 263 
 264 /* DA9150_STATUS_L = 0x073 */
 265 #define DA9150_CHG_IAV_L_SHIFT                  5
 266 #define DA9150_CHG_IAV_L_MASK                   (0x07 << 5)
 267 
 268 /* DA9150_STATUS_N = 0x074 */
 269 #define DA9150_CHG_TIME_SHIFT                   1
 270 #define DA9150_CHG_TIME_MASK                    BIT(1)
 271 #define DA9150_CHG_TRED_SHIFT                   2
 272 #define DA9150_CHG_TRED_MASK                    BIT(2)
 273 #define DA9150_CHG_TJUNC_CLASS_SHIFT            3
 274 #define DA9150_CHG_TJUNC_CLASS_MASK             (0x07 << 3)
 275 #define DA9150_CHG_TJUNC_CLASS_6                (0x06 << 3)
 276 #define DA9150_EBS_STAT_SHIFT                   6
 277 #define DA9150_EBS_STAT_MASK                    BIT(6)
 278 #define DA9150_CHG_BAT_REMOVED_SHIFT            7
 279 #define DA9150_CHG_BAT_REMOVED_MASK             BIT(7)
 280 
 281 /* DA9150_FAULT_LOG_A = 0x076 */
 282 #define DA9150_TEMP_FAULT_SHIFT                 0
 283 #define DA9150_TEMP_FAULT_MASK                  BIT(0)
 284 #define DA9150_VSYS_FAULT_SHIFT                 1
 285 #define DA9150_VSYS_FAULT_MASK                  BIT(1)
 286 #define DA9150_START_FAULT_SHIFT                2
 287 #define DA9150_START_FAULT_MASK                 BIT(2)
 288 #define DA9150_EXT_FAULT_SHIFT                  3
 289 #define DA9150_EXT_FAULT_MASK                   BIT(3)
 290 #define DA9150_POR_FAULT_SHIFT                  4
 291 #define DA9150_POR_FAULT_MASK                   BIT(4)
 292 
 293 /* DA9150_FAULT_LOG_B = 0x077 */
 294 #define DA9150_VBUS_FAULT_SHIFT                 0
 295 #define DA9150_VBUS_FAULT_MASK                  BIT(0)
 296 #define DA9150_OTG_FAULT_SHIFT                  1
 297 #define DA9150_OTG_FAULT_MASK                   BIT(1)
 298 
 299 /* DA9150_EVENT_E = 0x078 */
 300 #define DA9150_E_VBUS_SHIFT                     0
 301 #define DA9150_E_VBUS_MASK                      BIT(0)
 302 #define DA9150_E_CHG_SHIFT                      1
 303 #define DA9150_E_CHG_MASK                       BIT(1)
 304 #define DA9150_E_TCLASS_SHIFT                   2
 305 #define DA9150_E_TCLASS_MASK                    BIT(2)
 306 #define DA9150_E_TJUNC_SHIFT                    3
 307 #define DA9150_E_TJUNC_MASK                     BIT(3)
 308 #define DA9150_E_VFAULT_SHIFT                   4
 309 #define DA9150_E_VFAULT_MASK                    BIT(4)
 310 #define DA9150_EVENTS_H_SHIFT                   5
 311 #define DA9150_EVENTS_H_MASK                    BIT(5)
 312 #define DA9150_EVENTS_G_SHIFT                   6
 313 #define DA9150_EVENTS_G_MASK                    BIT(6)
 314 #define DA9150_EVENTS_F_SHIFT                   7
 315 #define DA9150_EVENTS_F_MASK                    BIT(7)
 316 
 317 /* DA9150_EVENT_F = 0x079 */
 318 #define DA9150_E_CONF_SHIFT                     0
 319 #define DA9150_E_CONF_MASK                      BIT(0)
 320 #define DA9150_E_DAT_SHIFT                      1
 321 #define DA9150_E_DAT_MASK                       BIT(1)
 322 #define DA9150_E_DTYPE_SHIFT                    3
 323 #define DA9150_E_DTYPE_MASK                     BIT(3)
 324 #define DA9150_E_ID_SHIFT                       4
 325 #define DA9150_E_ID_MASK                        BIT(4)
 326 #define DA9150_E_ADP_SHIFT                      5
 327 #define DA9150_E_ADP_MASK                       BIT(5)
 328 #define DA9150_E_SESS_END_SHIFT                 6
 329 #define DA9150_E_SESS_END_MASK                  BIT(6)
 330 #define DA9150_E_SESS_VLD_SHIFT                 7
 331 #define DA9150_E_SESS_VLD_MASK                  BIT(7)
 332 
 333 /* DA9150_EVENT_G = 0x07A */
 334 #define DA9150_E_FG_SHIFT                       0
 335 #define DA9150_E_FG_MASK                        BIT(0)
 336 #define DA9150_E_GP_SHIFT                       1
 337 #define DA9150_E_GP_MASK                        BIT(1)
 338 #define DA9150_E_TBAT_SHIFT                     2
 339 #define DA9150_E_TBAT_MASK                      BIT(2)
 340 #define DA9150_E_GPIOA_SHIFT                    3
 341 #define DA9150_E_GPIOA_MASK                     BIT(3)
 342 #define DA9150_E_GPIOB_SHIFT                    4
 343 #define DA9150_E_GPIOB_MASK                     BIT(4)
 344 #define DA9150_E_GPIOC_SHIFT                    5
 345 #define DA9150_E_GPIOC_MASK                     BIT(5)
 346 #define DA9150_E_GPIOD_SHIFT                    6
 347 #define DA9150_E_GPIOD_MASK                     BIT(6)
 348 #define DA9150_E_GPADC_SHIFT                    7
 349 #define DA9150_E_GPADC_MASK                     BIT(7)
 350 
 351 /* DA9150_EVENT_H = 0x07B */
 352 #define DA9150_E_WKUP_SHIFT                     0
 353 #define DA9150_E_WKUP_MASK                      BIT(0)
 354 
 355 /* DA9150_IRQ_MASK_E = 0x07C */
 356 #define DA9150_M_VBUS_SHIFT                     0
 357 #define DA9150_M_VBUS_MASK                      BIT(0)
 358 #define DA9150_M_CHG_SHIFT                      1
 359 #define DA9150_M_CHG_MASK                       BIT(1)
 360 #define DA9150_M_TJUNC_SHIFT                    3
 361 #define DA9150_M_TJUNC_MASK                     BIT(3)
 362 #define DA9150_M_VFAULT_SHIFT                   4
 363 #define DA9150_M_VFAULT_MASK                    BIT(4)
 364 
 365 /* DA9150_IRQ_MASK_F = 0x07D */
 366 #define DA9150_M_CONF_SHIFT                     0
 367 #define DA9150_M_CONF_MASK                      BIT(0)
 368 #define DA9150_M_DAT_SHIFT                      1
 369 #define DA9150_M_DAT_MASK                       BIT(1)
 370 #define DA9150_M_DTYPE_SHIFT                    3
 371 #define DA9150_M_DTYPE_MASK                     BIT(3)
 372 #define DA9150_M_ID_SHIFT                       4
 373 #define DA9150_M_ID_MASK                        BIT(4)
 374 #define DA9150_M_ADP_SHIFT                      5
 375 #define DA9150_M_ADP_MASK                       BIT(5)
 376 #define DA9150_M_SESS_END_SHIFT                 6
 377 #define DA9150_M_SESS_END_MASK                  BIT(6)
 378 #define DA9150_M_SESS_VLD_SHIFT                 7
 379 #define DA9150_M_SESS_VLD_MASK                  BIT(7)
 380 
 381 /* DA9150_IRQ_MASK_G = 0x07E */
 382 #define DA9150_M_FG_SHIFT                       0
 383 #define DA9150_M_FG_MASK                        BIT(0)
 384 #define DA9150_M_GP_SHIFT                       1
 385 #define DA9150_M_GP_MASK                        BIT(1)
 386 #define DA9150_M_TBAT_SHIFT                     2
 387 #define DA9150_M_TBAT_MASK                      BIT(2)
 388 #define DA9150_M_GPIOA_SHIFT                    3
 389 #define DA9150_M_GPIOA_MASK                     BIT(3)
 390 #define DA9150_M_GPIOB_SHIFT                    4
 391 #define DA9150_M_GPIOB_MASK                     BIT(4)
 392 #define DA9150_M_GPIOC_SHIFT                    5
 393 #define DA9150_M_GPIOC_MASK                     BIT(5)
 394 #define DA9150_M_GPIOD_SHIFT                    6
 395 #define DA9150_M_GPIOD_MASK                     BIT(6)
 396 #define DA9150_M_GPADC_SHIFT                    7
 397 #define DA9150_M_GPADC_MASK                     BIT(7)
 398 
 399 /* DA9150_IRQ_MASK_H = 0x07F */
 400 #define DA9150_M_WKUP_SHIFT                     0
 401 #define DA9150_M_WKUP_MASK                      BIT(0)
 402 
 403 /* DA9150_PAGE_CON_1 = 0x080 */
 404 #define DA9150_PAGE_SHIFT                       0
 405 #define DA9150_PAGE_MASK                        (0x3f << 0)
 406 #define DA9150_WRITE_MODE_SHIFT                 6
 407 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 408 #define DA9150_REVERT_SHIFT                     7
 409 #define DA9150_REVERT_MASK                      BIT(7)
 410 
 411 /* DA9150_CONFIG_A = 0x0E0 */
 412 #define DA9150_RESET_DUR_SHIFT                  0
 413 #define DA9150_RESET_DUR_MASK                   (0x03 << 0)
 414 #define DA9150_RESET_EXT_SHIFT                  2
 415 #define DA9150_RESET_EXT_MASK                   (0x03 << 2)
 416 #define DA9150_START_MAX_SHIFT                  4
 417 #define DA9150_START_MAX_MASK                   (0x03 << 4)
 418 #define DA9150_PS_WAIT_EN_SHIFT                 6
 419 #define DA9150_PS_WAIT_EN_MASK                  BIT(6)
 420 #define DA9150_PS_DISABLE_DIRECT_SHIFT          7
 421 #define DA9150_PS_DISABLE_DIRECT_MASK           BIT(7)
 422 
 423 /* DA9150_CONFIG_B = 0x0E1 */
 424 #define DA9150_VFAULT_ADJ_SHIFT                 0
 425 #define DA9150_VFAULT_ADJ_MASK                  (0x0f << 0)
 426 #define DA9150_VFAULT_HYST_SHIFT                4
 427 #define DA9150_VFAULT_HYST_MASK                 (0x07 << 4)
 428 #define DA9150_VFAULT_EN_SHIFT                  7
 429 #define DA9150_VFAULT_EN_MASK                   BIT(7)
 430 
 431 /* DA9150_CONFIG_C = 0x0E2 */
 432 #define DA9150_VSYS_MIN_SHIFT                   3
 433 #define DA9150_VSYS_MIN_MASK                    (0x1f << 3)
 434 
 435 /* DA9150_CONFIG_D = 0x0E3 */
 436 #define DA9150_LFOSC_EXT_SHIFT                  0
 437 #define DA9150_LFOSC_EXT_MASK                   BIT(0)
 438 #define DA9150_VDD33_DWN_SHIFT                  1
 439 #define DA9150_VDD33_DWN_MASK                   BIT(1)
 440 #define DA9150_WKUP_PM_EN_SHIFT                 2
 441 #define DA9150_WKUP_PM_EN_MASK                  BIT(2)
 442 #define DA9150_WKUP_CE_SEL_SHIFT                3
 443 #define DA9150_WKUP_CE_SEL_MASK                 (0x03 << 3)
 444 #define DA9150_WKUP_CLK32K_EN_SHIFT             5
 445 #define DA9150_WKUP_CLK32K_EN_MASK              BIT(5)
 446 #define DA9150_DISABLE_DEL_SHIFT                7
 447 #define DA9150_DISABLE_DEL_MASK                 BIT(7)
 448 
 449 /* DA9150_CONFIG_E = 0x0E4 */
 450 #define DA9150_PM_SPKSUP_DIS_SHIFT              0
 451 #define DA9150_PM_SPKSUP_DIS_MASK               BIT(0)
 452 #define DA9150_PM_MERGE_SHIFT                   1
 453 #define DA9150_PM_MERGE_MASK                    BIT(1)
 454 #define DA9150_PM_SR_OFF_SHIFT                  2
 455 #define DA9150_PM_SR_OFF_MASK                   BIT(2)
 456 #define DA9150_PM_TIMEOUT_EN_SHIFT              3
 457 #define DA9150_PM_TIMEOUT_EN_MASK               BIT(3)
 458 #define DA9150_PM_DLY_SEL_SHIFT                 4
 459 #define DA9150_PM_DLY_SEL_MASK                  (0x07 << 4)
 460 #define DA9150_PM_OUT_DLY_SEL_SHIFT             7
 461 #define DA9150_PM_OUT_DLY_SEL_MASK              BIT(7)
 462 
 463 /* DA9150_CONTROL_A = 0x0E5 */
 464 #define DA9150_VDD33_SL_SHIFT                   0
 465 #define DA9150_VDD33_SL_MASK                    BIT(0)
 466 #define DA9150_VDD33_LPM_SHIFT                  1
 467 #define DA9150_VDD33_LPM_MASK                   (0x03 << 1)
 468 #define DA9150_VDD33_EN_SHIFT                   3
 469 #define DA9150_VDD33_EN_MASK                    BIT(3)
 470 #define DA9150_GPI_LPM_SHIFT                    6
 471 #define DA9150_GPI_LPM_MASK                     BIT(6)
 472 #define DA9150_PM_IF_LPM_SHIFT                  7
 473 #define DA9150_PM_IF_LPM_MASK                   BIT(7)
 474 
 475 /* DA9150_CONTROL_B = 0x0E6 */
 476 #define DA9150_LPM_SHIFT                        0
 477 #define DA9150_LPM_MASK                         BIT(0)
 478 #define DA9150_RESET_SHIFT                      1
 479 #define DA9150_RESET_MASK                       BIT(1)
 480 #define DA9150_RESET_USRCONF_EN_SHIFT           2
 481 #define DA9150_RESET_USRCONF_EN_MASK            BIT(2)
 482 
 483 /* DA9150_CONTROL_C = 0x0E7 */
 484 #define DA9150_DISABLE_SHIFT                    0
 485 #define DA9150_DISABLE_MASK                     BIT(0)
 486 
 487 /* DA9150_GPIO_A_B = 0x0E8 */
 488 #define DA9150_GPIOA_PIN_SHIFT                  0
 489 #define DA9150_GPIOA_PIN_MASK                   (0x07 << 0)
 490 #define DA9150_GPIOA_PIN_GPI                    (0x00 << 0)
 491 #define DA9150_GPIOA_PIN_GPO_OD                 BIT(0)
 492 #define DA9150_GPIOA_TYPE_SHIFT                 3
 493 #define DA9150_GPIOA_TYPE_MASK                  BIT(3)
 494 #define DA9150_GPIOB_PIN_SHIFT                  4
 495 #define DA9150_GPIOB_PIN_MASK                   (0x07 << 4)
 496 #define DA9150_GPIOB_PIN_GPI                    (0x00 << 4)
 497 #define DA9150_GPIOB_PIN_GPO_OD                 BIT(4)
 498 #define DA9150_GPIOB_TYPE_SHIFT                 7
 499 #define DA9150_GPIOB_TYPE_MASK                  BIT(7)
 500 
 501 /* DA9150_GPIO_C_D = 0x0E9 */
 502 #define DA9150_GPIOC_PIN_SHIFT                  0
 503 #define DA9150_GPIOC_PIN_MASK                   (0x07 << 0)
 504 #define DA9150_GPIOC_PIN_GPI                    (0x00 << 0)
 505 #define DA9150_GPIOC_PIN_GPO_OD                 BIT(0)
 506 #define DA9150_GPIOC_TYPE_SHIFT                 3
 507 #define DA9150_GPIOC_TYPE_MASK                  BIT(3)
 508 #define DA9150_GPIOD_PIN_SHIFT                  4
 509 #define DA9150_GPIOD_PIN_MASK                   (0x07 << 4)
 510 #define DA9150_GPIOD_PIN_GPI                    (0x00 << 4)
 511 #define DA9150_GPIOD_PIN_GPO_OD                 BIT(4)
 512 #define DA9150_GPIOD_TYPE_SHIFT                 7
 513 #define DA9150_GPIOD_TYPE_MASK                  BIT(7)
 514 
 515 /* DA9150_GPIO_MODE_CONT = 0x0EA */
 516 #define DA9150_GPIOA_MODE_SHIFT                 0
 517 #define DA9150_GPIOA_MODE_MASK                  BIT(0)
 518 #define DA9150_GPIOB_MODE_SHIFT                 1
 519 #define DA9150_GPIOB_MODE_MASK                  BIT(1)
 520 #define DA9150_GPIOC_MODE_SHIFT                 2
 521 #define DA9150_GPIOC_MODE_MASK                  BIT(2)
 522 #define DA9150_GPIOD_MODE_SHIFT                 3
 523 #define DA9150_GPIOD_MODE_MASK                  BIT(3)
 524 #define DA9150_GPIOA_CONT_SHIFT                 4
 525 #define DA9150_GPIOA_CONT_MASK                  BIT(4)
 526 #define DA9150_GPIOB_CONT_SHIFT                 5
 527 #define DA9150_GPIOB_CONT_MASK                  BIT(5)
 528 #define DA9150_GPIOC_CONT_SHIFT                 6
 529 #define DA9150_GPIOC_CONT_MASK                  BIT(6)
 530 #define DA9150_GPIOD_CONT_SHIFT                 7
 531 #define DA9150_GPIOD_CONT_MASK                  BIT(7)
 532 
 533 /* DA9150_GPIO_CTRL_B = 0x0EB */
 534 #define DA9150_WAKE_PIN_SHIFT                   0
 535 #define DA9150_WAKE_PIN_MASK                    (0x03 << 0)
 536 #define DA9150_WAKE_MODE_SHIFT                  2
 537 #define DA9150_WAKE_MODE_MASK                   BIT(2)
 538 #define DA9150_WAKE_CONT_SHIFT                  3
 539 #define DA9150_WAKE_CONT_MASK                   BIT(3)
 540 #define DA9150_WAKE_DLY_SHIFT                   4
 541 #define DA9150_WAKE_DLY_MASK                    BIT(4)
 542 
 543 /* DA9150_GPIO_CTRL_A = 0x0EC */
 544 #define DA9150_GPIOA_ANAEN_SHIFT                0
 545 #define DA9150_GPIOA_ANAEN_MASK                 BIT(0)
 546 #define DA9150_GPIOB_ANAEN_SHIFT                1
 547 #define DA9150_GPIOB_ANAEN_MASK                 BIT(1)
 548 #define DA9150_GPIOC_ANAEN_SHIFT                2
 549 #define DA9150_GPIOC_ANAEN_MASK                 BIT(2)
 550 #define DA9150_GPIOD_ANAEN_SHIFT                3
 551 #define DA9150_GPIOD_ANAEN_MASK                 BIT(3)
 552 #define DA9150_GPIO_ANAEN                       0x01
 553 #define DA9150_GPIO_ANAEN_MASK                  0x0F
 554 #define DA9150_CHGLED_PIN_SHIFT                 5
 555 #define DA9150_CHGLED_PIN_MASK                  (0x07 << 5)
 556 
 557 /* DA9150_GPIO_CTRL_C = 0x0ED */
 558 #define DA9150_CHGBL_DUR_SHIFT                  0
 559 #define DA9150_CHGBL_DUR_MASK                   (0x03 << 0)
 560 #define DA9150_CHGBL_DBL_SHIFT                  2
 561 #define DA9150_CHGBL_DBL_MASK                   BIT(2)
 562 #define DA9150_CHGBL_FRQ_SHIFT                  3
 563 #define DA9150_CHGBL_FRQ_MASK                   (0x03 << 3)
 564 #define DA9150_CHGBL_FLKR_SHIFT                 5
 565 #define DA9150_CHGBL_FLKR_MASK                  BIT(5)
 566 
 567 /* DA9150_GPIO_CFG_A = 0x0EE */
 568 #define DA9150_CE_LPM_DEB_SHIFT                 0
 569 #define DA9150_CE_LPM_DEB_MASK                  (0x07 << 0)
 570 
 571 /* DA9150_GPIO_CFG_B = 0x0EF */
 572 #define DA9150_GPIOA_PUPD_SHIFT                 0
 573 #define DA9150_GPIOA_PUPD_MASK                  BIT(0)
 574 #define DA9150_GPIOB_PUPD_SHIFT                 1
 575 #define DA9150_GPIOB_PUPD_MASK                  BIT(1)
 576 #define DA9150_GPIOC_PUPD_SHIFT                 2
 577 #define DA9150_GPIOC_PUPD_MASK                  BIT(2)
 578 #define DA9150_GPIOD_PUPD_SHIFT                 3
 579 #define DA9150_GPIOD_PUPD_MASK                  BIT(3)
 580 #define DA9150_GPIO_PUPD_MASK                   (0xF << 0)
 581 #define DA9150_GPI_DEB_SHIFT                    4
 582 #define DA9150_GPI_DEB_MASK                     (0x07 << 4)
 583 #define DA9150_LPM_EN_SHIFT                     7
 584 #define DA9150_LPM_EN_MASK                      BIT(7)
 585 
 586 /* DA9150_GPIO_CFG_C = 0x0F0 */
 587 #define DA9150_GPI_V_SHIFT                      0
 588 #define DA9150_GPI_V_MASK                       BIT(0)
 589 #define DA9150_VDDIO_INT_SHIFT                  1
 590 #define DA9150_VDDIO_INT_MASK                   BIT(1)
 591 #define DA9150_FAULT_PIN_SHIFT                  3
 592 #define DA9150_FAULT_PIN_MASK                   (0x07 << 3)
 593 #define DA9150_FAULT_TYPE_SHIFT                 6
 594 #define DA9150_FAULT_TYPE_MASK                  BIT(6)
 595 #define DA9150_NIRQ_PUPD_SHIFT                  7
 596 #define DA9150_NIRQ_PUPD_MASK                   BIT(7)
 597 
 598 /* DA9150_GPADC_MAN = 0x0F2 */
 599 #define DA9150_GPADC_EN_SHIFT                   0
 600 #define DA9150_GPADC_EN_MASK                    BIT(0)
 601 #define DA9150_GPADC_MUX_SHIFT                  1
 602 #define DA9150_GPADC_MUX_MASK                   (0x1f << 1)
 603 
 604 /* DA9150_GPADC_RES_A = 0x0F4 */
 605 #define DA9150_GPADC_RES_H_SHIFT                0
 606 #define DA9150_GPADC_RES_H_MASK                 (0xff << 0)
 607 
 608 /* DA9150_GPADC_RES_B = 0x0F5 */
 609 #define DA9150_GPADC_RUN_SHIFT                  0
 610 #define DA9150_GPADC_RUN_MASK                   BIT(0)
 611 #define DA9150_GPADC_RES_L_SHIFT                6
 612 #define DA9150_GPADC_RES_L_MASK                 (0x03 << 6)
 613 #define DA9150_GPADC_RES_L_BITS                 2
 614 
 615 /* DA9150_PAGE_CON_2 = 0x100 */
 616 #define DA9150_PAGE_SHIFT                       0
 617 #define DA9150_PAGE_MASK                        (0x3f << 0)
 618 #define DA9150_WRITE_MODE_SHIFT                 6
 619 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 620 #define DA9150_REVERT_SHIFT                     7
 621 #define DA9150_REVERT_MASK                      BIT(7)
 622 
 623 /* DA9150_OTP_CONT_SHARED = 0x101 */
 624 #define DA9150_PC_DONE_SHIFT                    3
 625 #define DA9150_PC_DONE_MASK                     BIT(3)
 626 
 627 /* DA9150_INTERFACE_SHARED = 0x105 */
 628 #define DA9150_IF_BASE_ADDR_SHIFT               4
 629 #define DA9150_IF_BASE_ADDR_MASK                (0x0f << 4)
 630 
 631 /* DA9150_CONFIG_A_SHARED = 0x106 */
 632 #define DA9150_NIRQ_VDD_SHIFT                   1
 633 #define DA9150_NIRQ_VDD_MASK                    BIT(1)
 634 #define DA9150_NIRQ_PIN_SHIFT                   2
 635 #define DA9150_NIRQ_PIN_MASK                    BIT(2)
 636 #define DA9150_NIRQ_TYPE_SHIFT                  3
 637 #define DA9150_NIRQ_TYPE_MASK                   BIT(3)
 638 #define DA9150_PM_IF_V_SHIFT                    4
 639 #define DA9150_PM_IF_V_MASK                     BIT(4)
 640 #define DA9150_PM_IF_FMP_SHIFT                  5
 641 #define DA9150_PM_IF_FMP_MASK                   BIT(5)
 642 #define DA9150_PM_IF_HSM_SHIFT                  6
 643 #define DA9150_PM_IF_HSM_MASK                   BIT(6)
 644 
 645 /* DA9150_CONFIG_D_SHARED = 0x109 */
 646 #define DA9150_NIRQ_MODE_SHIFT                  1
 647 #define DA9150_NIRQ_MODE_MASK                   BIT(1)
 648 
 649 /* DA9150_ADETVB_CFG_C = 0x150 */
 650 #define DA9150_TADP_RISE_SHIFT                  0
 651 #define DA9150_TADP_RISE_MASK                   (0xff << 0)
 652 
 653 /* DA9150_ADETD_STAT = 0x151 */
 654 #define DA9150_DCD_STAT_SHIFT                   0
 655 #define DA9150_DCD_STAT_MASK                    BIT(0)
 656 #define DA9150_PCD_STAT_SHIFT                   1
 657 #define DA9150_PCD_STAT_MASK                    (0x03 << 1)
 658 #define DA9150_SCD_STAT_SHIFT                   3
 659 #define DA9150_SCD_STAT_MASK                    (0x03 << 3)
 660 #define DA9150_DP_STAT_SHIFT                    5
 661 #define DA9150_DP_STAT_MASK                     BIT(5)
 662 #define DA9150_DM_STAT_SHIFT                    6
 663 #define DA9150_DM_STAT_MASK                     BIT(6)
 664 
 665 /* DA9150_ADET_CMPSTAT = 0x152 */
 666 #define DA9150_DP_COMP_SHIFT                    1
 667 #define DA9150_DP_COMP_MASK                     BIT(1)
 668 #define DA9150_DM_COMP_SHIFT                    2
 669 #define DA9150_DM_COMP_MASK                     BIT(2)
 670 #define DA9150_ADP_SNS_COMP_SHIFT               3
 671 #define DA9150_ADP_SNS_COMP_MASK                BIT(3)
 672 #define DA9150_ADP_PRB_COMP_SHIFT               4
 673 #define DA9150_ADP_PRB_COMP_MASK                BIT(4)
 674 #define DA9150_ID_COMP_SHIFT                    5
 675 #define DA9150_ID_COMP_MASK                     BIT(5)
 676 
 677 /* DA9150_ADET_CTRL_A = 0x153 */
 678 #define DA9150_AID_DAT_SHIFT                    0
 679 #define DA9150_AID_DAT_MASK                     BIT(0)
 680 #define DA9150_AID_ID_SHIFT                     1
 681 #define DA9150_AID_ID_MASK                      BIT(1)
 682 #define DA9150_AID_TRIG_SHIFT                   2
 683 #define DA9150_AID_TRIG_MASK                    BIT(2)
 684 
 685 /* DA9150_ADETVB_CFG_B = 0x154 */
 686 #define DA9150_VB_MODE_SHIFT                    0
 687 #define DA9150_VB_MODE_MASK                     (0x03 << 0)
 688 #define DA9150_VB_MODE_VB_SESS                  BIT(0)
 689 
 690 #define DA9150_TADP_PRB_SHIFT                   2
 691 #define DA9150_TADP_PRB_MASK                    BIT(2)
 692 #define DA9150_DAT_RPD_EXT_SHIFT                5
 693 #define DA9150_DAT_RPD_EXT_MASK                 BIT(5)
 694 #define DA9150_CONF_RPD_SHIFT                   6
 695 #define DA9150_CONF_RPD_MASK                    BIT(6)
 696 #define DA9150_CONF_SRP_SHIFT                   7
 697 #define DA9150_CONF_SRP_MASK                    BIT(7)
 698 
 699 /* DA9150_ADETVB_CFG_A = 0x155 */
 700 #define DA9150_AID_MODE_SHIFT                   0
 701 #define DA9150_AID_MODE_MASK                    (0x03 << 0)
 702 #define DA9150_AID_EXT_POL_SHIFT                2
 703 #define DA9150_AID_EXT_POL_MASK                 BIT(2)
 704 
 705 /* DA9150_ADETAC_CFG_A = 0x156 */
 706 #define DA9150_ISET_CDP_SHIFT                   0
 707 #define DA9150_ISET_CDP_MASK                    (0x1f << 0)
 708 #define DA9150_CONF_DBP_SHIFT                   5
 709 #define DA9150_CONF_DBP_MASK                    BIT(5)
 710 
 711 /* DA9150_ADDETAC_CFG_B = 0x157 */
 712 #define DA9150_ISET_DCHG_SHIFT                  0
 713 #define DA9150_ISET_DCHG_MASK                   (0x1f << 0)
 714 #define DA9150_CONF_GPIOA_SHIFT                 5
 715 #define DA9150_CONF_GPIOA_MASK                  BIT(5)
 716 #define DA9150_CONF_GPIOB_SHIFT                 6
 717 #define DA9150_CONF_GPIOB_MASK                  BIT(6)
 718 #define DA9150_AID_VB_SHIFT                     7
 719 #define DA9150_AID_VB_MASK                      BIT(7)
 720 
 721 /* DA9150_ADETAC_CFG_C = 0x158 */
 722 #define DA9150_ISET_DEF_SHIFT                   0
 723 #define DA9150_ISET_DEF_MASK                    (0x1f << 0)
 724 #define DA9150_CONF_MODE_SHIFT                  5
 725 #define DA9150_CONF_MODE_MASK                   (0x03 << 5)
 726 #define DA9150_AID_CR_DIS_SHIFT                 7
 727 #define DA9150_AID_CR_DIS_MASK                  BIT(7)
 728 
 729 /* DA9150_ADETAC_CFG_D = 0x159 */
 730 #define DA9150_ISET_UNIT_SHIFT                  0
 731 #define DA9150_ISET_UNIT_MASK                   (0x1f << 0)
 732 #define DA9150_AID_UNCLAMP_SHIFT                5
 733 #define DA9150_AID_UNCLAMP_MASK                 BIT(5)
 734 
 735 /* DA9150_ADETVB_CFG_D = 0x15A */
 736 #define DA9150_ID_MODE_SHIFT                    0
 737 #define DA9150_ID_MODE_MASK                     (0x03 << 0)
 738 #define DA9150_DAT_MODE_SHIFT                   2
 739 #define DA9150_DAT_MODE_MASK                    (0x0f << 2)
 740 #define DA9150_DAT_SWP_SHIFT                    6
 741 #define DA9150_DAT_SWP_MASK                     BIT(6)
 742 #define DA9150_DAT_CLAMP_EXT_SHIFT              7
 743 #define DA9150_DAT_CLAMP_EXT_MASK               BIT(7)
 744 
 745 /* DA9150_ADETID_CFG_A = 0x15B */
 746 #define DA9150_TID_POLL_SHIFT                   0
 747 #define DA9150_TID_POLL_MASK                    (0x07 << 0)
 748 #define DA9150_RID_CONV_SHIFT                   3
 749 #define DA9150_RID_CONV_MASK                    BIT(3)
 750 
 751 /* DA9150_ADET_RID_PT_CHG_H = 0x15C */
 752 #define DA9150_RID_PT_CHG_H_SHIFT               0
 753 #define DA9150_RID_PT_CHG_H_MASK                (0xff << 0)
 754 
 755 /* DA9150_ADET_RID_PT_CHG_L = 0x15D */
 756 #define DA9150_RID_PT_CHG_L_SHIFT               6
 757 #define DA9150_RID_PT_CHG_L_MASK                (0x03 << 6)
 758 
 759 /* DA9150_PPR_TCTR_B = 0x160 */
 760 #define DA9150_CHG_TCTR_VAL_SHIFT               0
 761 #define DA9150_CHG_TCTR_VAL_MASK                (0xff << 0)
 762 
 763 /* DA9150_PPR_BKCTRL_A = 0x163 */
 764 #define DA9150_VBUS_MODE_SHIFT                  0
 765 #define DA9150_VBUS_MODE_MASK                   (0x03 << 0)
 766 #define DA9150_VBUS_MODE_CHG                    BIT(0)
 767 #define DA9150_VBUS_MODE_OTG                    (0x02 << 0)
 768 #define DA9150_VBUS_LPM_SHIFT                   2
 769 #define DA9150_VBUS_LPM_MASK                    (0x03 << 2)
 770 #define DA9150_VBUS_SUSP_SHIFT                  4
 771 #define DA9150_VBUS_SUSP_MASK                   BIT(4)
 772 #define DA9150_VBUS_PWM_SHIFT                   5
 773 #define DA9150_VBUS_PWM_MASK                    BIT(5)
 774 #define DA9150_VBUS_ISO_SHIFT                   6
 775 #define DA9150_VBUS_ISO_MASK                    BIT(6)
 776 #define DA9150_VBUS_LDO_SHIFT                   7
 777 #define DA9150_VBUS_LDO_MASK                    BIT(7)
 778 
 779 /* DA9150_PPR_BKCFG_A = 0x164 */
 780 #define DA9150_VBUS_ISET_SHIFT                  0
 781 #define DA9150_VBUS_ISET_MASK                   (0x1f << 0)
 782 #define DA9150_VBUS_IMAX_SHIFT                  5
 783 #define DA9150_VBUS_IMAX_MASK                   BIT(5)
 784 #define DA9150_VBUS_IOTG_SHIFT                  6
 785 #define DA9150_VBUS_IOTG_MASK                   (0x03 << 6)
 786 
 787 /* DA9150_PPR_BKCFG_B = 0x165 */
 788 #define DA9150_VBUS_DROP_SHIFT                  0
 789 #define DA9150_VBUS_DROP_MASK                   (0x0f << 0)
 790 #define DA9150_VBUS_FAULT_DIS_SHIFT             6
 791 #define DA9150_VBUS_FAULT_DIS_MASK              BIT(6)
 792 #define DA9150_OTG_FAULT_DIS_SHIFT              7
 793 #define DA9150_OTG_FAULT_DIS_MASK               BIT(7)
 794 
 795 /* DA9150_PPR_CHGCTRL_A = 0x166 */
 796 #define DA9150_CHG_EN_SHIFT                     0
 797 #define DA9150_CHG_EN_MASK                      BIT(0)
 798 
 799 /* DA9150_PPR_CHGCTRL_B = 0x167 */
 800 #define DA9150_CHG_VBAT_SHIFT                   0
 801 #define DA9150_CHG_VBAT_MASK                    (0x1f << 0)
 802 #define DA9150_CHG_VDROP_SHIFT                  6
 803 #define DA9150_CHG_VDROP_MASK                   (0x03 << 6)
 804 
 805 /* DA9150_PPR_CHGCTRL_C = 0x168 */
 806 #define DA9150_CHG_VFAULT_SHIFT                 0
 807 #define DA9150_CHG_VFAULT_MASK                  (0x0f << 0)
 808 #define DA9150_CHG_IPRE_SHIFT                   4
 809 #define DA9150_CHG_IPRE_MASK                    (0x03 << 4)
 810 
 811 /* DA9150_PPR_TCTR_A = 0x169 */
 812 #define DA9150_CHG_TCTR_SHIFT                   0
 813 #define DA9150_CHG_TCTR_MASK                    (0x07 << 0)
 814 #define DA9150_CHG_TCTR_MODE_SHIFT              4
 815 #define DA9150_CHG_TCTR_MODE_MASK               BIT(4)
 816 
 817 /* DA9150_PPR_CHGCTRL_D = 0x16A */
 818 #define DA9150_CHG_IBAT_SHIFT                   0
 819 #define DA9150_CHG_IBAT_MASK                    (0xff << 0)
 820 
 821 /* DA9150_PPR_CHGCTRL_E = 0x16B */
 822 #define DA9150_CHG_IEND_SHIFT                   0
 823 #define DA9150_CHG_IEND_MASK                    (0xff << 0)
 824 
 825 /* DA9150_PPR_CHGCTRL_F = 0x16C */
 826 #define DA9150_CHG_VCOLD_SHIFT                  0
 827 #define DA9150_CHG_VCOLD_MASK                   (0x1f << 0)
 828 #define DA9150_TBAT_TQA_EN_SHIFT                6
 829 #define DA9150_TBAT_TQA_EN_MASK                 BIT(6)
 830 #define DA9150_TBAT_TDP_EN_SHIFT                7
 831 #define DA9150_TBAT_TDP_EN_MASK                 BIT(7)
 832 
 833 /* DA9150_PPR_CHGCTRL_G = 0x16D */
 834 #define DA9150_CHG_VWARM_SHIFT                  0
 835 #define DA9150_CHG_VWARM_MASK                   (0x1f << 0)
 836 
 837 /* DA9150_PPR_CHGCTRL_H = 0x16E */
 838 #define DA9150_CHG_VHOT_SHIFT                   0
 839 #define DA9150_CHG_VHOT_MASK                    (0x1f << 0)
 840 
 841 /* DA9150_PPR_CHGCTRL_I = 0x16F */
 842 #define DA9150_CHG_ICOLD_SHIFT                  0
 843 #define DA9150_CHG_ICOLD_MASK                   (0xff << 0)
 844 
 845 /* DA9150_PPR_CHGCTRL_J = 0x170 */
 846 #define DA9150_CHG_IWARM_SHIFT                  0
 847 #define DA9150_CHG_IWARM_MASK                   (0xff << 0)
 848 
 849 /* DA9150_PPR_CHGCTRL_K = 0x171 */
 850 #define DA9150_CHG_IHOT_SHIFT                   0
 851 #define DA9150_CHG_IHOT_MASK                    (0xff << 0)
 852 
 853 /* DA9150_PPR_CHGCTRL_L = 0x172 */
 854 #define DA9150_CHG_IBAT_TRED_SHIFT              0
 855 #define DA9150_CHG_IBAT_TRED_MASK               (0xff << 0)
 856 
 857 /* DA9150_PPR_CHGCTRL_M = 0x173 */
 858 #define DA9150_CHG_VFLOAT_SHIFT                 0
 859 #define DA9150_CHG_VFLOAT_MASK                  (0x0f << 0)
 860 #define DA9150_CHG_LPM_SHIFT                    5
 861 #define DA9150_CHG_LPM_MASK                     BIT(5)
 862 #define DA9150_CHG_NBLO_SHIFT                   6
 863 #define DA9150_CHG_NBLO_MASK                    BIT(6)
 864 #define DA9150_EBS_EN_SHIFT                     7
 865 #define DA9150_EBS_EN_MASK                      BIT(7)
 866 
 867 /* DA9150_PPR_THYST_A = 0x174 */
 868 #define DA9150_TBAT_T1_SHIFT                    0
 869 #define DA9150_TBAT_T1_MASK                     (0xff << 0)
 870 
 871 /* DA9150_PPR_THYST_B = 0x175 */
 872 #define DA9150_TBAT_T2_SHIFT                    0
 873 #define DA9150_TBAT_T2_MASK                     (0xff << 0)
 874 
 875 /* DA9150_PPR_THYST_C = 0x176 */
 876 #define DA9150_TBAT_T3_SHIFT                    0
 877 #define DA9150_TBAT_T3_MASK                     (0xff << 0)
 878 
 879 /* DA9150_PPR_THYST_D = 0x177 */
 880 #define DA9150_TBAT_T4_SHIFT                    0
 881 #define DA9150_TBAT_T4_MASK                     (0xff << 0)
 882 
 883 /* DA9150_PPR_THYST_E = 0x178 */
 884 #define DA9150_TBAT_T5_SHIFT                    0
 885 #define DA9150_TBAT_T5_MASK                     (0xff << 0)
 886 
 887 /* DA9150_PPR_THYST_F = 0x179 */
 888 #define DA9150_TBAT_H1_SHIFT                    0
 889 #define DA9150_TBAT_H1_MASK                     (0xff << 0)
 890 
 891 /* DA9150_PPR_THYST_G = 0x17A */
 892 #define DA9150_TBAT_H5_SHIFT                    0
 893 #define DA9150_TBAT_H5_MASK                     (0xff << 0)
 894 
 895 /* DA9150_PAGE_CON_3 = 0x180 */
 896 #define DA9150_PAGE_SHIFT                       0
 897 #define DA9150_PAGE_MASK                        (0x3f << 0)
 898 #define DA9150_WRITE_MODE_SHIFT                 6
 899 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 900 #define DA9150_REVERT_SHIFT                     7
 901 #define DA9150_REVERT_MASK                      BIT(7)
 902 
 903 /* DA9150_PAGE_CON_4 = 0x200 */
 904 #define DA9150_PAGE_SHIFT                       0
 905 #define DA9150_PAGE_MASK                        (0x3f << 0)
 906 #define DA9150_WRITE_MODE_SHIFT                 6
 907 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 908 #define DA9150_REVERT_SHIFT                     7
 909 #define DA9150_REVERT_MASK                      BIT(7)
 910 
 911 /* DA9150_PAGE_CON_5 = 0x280 */
 912 #define DA9150_PAGE_SHIFT                       0
 913 #define DA9150_PAGE_MASK                        (0x3f << 0)
 914 #define DA9150_WRITE_MODE_SHIFT                 6
 915 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 916 #define DA9150_REVERT_SHIFT                     7
 917 #define DA9150_REVERT_MASK                      BIT(7)
 918 
 919 /* DA9150_PAGE_CON_6 = 0x300 */
 920 #define DA9150_PAGE_SHIFT                       0
 921 #define DA9150_PAGE_MASK                        (0x3f << 0)
 922 #define DA9150_WRITE_MODE_SHIFT                 6
 923 #define DA9150_WRITE_MODE_MASK                  BIT(6)
 924 #define DA9150_REVERT_SHIFT                     7
 925 #define DA9150_REVERT_MASK                      BIT(7)
 926 
 927 /* DA9150_COREBTLD_STAT_A = 0x302 */
 928 #define DA9150_BOOTLD_STAT_SHIFT                0
 929 #define DA9150_BOOTLD_STAT_MASK                 (0x03 << 0)
 930 #define DA9150_CORE_LOCKUP_SHIFT                2
 931 #define DA9150_CORE_LOCKUP_MASK                 BIT(2)
 932 
 933 /* DA9150_COREBTLD_CTRL_A = 0x303 */
 934 #define DA9150_CORE_RESET_SHIFT                 0
 935 #define DA9150_CORE_RESET_MASK                  BIT(0)
 936 #define DA9150_CORE_STOP_SHIFT                  1
 937 #define DA9150_CORE_STOP_MASK                   BIT(1)
 938 
 939 /* DA9150_CORE_CONFIG_A = 0x304 */
 940 #define DA9150_CORE_MEMMUX_SHIFT                0
 941 #define DA9150_CORE_MEMMUX_MASK                 (0x03 << 0)
 942 #define DA9150_WDT_AUTO_START_SHIFT             2
 943 #define DA9150_WDT_AUTO_START_MASK              BIT(2)
 944 #define DA9150_WDT_AUTO_LOCK_SHIFT              3
 945 #define DA9150_WDT_AUTO_LOCK_MASK               BIT(3)
 946 #define DA9150_WDT_HLT_NO_CLK_SHIFT             4
 947 #define DA9150_WDT_HLT_NO_CLK_MASK              BIT(4)
 948 
 949 /* DA9150_CORE_CONFIG_C = 0x305 */
 950 #define DA9150_CORE_SW_SIZE_SHIFT               0
 951 #define DA9150_CORE_SW_SIZE_MASK                (0xff << 0)
 952 
 953 /* DA9150_CORE_CONFIG_B = 0x306 */
 954 #define DA9150_BOOTLD_EN_SHIFT                  0
 955 #define DA9150_BOOTLD_EN_MASK                   BIT(0)
 956 #define DA9150_CORE_EN_SHIFT                    2
 957 #define DA9150_CORE_EN_MASK                     BIT(2)
 958 #define DA9150_CORE_SW_SRC_SHIFT                3
 959 #define DA9150_CORE_SW_SRC_MASK                 (0x07 << 3)
 960 #define DA9150_DEEP_SLEEP_EN_SHIFT              7
 961 #define DA9150_DEEP_SLEEP_EN_MASK               BIT(7)
 962 
 963 /* DA9150_CORE_CFG_DATA_A = 0x307 */
 964 #define DA9150_CORE_CFG_DT_A_SHIFT              0
 965 #define DA9150_CORE_CFG_DT_A_MASK               (0xff << 0)
 966 
 967 /* DA9150_CORE_CFG_DATA_B = 0x308 */
 968 #define DA9150_CORE_CFG_DT_B_SHIFT              0
 969 #define DA9150_CORE_CFG_DT_B_MASK               (0xff << 0)
 970 
 971 /* DA9150_CORE_CMD_A = 0x309 */
 972 #define DA9150_CORE_CMD_SHIFT                   0
 973 #define DA9150_CORE_CMD_MASK                    (0xff << 0)
 974 
 975 /* DA9150_CORE_DATA_A = 0x30A */
 976 #define DA9150_CORE_DATA_0_SHIFT                0
 977 #define DA9150_CORE_DATA_0_MASK                 (0xff << 0)
 978 
 979 /* DA9150_CORE_DATA_B = 0x30B */
 980 #define DA9150_CORE_DATA_1_SHIFT                0
 981 #define DA9150_CORE_DATA_1_MASK                 (0xff << 0)
 982 
 983 /* DA9150_CORE_DATA_C = 0x30C */
 984 #define DA9150_CORE_DATA_2_SHIFT                0
 985 #define DA9150_CORE_DATA_2_MASK                 (0xff << 0)
 986 
 987 /* DA9150_CORE_DATA_D = 0x30D */
 988 #define DA9150_CORE_DATA_3_SHIFT                0
 989 #define DA9150_CORE_DATA_3_MASK                 (0xff << 0)
 990 
 991 /* DA9150_CORE2WIRE_STAT_A = 0x310 */
 992 #define DA9150_FW_FWDL_ERR_SHIFT                7
 993 #define DA9150_FW_FWDL_ERR_MASK                 BIT(7)
 994 
 995 /* DA9150_CORE2WIRE_CTRL_A = 0x311 */
 996 #define DA9150_FW_FWDL_EN_SHIFT                 0
 997 #define DA9150_FW_FWDL_EN_MASK                  BIT(0)
 998 #define DA9150_FG_QIF_EN_SHIFT                  1
 999 #define DA9150_FG_QIF_EN_MASK                   BIT(1)
1000 #define DA9150_CORE_BASE_ADDR_SHIFT             4
1001 #define DA9150_CORE_BASE_ADDR_MASK              (0x0f << 4)
1002 
1003 /* DA9150_FW_CTRL_A = 0x312 */
1004 #define DA9150_FW_SEAL_SHIFT                    0
1005 #define DA9150_FW_SEAL_MASK                     (0xff << 0)
1006 
1007 /* DA9150_FW_CTRL_C = 0x313 */
1008 #define DA9150_FW_FWDL_CRC_SHIFT                0
1009 #define DA9150_FW_FWDL_CRC_MASK                 (0xff << 0)
1010 
1011 /* DA9150_FW_CTRL_D = 0x314 */
1012 #define DA9150_FW_FWDL_BASE_SHIFT               0
1013 #define DA9150_FW_FWDL_BASE_MASK                (0x0f << 0)
1014 
1015 /* DA9150_FG_CTRL_A = 0x315 */
1016 #define DA9150_FG_QIF_CODE_SHIFT                0
1017 #define DA9150_FG_QIF_CODE_MASK                 (0xff << 0)
1018 
1019 /* DA9150_FG_CTRL_B = 0x316 */
1020 #define DA9150_FG_QIF_VALUE_SHIFT               0
1021 #define DA9150_FG_QIF_VALUE_MASK                (0xff << 0)
1022 
1023 /* DA9150_FW_CTRL_E = 0x317 */
1024 #define DA9150_FW_FWDL_SEG_SHIFT                0
1025 #define DA9150_FW_FWDL_SEG_MASK                 (0xff << 0)
1026 
1027 /* DA9150_FW_CTRL_B = 0x318 */
1028 #define DA9150_FW_FWDL_VALUE_SHIFT              0
1029 #define DA9150_FW_FWDL_VALUE_MASK               (0xff << 0)
1030 
1031 /* DA9150_GPADC_CMAN = 0x320 */
1032 #define DA9150_GPADC_CEN_SHIFT                  0
1033 #define DA9150_GPADC_CEN_MASK                   BIT(0)
1034 #define DA9150_GPADC_CMUX_SHIFT                 1
1035 #define DA9150_GPADC_CMUX_MASK                  (0x1f << 1)
1036 
1037 /* DA9150_GPADC_CRES_A = 0x322 */
1038 #define DA9150_GPADC_CRES_H_SHIFT               0
1039 #define DA9150_GPADC_CRES_H_MASK                (0xff << 0)
1040 
1041 /* DA9150_GPADC_CRES_B = 0x323 */
1042 #define DA9150_GPADC_CRUN_SHIFT                 0
1043 #define DA9150_GPADC_CRUN_MASK                  BIT(0)
1044 #define DA9150_GPADC_CRES_L_SHIFT               6
1045 #define DA9150_GPADC_CRES_L_MASK                (0x03 << 6)
1046 
1047 /* DA9150_CC_CFG_A = 0x328 */
1048 #define DA9150_CC_EN_SHIFT                      0
1049 #define DA9150_CC_EN_MASK                       BIT(0)
1050 #define DA9150_CC_TIMEBASE_SHIFT                1
1051 #define DA9150_CC_TIMEBASE_MASK                 (0x03 << 1)
1052 #define DA9150_CC_CFG_SHIFT                     5
1053 #define DA9150_CC_CFG_MASK                      (0x03 << 5)
1054 #define DA9150_CC_ENDLESS_MODE_SHIFT            7
1055 #define DA9150_CC_ENDLESS_MODE_MASK             BIT(7)
1056 
1057 /* DA9150_CC_CFG_B = 0x329 */
1058 #define DA9150_CC_OPT_SHIFT                     0
1059 #define DA9150_CC_OPT_MASK                      (0x03 << 0)
1060 #define DA9150_CC_PREAMP_SHIFT                  2
1061 #define DA9150_CC_PREAMP_MASK                   (0x03 << 2)
1062 
1063 /* DA9150_CC_ICHG_RES_A = 0x32A */
1064 #define DA9150_CC_ICHG_RES_H_SHIFT              0
1065 #define DA9150_CC_ICHG_RES_H_MASK               (0xff << 0)
1066 
1067 /* DA9150_CC_ICHG_RES_B = 0x32B */
1068 #define DA9150_CC_ICHG_RES_L_SHIFT              3
1069 #define DA9150_CC_ICHG_RES_L_MASK               (0x1f << 3)
1070 
1071 /* DA9150_CC_IAVG_RES_A = 0x32C */
1072 #define DA9150_CC_IAVG_RES_H_SHIFT              0
1073 #define DA9150_CC_IAVG_RES_H_MASK               (0xff << 0)
1074 
1075 /* DA9150_CC_IAVG_RES_B = 0x32D */
1076 #define DA9150_CC_IAVG_RES_L_SHIFT              0
1077 #define DA9150_CC_IAVG_RES_L_MASK               (0xff << 0)
1078 
1079 /* DA9150_TAUX_CTRL_A = 0x330 */
1080 #define DA9150_TAUX_EN_SHIFT                    0
1081 #define DA9150_TAUX_EN_MASK                     BIT(0)
1082 #define DA9150_TAUX_MOD_SHIFT                   1
1083 #define DA9150_TAUX_MOD_MASK                    BIT(1)
1084 #define DA9150_TAUX_UPDATE_SHIFT                2
1085 #define DA9150_TAUX_UPDATE_MASK                 BIT(2)
1086 
1087 /* DA9150_TAUX_RELOAD_H = 0x332 */
1088 #define DA9150_TAUX_RLD_H_SHIFT                 0
1089 #define DA9150_TAUX_RLD_H_MASK                  (0xff << 0)
1090 
1091 /* DA9150_TAUX_RELOAD_L = 0x333 */
1092 #define DA9150_TAUX_RLD_L_SHIFT                 3
1093 #define DA9150_TAUX_RLD_L_MASK                  (0x1f << 3)
1094 
1095 /* DA9150_TAUX_VALUE_H = 0x334 */
1096 #define DA9150_TAUX_VAL_H_SHIFT                 0
1097 #define DA9150_TAUX_VAL_H_MASK                  (0xff << 0)
1098 
1099 /* DA9150_TAUX_VALUE_L = 0x335 */
1100 #define DA9150_TAUX_VAL_L_SHIFT                 3
1101 #define DA9150_TAUX_VAL_L_MASK                  (0x1f << 3)
1102 
1103 /* DA9150_AUX_DATA_0 = 0x338 */
1104 #define DA9150_AUX_DAT_0_SHIFT                  0
1105 #define DA9150_AUX_DAT_0_MASK                   (0xff << 0)
1106 
1107 /* DA9150_AUX_DATA_1 = 0x339 */
1108 #define DA9150_AUX_DAT_1_SHIFT                  0
1109 #define DA9150_AUX_DAT_1_MASK                   (0xff << 0)
1110 
1111 /* DA9150_AUX_DATA_2 = 0x33A */
1112 #define DA9150_AUX_DAT_2_SHIFT                  0
1113 #define DA9150_AUX_DAT_2_MASK                   (0xff << 0)
1114 
1115 /* DA9150_AUX_DATA_3 = 0x33B */
1116 #define DA9150_AUX_DAT_3_SHIFT                  0
1117 #define DA9150_AUX_DAT_3_MASK                   (0xff << 0)
1118 
1119 /* DA9150_BIF_CTRL = 0x340 */
1120 #define DA9150_BIF_ISRC_EN_SHIFT                0
1121 #define DA9150_BIF_ISRC_EN_MASK                 BIT(0)
1122 
1123 /* DA9150_TBAT_CTRL_A = 0x342 */
1124 #define DA9150_TBAT_EN_SHIFT                    0
1125 #define DA9150_TBAT_EN_MASK                     BIT(0)
1126 #define DA9150_TBAT_SW1_SHIFT                   1
1127 #define DA9150_TBAT_SW1_MASK                    BIT(1)
1128 #define DA9150_TBAT_SW2_SHIFT                   2
1129 #define DA9150_TBAT_SW2_MASK                    BIT(2)
1130 
1131 /* DA9150_TBAT_CTRL_B = 0x343 */
1132 #define DA9150_TBAT_SW_FRC_SHIFT                0
1133 #define DA9150_TBAT_SW_FRC_MASK                 BIT(0)
1134 #define DA9150_TBAT_STAT_SW1_SHIFT              1
1135 #define DA9150_TBAT_STAT_SW1_MASK               BIT(1)
1136 #define DA9150_TBAT_STAT_SW2_SHIFT              2
1137 #define DA9150_TBAT_STAT_SW2_MASK               BIT(2)
1138 #define DA9150_TBAT_HIGH_CURR_SHIFT             3
1139 #define DA9150_TBAT_HIGH_CURR_MASK              BIT(3)
1140 
1141 /* DA9150_TBAT_RES_A = 0x344 */
1142 #define DA9150_TBAT_RES_H_SHIFT                 0
1143 #define DA9150_TBAT_RES_H_MASK                  (0xff << 0)
1144 
1145 /* DA9150_TBAT_RES_B = 0x345 */
1146 #define DA9150_TBAT_RES_DIS_SHIFT               0
1147 #define DA9150_TBAT_RES_DIS_MASK                BIT(0)
1148 #define DA9150_TBAT_RES_L_SHIFT                 6
1149 #define DA9150_TBAT_RES_L_MASK                  (0x03 << 6)
1150 
1151 #endif /* __DA9150_REGISTERS_H */

/* [<][>][^][v][top][bottom][index][help] */