File Index
Files and directories
Sign in
FILE

registers.h

File preview with syntax highlighting.

linux-6.19.14/include/linux/mfd/da9150/registers.h C
   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 */
~/ Read-only file preview.