File Index
Files and directories
Sign in
FILE

registers.h

File preview with syntax highlighting.

linux-6.19.14/include/linux/mfd/da9062/registers.h C
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * Copyright (C) 2015-2017  Dialog Semiconductor
   4 */
   5
   6#ifndef __DA9062_H__
   7#define __DA9062_H__
   8
   9#define DA9062_PMIC_DEVICE_ID		0x62
  10#define DA9062_PMIC_VARIANT_MRC_AA	0x01
  11#define DA9062_PMIC_VARIANT_VRC_DA9061	0x01
  12#define DA9062_PMIC_VARIANT_VRC_DA9062	0x02
  13
  14#define DA9062_I2C_PAGE_SEL_SHIFT	1
  15
  16/*
  17 * Registers
  18 */
  19
  20#define DA9062AA_PAGE_CON		0x000
  21#define DA9062AA_STATUS_A		0x001
  22#define DA9062AA_STATUS_B		0x002
  23#define DA9062AA_STATUS_D		0x004
  24#define DA9062AA_FAULT_LOG		0x005
  25#define DA9062AA_EVENT_A		0x006
  26#define DA9062AA_EVENT_B		0x007
  27#define DA9062AA_EVENT_C		0x008
  28#define DA9062AA_IRQ_MASK_A		0x00A
  29#define DA9062AA_IRQ_MASK_B		0x00B
  30#define DA9062AA_IRQ_MASK_C		0x00C
  31#define DA9062AA_CONTROL_A		0x00E
  32#define DA9062AA_CONTROL_B		0x00F
  33#define DA9062AA_CONTROL_C		0x010
  34#define DA9062AA_CONTROL_D		0x011
  35#define DA9062AA_CONTROL_E		0x012
  36#define DA9062AA_CONTROL_F		0x013
  37#define DA9062AA_PD_DIS			0x014
  38#define DA9062AA_GPIO_0_1		0x015
  39#define DA9062AA_GPIO_2_3		0x016
  40#define DA9062AA_GPIO_4			0x017
  41#define DA9062AA_GPIO_WKUP_MODE		0x01C
  42#define DA9062AA_GPIO_MODE0_4		0x01D
  43#define DA9062AA_GPIO_OUT0_2		0x01E
  44#define DA9062AA_GPIO_OUT3_4		0x01F
  45#define DA9062AA_BUCK2_CONT		0x020
  46#define DA9062AA_BUCK1_CONT		0x021
  47#define DA9062AA_BUCK4_CONT		0x022
  48#define DA9062AA_BUCK3_CONT		0x024
  49#define DA9062AA_LDO1_CONT		0x026
  50#define DA9062AA_LDO2_CONT		0x027
  51#define DA9062AA_LDO3_CONT		0x028
  52#define DA9062AA_LDO4_CONT		0x029
  53#define DA9062AA_DVC_1			0x032
  54#define DA9062AA_COUNT_S		0x040
  55#define DA9062AA_COUNT_MI		0x041
  56#define DA9062AA_COUNT_H		0x042
  57#define DA9062AA_COUNT_D		0x043
  58#define DA9062AA_COUNT_MO		0x044
  59#define DA9062AA_COUNT_Y		0x045
  60#define DA9062AA_ALARM_S		0x046
  61#define DA9062AA_ALARM_MI		0x047
  62#define DA9062AA_ALARM_H		0x048
  63#define DA9062AA_ALARM_D		0x049
  64#define DA9062AA_ALARM_MO		0x04A
  65#define DA9062AA_ALARM_Y		0x04B
  66#define DA9062AA_SECOND_A		0x04C
  67#define DA9062AA_SECOND_B		0x04D
  68#define DA9062AA_SECOND_C		0x04E
  69#define DA9062AA_SECOND_D		0x04F
  70#define DA9062AA_SEQ			0x081
  71#define DA9062AA_SEQ_TIMER		0x082
  72#define DA9062AA_ID_2_1			0x083
  73#define DA9062AA_ID_4_3			0x084
  74#define DA9062AA_ID_12_11		0x088
  75#define DA9062AA_ID_14_13		0x089
  76#define DA9062AA_ID_16_15		0x08A
  77#define DA9062AA_ID_22_21		0x08D
  78#define DA9062AA_ID_24_23		0x08E
  79#define DA9062AA_ID_26_25		0x08F
  80#define DA9062AA_ID_28_27		0x090
  81#define DA9062AA_ID_30_29		0x091
  82#define DA9062AA_ID_32_31		0x092
  83#define DA9062AA_SEQ_A			0x095
  84#define DA9062AA_SEQ_B			0x096
  85#define DA9062AA_WAIT			0x097
  86#define DA9062AA_EN_32K			0x098
  87#define DA9062AA_RESET			0x099
  88#define DA9062AA_BUCK_ILIM_A		0x09A
  89#define DA9062AA_BUCK_ILIM_B		0x09B
  90#define DA9062AA_BUCK_ILIM_C		0x09C
  91#define DA9062AA_BUCK2_CFG		0x09D
  92#define DA9062AA_BUCK1_CFG		0x09E
  93#define DA9062AA_BUCK4_CFG		0x09F
  94#define DA9062AA_BUCK3_CFG		0x0A0
  95#define DA9062AA_VBUCK2_A		0x0A3
  96#define DA9062AA_VBUCK1_A		0x0A4
  97#define DA9062AA_VBUCK4_A		0x0A5
  98#define DA9062AA_VBUCK3_A		0x0A7
  99#define DA9062AA_VLDO1_A		0x0A9
 100#define DA9062AA_VLDO2_A		0x0AA
 101#define DA9062AA_VLDO3_A		0x0AB
 102#define DA9062AA_VLDO4_A		0x0AC
 103#define DA9062AA_VBUCK2_B		0x0B4
 104#define DA9062AA_VBUCK1_B		0x0B5
 105#define DA9062AA_VBUCK4_B		0x0B6
 106#define DA9062AA_VBUCK3_B		0x0B8
 107#define DA9062AA_VLDO1_B		0x0BA
 108#define DA9062AA_VLDO2_B		0x0BB
 109#define DA9062AA_VLDO3_B		0x0BC
 110#define DA9062AA_VLDO4_B		0x0BD
 111#define DA9062AA_BBAT_CONT		0x0C5
 112#define DA9062AA_INTERFACE		0x105
 113#define DA9062AA_CONFIG_A		0x106
 114#define DA9062AA_CONFIG_B		0x107
 115#define DA9062AA_CONFIG_C		0x108
 116#define DA9062AA_CONFIG_D		0x109
 117#define DA9062AA_CONFIG_E		0x10A
 118#define DA9062AA_CONFIG_G		0x10C
 119#define DA9062AA_CONFIG_H		0x10D
 120#define DA9062AA_CONFIG_I		0x10E
 121#define DA9062AA_CONFIG_J		0x10F
 122#define DA9062AA_CONFIG_K		0x110
 123#define DA9062AA_CONFIG_M		0x112
 124#define DA9062AA_TRIM_CLDR		0x120
 125#define DA9062AA_GP_ID_0		0x121
 126#define DA9062AA_GP_ID_1		0x122
 127#define DA9062AA_GP_ID_2		0x123
 128#define DA9062AA_GP_ID_3		0x124
 129#define DA9062AA_GP_ID_4		0x125
 130#define DA9062AA_GP_ID_5		0x126
 131#define DA9062AA_GP_ID_6		0x127
 132#define DA9062AA_GP_ID_7		0x128
 133#define DA9062AA_GP_ID_8		0x129
 134#define DA9062AA_GP_ID_9		0x12A
 135#define DA9062AA_GP_ID_10		0x12B
 136#define DA9062AA_GP_ID_11		0x12C
 137#define DA9062AA_GP_ID_12		0x12D
 138#define DA9062AA_GP_ID_13		0x12E
 139#define DA9062AA_GP_ID_14		0x12F
 140#define DA9062AA_GP_ID_15		0x130
 141#define DA9062AA_GP_ID_16		0x131
 142#define DA9062AA_GP_ID_17		0x132
 143#define DA9062AA_GP_ID_18		0x133
 144#define DA9062AA_GP_ID_19		0x134
 145#define DA9062AA_DEVICE_ID		0x181
 146#define DA9062AA_VARIANT_ID		0x182
 147#define DA9062AA_CUSTOMER_ID		0x183
 148#define DA9062AA_CONFIG_ID		0x184
 149
 150/*
 151 * Bit fields
 152 */
 153
 154/* DA9062AA_PAGE_CON = 0x000 */
 155#define DA9062AA_PAGE_SHIFT		0
 156#define DA9062AA_PAGE_MASK		0x3f
 157#define DA9062AA_WRITE_MODE_SHIFT	6
 158#define DA9062AA_WRITE_MODE_MASK	BIT(6)
 159#define DA9062AA_REVERT_SHIFT		7
 160#define DA9062AA_REVERT_MASK		BIT(7)
 161
 162/* DA9062AA_STATUS_A = 0x001 */
 163#define DA9062AA_NONKEY_SHIFT		0
 164#define DA9062AA_NONKEY_MASK		0x01
 165#define DA9062AA_DVC_BUSY_SHIFT		2
 166#define DA9062AA_DVC_BUSY_MASK		BIT(2)
 167
 168/* DA9062AA_STATUS_B = 0x002 */
 169#define DA9062AA_GPI0_SHIFT		0
 170#define DA9062AA_GPI0_MASK		0x01
 171#define DA9062AA_GPI1_SHIFT		1
 172#define DA9062AA_GPI1_MASK		BIT(1)
 173#define DA9062AA_GPI2_SHIFT		2
 174#define DA9062AA_GPI2_MASK		BIT(2)
 175#define DA9062AA_GPI3_SHIFT		3
 176#define DA9062AA_GPI3_MASK		BIT(3)
 177#define DA9062AA_GPI4_SHIFT		4
 178#define DA9062AA_GPI4_MASK		BIT(4)
 179
 180/* DA9062AA_STATUS_D = 0x004 */
 181#define DA9062AA_LDO1_ILIM_SHIFT	0
 182#define DA9062AA_LDO1_ILIM_MASK		0x01
 183#define DA9062AA_LDO2_ILIM_SHIFT	1
 184#define DA9062AA_LDO2_ILIM_MASK		BIT(1)
 185#define DA9062AA_LDO3_ILIM_SHIFT	2
 186#define DA9062AA_LDO3_ILIM_MASK		BIT(2)
 187#define DA9062AA_LDO4_ILIM_SHIFT	3
 188#define DA9062AA_LDO4_ILIM_MASK		BIT(3)
 189
 190/* DA9062AA_FAULT_LOG = 0x005 */
 191#define DA9062AA_TWD_ERROR_SHIFT	0
 192#define DA9062AA_TWD_ERROR_MASK		0x01
 193#define DA9062AA_POR_SHIFT		1
 194#define DA9062AA_POR_MASK		BIT(1)
 195#define DA9062AA_VDD_FAULT_SHIFT	2
 196#define DA9062AA_VDD_FAULT_MASK		BIT(2)
 197#define DA9062AA_VDD_START_SHIFT	3
 198#define DA9062AA_VDD_START_MASK		BIT(3)
 199#define DA9062AA_TEMP_CRIT_SHIFT	4
 200#define DA9062AA_TEMP_CRIT_MASK		BIT(4)
 201#define DA9062AA_KEY_RESET_SHIFT	5
 202#define DA9062AA_KEY_RESET_MASK		BIT(5)
 203#define DA9062AA_NSHUTDOWN_SHIFT	6
 204#define DA9062AA_NSHUTDOWN_MASK		BIT(6)
 205#define DA9062AA_WAIT_SHUT_SHIFT	7
 206#define DA9062AA_WAIT_SHUT_MASK		BIT(7)
 207
 208/* DA9062AA_EVENT_A = 0x006 */
 209#define DA9062AA_E_NONKEY_SHIFT		0
 210#define DA9062AA_E_NONKEY_MASK		0x01
 211#define DA9062AA_E_ALARM_SHIFT		1
 212#define DA9062AA_E_ALARM_MASK		BIT(1)
 213#define DA9062AA_E_TICK_SHIFT		2
 214#define DA9062AA_E_TICK_MASK		BIT(2)
 215#define DA9062AA_E_WDG_WARN_SHIFT	3
 216#define DA9062AA_E_WDG_WARN_MASK	BIT(3)
 217#define DA9062AA_E_SEQ_RDY_SHIFT	4
 218#define DA9062AA_E_SEQ_RDY_MASK		BIT(4)
 219#define DA9062AA_EVENTS_B_SHIFT		5
 220#define DA9062AA_EVENTS_B_MASK		BIT(5)
 221#define DA9062AA_EVENTS_C_SHIFT		6
 222#define DA9062AA_EVENTS_C_MASK		BIT(6)
 223
 224/* DA9062AA_EVENT_B = 0x007 */
 225#define DA9062AA_E_TEMP_SHIFT		1
 226#define DA9062AA_E_TEMP_MASK		BIT(1)
 227#define DA9062AA_E_LDO_LIM_SHIFT	3
 228#define DA9062AA_E_LDO_LIM_MASK		BIT(3)
 229#define DA9062AA_E_DVC_RDY_SHIFT	5
 230#define DA9062AA_E_DVC_RDY_MASK		BIT(5)
 231#define DA9062AA_E_VDD_WARN_SHIFT	7
 232#define DA9062AA_E_VDD_WARN_MASK	BIT(7)
 233
 234/* DA9062AA_EVENT_C = 0x008 */
 235#define DA9062AA_E_GPI0_SHIFT		0
 236#define DA9062AA_E_GPI0_MASK		0x01
 237#define DA9062AA_E_GPI1_SHIFT		1
 238#define DA9062AA_E_GPI1_MASK		BIT(1)
 239#define DA9062AA_E_GPI2_SHIFT		2
 240#define DA9062AA_E_GPI2_MASK		BIT(2)
 241#define DA9062AA_E_GPI3_SHIFT		3
 242#define DA9062AA_E_GPI3_MASK		BIT(3)
 243#define DA9062AA_E_GPI4_SHIFT		4
 244#define DA9062AA_E_GPI4_MASK		BIT(4)
 245
 246/* DA9062AA_IRQ_MASK_A = 0x00A */
 247#define DA9062AA_M_NONKEY_SHIFT		0
 248#define DA9062AA_M_NONKEY_MASK		0x01
 249#define DA9062AA_M_ALARM_SHIFT		1
 250#define DA9062AA_M_ALARM_MASK		BIT(1)
 251#define DA9062AA_M_TICK_SHIFT		2
 252#define DA9062AA_M_TICK_MASK		BIT(2)
 253#define DA9062AA_M_WDG_WARN_SHIFT	3
 254#define DA9062AA_M_WDG_WARN_MASK	BIT(3)
 255#define DA9062AA_M_SEQ_RDY_SHIFT	4
 256#define DA9062AA_M_SEQ_RDY_MASK		BIT(4)
 257
 258/* DA9062AA_IRQ_MASK_B = 0x00B */
 259#define DA9062AA_M_TEMP_SHIFT		1
 260#define DA9062AA_M_TEMP_MASK		BIT(1)
 261#define DA9062AA_M_LDO_LIM_SHIFT	3
 262#define DA9062AA_M_LDO_LIM_MASK		BIT(3)
 263#define DA9062AA_M_DVC_RDY_SHIFT	5
 264#define DA9062AA_M_DVC_RDY_MASK		BIT(5)
 265#define DA9062AA_M_VDD_WARN_SHIFT	7
 266#define DA9062AA_M_VDD_WARN_MASK	BIT(7)
 267
 268/* DA9062AA_IRQ_MASK_C = 0x00C */
 269#define DA9062AA_M_GPI0_SHIFT		0
 270#define DA9062AA_M_GPI0_MASK		0x01
 271#define DA9062AA_M_GPI1_SHIFT		1
 272#define DA9062AA_M_GPI1_MASK		BIT(1)
 273#define DA9062AA_M_GPI2_SHIFT		2
 274#define DA9062AA_M_GPI2_MASK		BIT(2)
 275#define DA9062AA_M_GPI3_SHIFT		3
 276#define DA9062AA_M_GPI3_MASK		BIT(3)
 277#define DA9062AA_M_GPI4_SHIFT		4
 278#define DA9062AA_M_GPI4_MASK		BIT(4)
 279
 280/* DA9062AA_CONTROL_A = 0x00E */
 281#define DA9062AA_SYSTEM_EN_SHIFT	0
 282#define DA9062AA_SYSTEM_EN_MASK		0x01
 283#define DA9062AA_POWER_EN_SHIFT		1
 284#define DA9062AA_POWER_EN_MASK		BIT(1)
 285#define DA9062AA_POWER1_EN_SHIFT	2
 286#define DA9062AA_POWER1_EN_MASK		BIT(2)
 287#define DA9062AA_STANDBY_SHIFT		3
 288#define DA9062AA_STANDBY_MASK		BIT(3)
 289#define DA9062AA_M_SYSTEM_EN_SHIFT	4
 290#define DA9062AA_M_SYSTEM_EN_MASK	BIT(4)
 291#define DA9062AA_M_POWER_EN_SHIFT	5
 292#define DA9062AA_M_POWER_EN_MASK	BIT(5)
 293#define DA9062AA_M_POWER1_EN_SHIFT	6
 294#define DA9062AA_M_POWER1_EN_MASK	BIT(6)
 295
 296/* DA9062AA_CONTROL_B = 0x00F */
 297#define DA9062AA_WATCHDOG_PD_SHIFT	1
 298#define DA9062AA_WATCHDOG_PD_MASK	BIT(1)
 299#define DA9062AA_FREEZE_EN_SHIFT	2
 300#define DA9062AA_FREEZE_EN_MASK		BIT(2)
 301#define DA9062AA_NRES_MODE_SHIFT	3
 302#define DA9062AA_NRES_MODE_MASK		BIT(3)
 303#define DA9062AA_NONKEY_LOCK_SHIFT	4
 304#define DA9062AA_NONKEY_LOCK_MASK	BIT(4)
 305#define DA9062AA_NFREEZE_SHIFT		5
 306#define DA9062AA_NFREEZE_MASK		(0x03 << 5)
 307#define DA9062AA_BUCK_SLOWSTART_SHIFT	7
 308#define DA9062AA_BUCK_SLOWSTART_MASK	BIT(7)
 309
 310/* DA9062AA_CONTROL_C = 0x010 */
 311#define DA9062AA_DEBOUNCING_SHIFT	0
 312#define DA9062AA_DEBOUNCING_MASK	0x07
 313#define DA9062AA_AUTO_BOOT_SHIFT	3
 314#define DA9062AA_AUTO_BOOT_MASK		BIT(3)
 315#define DA9062AA_OTPREAD_EN_SHIFT	4
 316#define DA9062AA_OTPREAD_EN_MASK	BIT(4)
 317#define DA9062AA_SLEW_RATE_SHIFT	5
 318#define DA9062AA_SLEW_RATE_MASK		(0x03 << 5)
 319#define DA9062AA_DEF_SUPPLY_SHIFT	7
 320#define DA9062AA_DEF_SUPPLY_MASK	BIT(7)
 321
 322/* DA9062AA_CONTROL_D = 0x011 */
 323#define DA9062AA_TWDSCALE_SHIFT		0
 324#define DA9062AA_TWDSCALE_MASK		0x07
 325
 326/* DA9062AA_CONTROL_E = 0x012 */
 327#define DA9062AA_RTC_MODE_PD_SHIFT	0
 328#define DA9062AA_RTC_MODE_PD_MASK	0x01
 329#define DA9062AA_RTC_MODE_SD_SHIFT	1
 330#define DA9062AA_RTC_MODE_SD_MASK	BIT(1)
 331#define DA9062AA_RTC_EN_SHIFT		2
 332#define DA9062AA_RTC_EN_MASK		BIT(2)
 333#define DA9062AA_V_LOCK_SHIFT		7
 334#define DA9062AA_V_LOCK_MASK		BIT(7)
 335
 336/* DA9062AA_CONTROL_F = 0x013 */
 337#define DA9062AA_WATCHDOG_SHIFT		0
 338#define DA9062AA_WATCHDOG_MASK		0x01
 339#define DA9062AA_SHUTDOWN_SHIFT		1
 340#define DA9062AA_SHUTDOWN_MASK		BIT(1)
 341#define DA9062AA_WAKE_UP_SHIFT		2
 342#define DA9062AA_WAKE_UP_MASK		BIT(2)
 343
 344/* DA9062AA_PD_DIS = 0x014 */
 345#define DA9062AA_GPI_DIS_SHIFT		0
 346#define DA9062AA_GPI_DIS_MASK		0x01
 347#define DA9062AA_PMIF_DIS_SHIFT		2
 348#define DA9062AA_PMIF_DIS_MASK		BIT(2)
 349#define DA9062AA_CLDR_PAUSE_SHIFT	4
 350#define DA9062AA_CLDR_PAUSE_MASK	BIT(4)
 351#define DA9062AA_BBAT_DIS_SHIFT		5
 352#define DA9062AA_BBAT_DIS_MASK		BIT(5)
 353#define DA9062AA_OUT32K_PAUSE_SHIFT	6
 354#define DA9062AA_OUT32K_PAUSE_MASK	BIT(6)
 355#define DA9062AA_PMCONT_DIS_SHIFT	7
 356#define DA9062AA_PMCONT_DIS_MASK	BIT(7)
 357
 358/* DA9062AA_GPIO_0_1 = 0x015 */
 359#define DA9062AA_GPIO0_PIN_SHIFT	0
 360#define DA9062AA_GPIO0_PIN_MASK		0x03
 361#define DA9062AA_GPIO0_TYPE_SHIFT	2
 362#define DA9062AA_GPIO0_TYPE_MASK	BIT(2)
 363#define DA9062AA_GPIO0_WEN_SHIFT	3
 364#define DA9062AA_GPIO0_WEN_MASK		BIT(3)
 365#define DA9062AA_GPIO1_PIN_SHIFT	4
 366#define DA9062AA_GPIO1_PIN_MASK		(0x03 << 4)
 367#define DA9062AA_GPIO1_TYPE_SHIFT	6
 368#define DA9062AA_GPIO1_TYPE_MASK	BIT(6)
 369#define DA9062AA_GPIO1_WEN_SHIFT	7
 370#define DA9062AA_GPIO1_WEN_MASK		BIT(7)
 371
 372/* DA9062AA_GPIO_2_3 = 0x016 */
 373#define DA9062AA_GPIO2_PIN_SHIFT	0
 374#define DA9062AA_GPIO2_PIN_MASK		0x03
 375#define DA9062AA_GPIO2_TYPE_SHIFT	2
 376#define DA9062AA_GPIO2_TYPE_MASK	BIT(2)
 377#define DA9062AA_GPIO2_WEN_SHIFT	3
 378#define DA9062AA_GPIO2_WEN_MASK		BIT(3)
 379#define DA9062AA_GPIO3_PIN_SHIFT	4
 380#define DA9062AA_GPIO3_PIN_MASK		(0x03 << 4)
 381#define DA9062AA_GPIO3_TYPE_SHIFT	6
 382#define DA9062AA_GPIO3_TYPE_MASK	BIT(6)
 383#define DA9062AA_GPIO3_WEN_SHIFT	7
 384#define DA9062AA_GPIO3_WEN_MASK		BIT(7)
 385
 386/* DA9062AA_GPIO_4 = 0x017 */
 387#define DA9062AA_GPIO4_PIN_SHIFT	0
 388#define DA9062AA_GPIO4_PIN_MASK		0x03
 389#define DA9062AA_GPIO4_TYPE_SHIFT	2
 390#define DA9062AA_GPIO4_TYPE_MASK	BIT(2)
 391#define DA9062AA_GPIO4_WEN_SHIFT	3
 392#define DA9062AA_GPIO4_WEN_MASK		BIT(3)
 393
 394/* DA9062AA_GPIO_WKUP_MODE = 0x01C */
 395#define DA9062AA_GPIO0_WKUP_MODE_SHIFT	0
 396#define DA9062AA_GPIO0_WKUP_MODE_MASK	0x01
 397#define DA9062AA_GPIO1_WKUP_MODE_SHIFT	1
 398#define DA9062AA_GPIO1_WKUP_MODE_MASK	BIT(1)
 399#define DA9062AA_GPIO2_WKUP_MODE_SHIFT	2
 400#define DA9062AA_GPIO2_WKUP_MODE_MASK	BIT(2)
 401#define DA9062AA_GPIO3_WKUP_MODE_SHIFT	3
 402#define DA9062AA_GPIO3_WKUP_MODE_MASK	BIT(3)
 403#define DA9062AA_GPIO4_WKUP_MODE_SHIFT	4
 404#define DA9062AA_GPIO4_WKUP_MODE_MASK	BIT(4)
 405
 406/* DA9062AA_GPIO_MODE0_4 = 0x01D */
 407#define DA9062AA_GPIO0_MODE_SHIFT	0
 408#define DA9062AA_GPIO0_MODE_MASK	0x01
 409#define DA9062AA_GPIO1_MODE_SHIFT	1
 410#define DA9062AA_GPIO1_MODE_MASK	BIT(1)
 411#define DA9062AA_GPIO2_MODE_SHIFT	2
 412#define DA9062AA_GPIO2_MODE_MASK	BIT(2)
 413#define DA9062AA_GPIO3_MODE_SHIFT	3
 414#define DA9062AA_GPIO3_MODE_MASK	BIT(3)
 415#define DA9062AA_GPIO4_MODE_SHIFT	4
 416#define DA9062AA_GPIO4_MODE_MASK	BIT(4)
 417
 418/* DA9062AA_GPIO_OUT0_2 = 0x01E */
 419#define DA9062AA_GPIO0_OUT_SHIFT	0
 420#define DA9062AA_GPIO0_OUT_MASK		0x07
 421#define DA9062AA_GPIO1_OUT_SHIFT	3
 422#define DA9062AA_GPIO1_OUT_MASK		(0x07 << 3)
 423#define DA9062AA_GPIO2_OUT_SHIFT	6
 424#define DA9062AA_GPIO2_OUT_MASK		(0x03 << 6)
 425
 426/* DA9062AA_GPIO_OUT3_4 = 0x01F */
 427#define DA9062AA_GPIO3_OUT_SHIFT	0
 428#define DA9062AA_GPIO3_OUT_MASK		0x07
 429#define DA9062AA_GPIO4_OUT_SHIFT	3
 430#define DA9062AA_GPIO4_OUT_MASK		(0x03 << 3)
 431
 432/* DA9062AA_BUCK2_CONT = 0x020 */
 433#define DA9062AA_BUCK2_EN_SHIFT		0
 434#define DA9062AA_BUCK2_EN_MASK		0x01
 435#define DA9062AA_BUCK2_GPI_SHIFT	1
 436#define DA9062AA_BUCK2_GPI_MASK		(0x03 << 1)
 437#define DA9062AA_BUCK2_CONF_SHIFT	3
 438#define DA9062AA_BUCK2_CONF_MASK	BIT(3)
 439#define DA9062AA_VBUCK2_GPI_SHIFT	5
 440#define DA9062AA_VBUCK2_GPI_MASK	(0x03 << 5)
 441
 442/* DA9062AA_BUCK1_CONT = 0x021 */
 443#define DA9062AA_BUCK1_EN_SHIFT		0
 444#define DA9062AA_BUCK1_EN_MASK		0x01
 445#define DA9062AA_BUCK1_GPI_SHIFT	1
 446#define DA9062AA_BUCK1_GPI_MASK		(0x03 << 1)
 447#define DA9062AA_BUCK1_CONF_SHIFT	3
 448#define DA9062AA_BUCK1_CONF_MASK	BIT(3)
 449#define DA9062AA_VBUCK1_GPI_SHIFT	5
 450#define DA9062AA_VBUCK1_GPI_MASK	(0x03 << 5)
 451
 452/* DA9062AA_BUCK4_CONT = 0x022 */
 453#define DA9062AA_BUCK4_EN_SHIFT		0
 454#define DA9062AA_BUCK4_EN_MASK		0x01
 455#define DA9062AA_BUCK4_GPI_SHIFT	1
 456#define DA9062AA_BUCK4_GPI_MASK		(0x03 << 1)
 457#define DA9062AA_BUCK4_CONF_SHIFT	3
 458#define DA9062AA_BUCK4_CONF_MASK	BIT(3)
 459#define DA9062AA_VBUCK4_GPI_SHIFT	5
 460#define DA9062AA_VBUCK4_GPI_MASK	(0x03 << 5)
 461
 462/* DA9062AA_BUCK3_CONT = 0x024 */
 463#define DA9062AA_BUCK3_EN_SHIFT		0
 464#define DA9062AA_BUCK3_EN_MASK		0x01
 465#define DA9062AA_BUCK3_GPI_SHIFT	1
 466#define DA9062AA_BUCK3_GPI_MASK		(0x03 << 1)
 467#define DA9062AA_BUCK3_CONF_SHIFT	3
 468#define DA9062AA_BUCK3_CONF_MASK	BIT(3)
 469#define DA9062AA_VBUCK3_GPI_SHIFT	5
 470#define DA9062AA_VBUCK3_GPI_MASK	(0x03 << 5)
 471
 472/* DA9062AA_LDO1_CONT = 0x026 */
 473#define DA9062AA_LDO1_EN_SHIFT		0
 474#define DA9062AA_LDO1_EN_MASK		0x01
 475#define DA9062AA_LDO1_GPI_SHIFT		1
 476#define DA9062AA_LDO1_GPI_MASK		(0x03 << 1)
 477#define DA9062AA_LDO1_PD_DIS_SHIFT	3
 478#define DA9062AA_LDO1_PD_DIS_MASK	BIT(3)
 479#define DA9062AA_VLDO1_GPI_SHIFT	5
 480#define DA9062AA_VLDO1_GPI_MASK		(0x03 << 5)
 481#define DA9062AA_LDO1_CONF_SHIFT	7
 482#define DA9062AA_LDO1_CONF_MASK		BIT(7)
 483
 484/* DA9062AA_LDO2_CONT = 0x027 */
 485#define DA9062AA_LDO2_EN_SHIFT		0
 486#define DA9062AA_LDO2_EN_MASK		0x01
 487#define DA9062AA_LDO2_GPI_SHIFT		1
 488#define DA9062AA_LDO2_GPI_MASK		(0x03 << 1)
 489#define DA9062AA_LDO2_PD_DIS_SHIFT	3
 490#define DA9062AA_LDO2_PD_DIS_MASK	BIT(3)
 491#define DA9062AA_VLDO2_GPI_SHIFT	5
 492#define DA9062AA_VLDO2_GPI_MASK		(0x03 << 5)
 493#define DA9062AA_LDO2_CONF_SHIFT	7
 494#define DA9062AA_LDO2_CONF_MASK		BIT(7)
 495
 496/* DA9062AA_LDO3_CONT = 0x028 */
 497#define DA9062AA_LDO3_EN_SHIFT		0
 498#define DA9062AA_LDO3_EN_MASK		0x01
 499#define DA9062AA_LDO3_GPI_SHIFT		1
 500#define DA9062AA_LDO3_GPI_MASK		(0x03 << 1)
 501#define DA9062AA_LDO3_PD_DIS_SHIFT	3
 502#define DA9062AA_LDO3_PD_DIS_MASK	BIT(3)
 503#define DA9062AA_VLDO3_GPI_SHIFT	5
 504#define DA9062AA_VLDO3_GPI_MASK		(0x03 << 5)
 505#define DA9062AA_LDO3_CONF_SHIFT	7
 506#define DA9062AA_LDO3_CONF_MASK		BIT(7)
 507
 508/* DA9062AA_LDO4_CONT = 0x029 */
 509#define DA9062AA_LDO4_EN_SHIFT		0
 510#define DA9062AA_LDO4_EN_MASK		0x01
 511#define DA9062AA_LDO4_GPI_SHIFT		1
 512#define DA9062AA_LDO4_GPI_MASK		(0x03 << 1)
 513#define DA9062AA_LDO4_PD_DIS_SHIFT	3
 514#define DA9062AA_LDO4_PD_DIS_MASK	BIT(3)
 515#define DA9062AA_VLDO4_GPI_SHIFT	5
 516#define DA9062AA_VLDO4_GPI_MASK		(0x03 << 5)
 517#define DA9062AA_LDO4_CONF_SHIFT	7
 518#define DA9062AA_LDO4_CONF_MASK		BIT(7)
 519
 520/* DA9062AA_DVC_1 = 0x032 */
 521#define DA9062AA_VBUCK1_SEL_SHIFT	0
 522#define DA9062AA_VBUCK1_SEL_MASK	0x01
 523#define DA9062AA_VBUCK2_SEL_SHIFT	1
 524#define DA9062AA_VBUCK2_SEL_MASK	BIT(1)
 525#define DA9062AA_VBUCK4_SEL_SHIFT	2
 526#define DA9062AA_VBUCK4_SEL_MASK	BIT(2)
 527#define DA9062AA_VBUCK3_SEL_SHIFT	3
 528#define DA9062AA_VBUCK3_SEL_MASK	BIT(3)
 529#define DA9062AA_VLDO1_SEL_SHIFT	4
 530#define DA9062AA_VLDO1_SEL_MASK		BIT(4)
 531#define DA9062AA_VLDO2_SEL_SHIFT	5
 532#define DA9062AA_VLDO2_SEL_MASK		BIT(5)
 533#define DA9062AA_VLDO3_SEL_SHIFT	6
 534#define DA9062AA_VLDO3_SEL_MASK		BIT(6)
 535#define DA9062AA_VLDO4_SEL_SHIFT	7
 536#define DA9062AA_VLDO4_SEL_MASK		BIT(7)
 537
 538/* DA9062AA_COUNT_S = 0x040 */
 539#define DA9062AA_COUNT_SEC_SHIFT	0
 540#define DA9062AA_COUNT_SEC_MASK		0x3f
 541#define DA9062AA_RTC_READ_SHIFT		7
 542#define DA9062AA_RTC_READ_MASK		BIT(7)
 543
 544/* DA9062AA_COUNT_MI = 0x041 */
 545#define DA9062AA_COUNT_MIN_SHIFT	0
 546#define DA9062AA_COUNT_MIN_MASK		0x3f
 547
 548/* DA9062AA_COUNT_H = 0x042 */
 549#define DA9062AA_COUNT_HOUR_SHIFT	0
 550#define DA9062AA_COUNT_HOUR_MASK	0x1f
 551
 552/* DA9062AA_COUNT_D = 0x043 */
 553#define DA9062AA_COUNT_DAY_SHIFT	0
 554#define DA9062AA_COUNT_DAY_MASK		0x1f
 555
 556/* DA9062AA_COUNT_MO = 0x044 */
 557#define DA9062AA_COUNT_MONTH_SHIFT	0
 558#define DA9062AA_COUNT_MONTH_MASK	0x0f
 559
 560/* DA9062AA_COUNT_Y = 0x045 */
 561#define DA9062AA_COUNT_YEAR_SHIFT	0
 562#define DA9062AA_COUNT_YEAR_MASK	0x3f
 563#define DA9062AA_MONITOR_SHIFT		6
 564#define DA9062AA_MONITOR_MASK		BIT(6)
 565
 566/* DA9062AA_ALARM_S = 0x046 */
 567#define DA9062AA_ALARM_SEC_SHIFT	0
 568#define DA9062AA_ALARM_SEC_MASK		0x3f
 569#define DA9062AA_ALARM_STATUS_SHIFT	6
 570#define DA9062AA_ALARM_STATUS_MASK	(0x03 << 6)
 571
 572/* DA9062AA_ALARM_MI = 0x047 */
 573#define DA9062AA_ALARM_MIN_SHIFT	0
 574#define DA9062AA_ALARM_MIN_MASK		0x3f
 575
 576/* DA9062AA_ALARM_H = 0x048 */
 577#define DA9062AA_ALARM_HOUR_SHIFT	0
 578#define DA9062AA_ALARM_HOUR_MASK	0x1f
 579
 580/* DA9062AA_ALARM_D = 0x049 */
 581#define DA9062AA_ALARM_DAY_SHIFT	0
 582#define DA9062AA_ALARM_DAY_MASK		0x1f
 583
 584/* DA9062AA_ALARM_MO = 0x04A */
 585#define DA9062AA_ALARM_MONTH_SHIFT	0
 586#define DA9062AA_ALARM_MONTH_MASK	0x0f
 587#define DA9062AA_TICK_TYPE_SHIFT	4
 588#define DA9062AA_TICK_TYPE_MASK		BIT(4)
 589#define DA9062AA_TICK_WAKE_SHIFT	5
 590#define DA9062AA_TICK_WAKE_MASK		BIT(5)
 591
 592/* DA9062AA_ALARM_Y = 0x04B */
 593#define DA9062AA_ALARM_YEAR_SHIFT	0
 594#define DA9062AA_ALARM_YEAR_MASK	0x3f
 595#define DA9062AA_ALARM_ON_SHIFT		6
 596#define DA9062AA_ALARM_ON_MASK		BIT(6)
 597#define DA9062AA_TICK_ON_SHIFT		7
 598#define DA9062AA_TICK_ON_MASK		BIT(7)
 599
 600/* DA9062AA_SECOND_A = 0x04C */
 601#define DA9062AA_SECONDS_A_SHIFT	0
 602#define DA9062AA_SECONDS_A_MASK		0xff
 603
 604/* DA9062AA_SECOND_B = 0x04D */
 605#define DA9062AA_SECONDS_B_SHIFT	0
 606#define DA9062AA_SECONDS_B_MASK		0xff
 607
 608/* DA9062AA_SECOND_C = 0x04E */
 609#define DA9062AA_SECONDS_C_SHIFT	0
 610#define DA9062AA_SECONDS_C_MASK		0xff
 611
 612/* DA9062AA_SECOND_D = 0x04F */
 613#define DA9062AA_SECONDS_D_SHIFT	0
 614#define DA9062AA_SECONDS_D_MASK		0xff
 615
 616/* DA9062AA_SEQ = 0x081 */
 617#define DA9062AA_SEQ_POINTER_SHIFT	0
 618#define DA9062AA_SEQ_POINTER_MASK	0x0f
 619#define DA9062AA_NXT_SEQ_START_SHIFT	4
 620#define DA9062AA_NXT_SEQ_START_MASK	(0x0f << 4)
 621
 622/* DA9062AA_SEQ_TIMER = 0x082 */
 623#define DA9062AA_SEQ_TIME_SHIFT		0
 624#define DA9062AA_SEQ_TIME_MASK		0x0f
 625#define DA9062AA_SEQ_DUMMY_SHIFT	4
 626#define DA9062AA_SEQ_DUMMY_MASK		(0x0f << 4)
 627
 628/* DA9062AA_ID_2_1 = 0x083 */
 629#define DA9062AA_LDO1_STEP_SHIFT	0
 630#define DA9062AA_LDO1_STEP_MASK		0x0f
 631#define DA9062AA_LDO2_STEP_SHIFT	4
 632#define DA9062AA_LDO2_STEP_MASK		(0x0f << 4)
 633
 634/* DA9062AA_ID_4_3 = 0x084 */
 635#define DA9062AA_LDO3_STEP_SHIFT	0
 636#define DA9062AA_LDO3_STEP_MASK		0x0f
 637#define DA9062AA_LDO4_STEP_SHIFT	4
 638#define DA9062AA_LDO4_STEP_MASK		(0x0f << 4)
 639
 640/* DA9062AA_ID_12_11 = 0x088 */
 641#define DA9062AA_PD_DIS_STEP_SHIFT	4
 642#define DA9062AA_PD_DIS_STEP_MASK	(0x0f << 4)
 643
 644/* DA9062AA_ID_14_13 = 0x089 */
 645#define DA9062AA_BUCK1_STEP_SHIFT	0
 646#define DA9062AA_BUCK1_STEP_MASK	0x0f
 647#define DA9062AA_BUCK2_STEP_SHIFT	4
 648#define DA9062AA_BUCK2_STEP_MASK	(0x0f << 4)
 649
 650/* DA9062AA_ID_16_15 = 0x08A */
 651#define DA9062AA_BUCK4_STEP_SHIFT	0
 652#define DA9062AA_BUCK4_STEP_MASK	0x0f
 653#define DA9062AA_BUCK3_STEP_SHIFT	4
 654#define DA9062AA_BUCK3_STEP_MASK	(0x0f << 4)
 655
 656/* DA9062AA_ID_22_21 = 0x08D */
 657#define DA9062AA_GP_RISE1_STEP_SHIFT	0
 658#define DA9062AA_GP_RISE1_STEP_MASK	0x0f
 659#define DA9062AA_GP_FALL1_STEP_SHIFT	4
 660#define DA9062AA_GP_FALL1_STEP_MASK	(0x0f << 4)
 661
 662/* DA9062AA_ID_24_23 = 0x08E */
 663#define DA9062AA_GP_RISE2_STEP_SHIFT	0
 664#define DA9062AA_GP_RISE2_STEP_MASK	0x0f
 665#define DA9062AA_GP_FALL2_STEP_SHIFT	4
 666#define DA9062AA_GP_FALL2_STEP_MASK	(0x0f << 4)
 667
 668/* DA9062AA_ID_26_25 = 0x08F */
 669#define DA9062AA_GP_RISE3_STEP_SHIFT	0
 670#define DA9062AA_GP_RISE3_STEP_MASK	0x0f
 671#define DA9062AA_GP_FALL3_STEP_SHIFT	4
 672#define DA9062AA_GP_FALL3_STEP_MASK	(0x0f << 4)
 673
 674/* DA9062AA_ID_28_27 = 0x090 */
 675#define DA9062AA_GP_RISE4_STEP_SHIFT	0
 676#define DA9062AA_GP_RISE4_STEP_MASK	0x0f
 677#define DA9062AA_GP_FALL4_STEP_SHIFT	4
 678#define DA9062AA_GP_FALL4_STEP_MASK	(0x0f << 4)
 679
 680/* DA9062AA_ID_30_29 = 0x091 */
 681#define DA9062AA_GP_RISE5_STEP_SHIFT	0
 682#define DA9062AA_GP_RISE5_STEP_MASK	0x0f
 683#define DA9062AA_GP_FALL5_STEP_SHIFT	4
 684#define DA9062AA_GP_FALL5_STEP_MASK	(0x0f << 4)
 685
 686/* DA9062AA_ID_32_31 = 0x092 */
 687#define DA9062AA_WAIT_STEP_SHIFT	0
 688#define DA9062AA_WAIT_STEP_MASK		0x0f
 689#define DA9062AA_EN32K_STEP_SHIFT	4
 690#define DA9062AA_EN32K_STEP_MASK	(0x0f << 4)
 691
 692/* DA9062AA_SEQ_A = 0x095 */
 693#define DA9062AA_SYSTEM_END_SHIFT	0
 694#define DA9062AA_SYSTEM_END_MASK	0x0f
 695#define DA9062AA_POWER_END_SHIFT	4
 696#define DA9062AA_POWER_END_MASK		(0x0f << 4)
 697
 698/* DA9062AA_SEQ_B = 0x096 */
 699#define DA9062AA_MAX_COUNT_SHIFT	0
 700#define DA9062AA_MAX_COUNT_MASK		0x0f
 701#define DA9062AA_PART_DOWN_SHIFT	4
 702#define DA9062AA_PART_DOWN_MASK		(0x0f << 4)
 703
 704/* DA9062AA_WAIT = 0x097 */
 705#define DA9062AA_WAIT_TIME_SHIFT	0
 706#define DA9062AA_WAIT_TIME_MASK		0x0f
 707#define DA9062AA_WAIT_MODE_SHIFT	4
 708#define DA9062AA_WAIT_MODE_MASK		BIT(4)
 709#define DA9062AA_TIME_OUT_SHIFT		5
 710#define DA9062AA_TIME_OUT_MASK		BIT(5)
 711#define DA9062AA_WAIT_DIR_SHIFT		6
 712#define DA9062AA_WAIT_DIR_MASK		(0x03 << 6)
 713
 714/* DA9062AA_EN_32K = 0x098 */
 715#define DA9062AA_STABILISATION_TIME_SHIFT	0
 716#define DA9062AA_STABILISATION_TIME_MASK	0x07
 717#define DA9062AA_CRYSTAL_SHIFT			3
 718#define DA9062AA_CRYSTAL_MASK			BIT(3)
 719#define DA9062AA_DELAY_MODE_SHIFT		4
 720#define DA9062AA_DELAY_MODE_MASK		BIT(4)
 721#define DA9062AA_OUT_CLOCK_SHIFT		5
 722#define DA9062AA_OUT_CLOCK_MASK			BIT(5)
 723#define DA9062AA_RTC_CLOCK_SHIFT		6
 724#define DA9062AA_RTC_CLOCK_MASK			BIT(6)
 725#define DA9062AA_EN_32KOUT_SHIFT		7
 726#define DA9062AA_EN_32KOUT_MASK			BIT(7)
 727
 728/* DA9062AA_RESET = 0x099 */
 729#define DA9062AA_RESET_TIMER_SHIFT	0
 730#define DA9062AA_RESET_TIMER_MASK	0x3f
 731#define DA9062AA_RESET_EVENT_SHIFT	6
 732#define DA9062AA_RESET_EVENT_MASK	(0x03 << 6)
 733
 734/* DA9062AA_BUCK_ILIM_A = 0x09A */
 735#define DA9062AA_BUCK3_ILIM_SHIFT	0
 736#define DA9062AA_BUCK3_ILIM_MASK	0x0f
 737
 738/* DA9062AA_BUCK_ILIM_B = 0x09B */
 739#define DA9062AA_BUCK4_ILIM_SHIFT	0
 740#define DA9062AA_BUCK4_ILIM_MASK	0x0f
 741
 742/* DA9062AA_BUCK_ILIM_C = 0x09C */
 743#define DA9062AA_BUCK1_ILIM_SHIFT	0
 744#define DA9062AA_BUCK1_ILIM_MASK	0x0f
 745#define DA9062AA_BUCK2_ILIM_SHIFT	4
 746#define DA9062AA_BUCK2_ILIM_MASK	(0x0f << 4)
 747
 748/* DA9062AA_BUCK2_CFG = 0x09D */
 749#define DA9062AA_BUCK2_PD_DIS_SHIFT	5
 750#define DA9062AA_BUCK2_PD_DIS_MASK	BIT(5)
 751#define DA9062AA_BUCK2_MODE_SHIFT	6
 752#define DA9062AA_BUCK2_MODE_MASK	(0x03 << 6)
 753
 754/* DA9062AA_BUCK1_CFG = 0x09E */
 755#define DA9062AA_BUCK1_PD_DIS_SHIFT	5
 756#define DA9062AA_BUCK1_PD_DIS_MASK	BIT(5)
 757#define DA9062AA_BUCK1_MODE_SHIFT	6
 758#define DA9062AA_BUCK1_MODE_MASK	(0x03 << 6)
 759
 760/* DA9062AA_BUCK4_CFG = 0x09F */
 761#define DA9062AA_BUCK4_VTTR_EN_SHIFT	3
 762#define DA9062AA_BUCK4_VTTR_EN_MASK	BIT(3)
 763#define DA9062AA_BUCK4_VTT_EN_SHIFT	4
 764#define DA9062AA_BUCK4_VTT_EN_MASK	BIT(4)
 765#define DA9062AA_BUCK4_PD_DIS_SHIFT	5
 766#define DA9062AA_BUCK4_PD_DIS_MASK	BIT(5)
 767#define DA9062AA_BUCK4_MODE_SHIFT	6
 768#define DA9062AA_BUCK4_MODE_MASK	(0x03 << 6)
 769
 770/* DA9062AA_BUCK3_CFG = 0x0A0 */
 771#define DA9062AA_BUCK3_PD_DIS_SHIFT	5
 772#define DA9062AA_BUCK3_PD_DIS_MASK	BIT(5)
 773#define DA9062AA_BUCK3_MODE_SHIFT	6
 774#define DA9062AA_BUCK3_MODE_MASK	(0x03 << 6)
 775
 776/* DA9062AA_VBUCK2_A = 0x0A3 */
 777#define DA9062AA_VBUCK2_A_SHIFT		0
 778#define DA9062AA_VBUCK2_A_MASK		0x7f
 779#define DA9062AA_BUCK2_SL_A_SHIFT	7
 780#define DA9062AA_BUCK2_SL_A_MASK	BIT(7)
 781
 782/* DA9062AA_VBUCK1_A = 0x0A4 */
 783#define DA9062AA_VBUCK1_A_SHIFT		0
 784#define DA9062AA_VBUCK1_A_MASK		0x7f
 785#define DA9062AA_BUCK1_SL_A_SHIFT	7
 786#define DA9062AA_BUCK1_SL_A_MASK	BIT(7)
 787
 788/* DA9062AA_VBUCK4_A = 0x0A5 */
 789#define DA9062AA_VBUCK4_A_SHIFT		0
 790#define DA9062AA_VBUCK4_A_MASK		0x7f
 791#define DA9062AA_BUCK4_SL_A_SHIFT	7
 792#define DA9062AA_BUCK4_SL_A_MASK	BIT(7)
 793
 794/* DA9062AA_VBUCK3_A = 0x0A7 */
 795#define DA9062AA_VBUCK3_A_SHIFT		0
 796#define DA9062AA_VBUCK3_A_MASK		0x7f
 797#define DA9062AA_BUCK3_SL_A_SHIFT	7
 798#define DA9062AA_BUCK3_SL_A_MASK	BIT(7)
 799
 800/* DA9062AA_VLDO[1-4]_A common */
 801#define DA9062AA_VLDO_A_MIN_SEL	2
 802
 803/* DA9062AA_VLDO1_A = 0x0A9 */
 804#define DA9062AA_VLDO1_A_SHIFT		0
 805#define DA9062AA_VLDO1_A_MASK		0x3f
 806#define DA9062AA_LDO1_SL_A_SHIFT	7
 807#define DA9062AA_LDO1_SL_A_MASK		BIT(7)
 808
 809/* DA9062AA_VLDO2_A = 0x0AA */
 810#define DA9062AA_VLDO2_A_SHIFT		0
 811#define DA9062AA_VLDO2_A_MASK		0x3f
 812#define DA9062AA_LDO2_SL_A_SHIFT	7
 813#define DA9062AA_LDO2_SL_A_MASK		BIT(7)
 814
 815/* DA9062AA_VLDO3_A = 0x0AB */
 816#define DA9062AA_VLDO3_A_SHIFT		0
 817#define DA9062AA_VLDO3_A_MASK		0x3f
 818#define DA9062AA_LDO3_SL_A_SHIFT	7
 819#define DA9062AA_LDO3_SL_A_MASK		BIT(7)
 820
 821/* DA9062AA_VLDO4_A = 0x0AC */
 822#define DA9062AA_VLDO4_A_SHIFT		0
 823#define DA9062AA_VLDO4_A_MASK		0x3f
 824#define DA9062AA_LDO4_SL_A_SHIFT	7
 825#define DA9062AA_LDO4_SL_A_MASK		BIT(7)
 826
 827/* DA9062AA_VBUCK2_B = 0x0B4 */
 828#define DA9062AA_VBUCK2_B_SHIFT		0
 829#define DA9062AA_VBUCK2_B_MASK		0x7f
 830#define DA9062AA_BUCK2_SL_B_SHIFT	7
 831#define DA9062AA_BUCK2_SL_B_MASK	BIT(7)
 832
 833/* DA9062AA_VBUCK1_B = 0x0B5 */
 834#define DA9062AA_VBUCK1_B_SHIFT		0
 835#define DA9062AA_VBUCK1_B_MASK		0x7f
 836#define DA9062AA_BUCK1_SL_B_SHIFT	7
 837#define DA9062AA_BUCK1_SL_B_MASK	BIT(7)
 838
 839/* DA9062AA_VBUCK4_B = 0x0B6 */
 840#define DA9062AA_VBUCK4_B_SHIFT		0
 841#define DA9062AA_VBUCK4_B_MASK		0x7f
 842#define DA9062AA_BUCK4_SL_B_SHIFT	7
 843#define DA9062AA_BUCK4_SL_B_MASK	BIT(7)
 844
 845/* DA9062AA_VBUCK3_B = 0x0B8 */
 846#define DA9062AA_VBUCK3_B_SHIFT		0
 847#define DA9062AA_VBUCK3_B_MASK		0x7f
 848#define DA9062AA_BUCK3_SL_B_SHIFT	7
 849#define DA9062AA_BUCK3_SL_B_MASK	BIT(7)
 850
 851/* DA9062AA_VLDO1_B = 0x0BA */
 852#define DA9062AA_VLDO1_B_SHIFT		0
 853#define DA9062AA_VLDO1_B_MASK		0x3f
 854#define DA9062AA_LDO1_SL_B_SHIFT	7
 855#define DA9062AA_LDO1_SL_B_MASK		BIT(7)
 856
 857/* DA9062AA_VLDO2_B = 0x0BB */
 858#define DA9062AA_VLDO2_B_SHIFT		0
 859#define DA9062AA_VLDO2_B_MASK		0x3f
 860#define DA9062AA_LDO2_SL_B_SHIFT	7
 861#define DA9062AA_LDO2_SL_B_MASK		BIT(7)
 862
 863/* DA9062AA_VLDO3_B = 0x0BC */
 864#define DA9062AA_VLDO3_B_SHIFT		0
 865#define DA9062AA_VLDO3_B_MASK		0x3f
 866#define DA9062AA_LDO3_SL_B_SHIFT	7
 867#define DA9062AA_LDO3_SL_B_MASK		BIT(7)
 868
 869/* DA9062AA_VLDO4_B = 0x0BD */
 870#define DA9062AA_VLDO4_B_SHIFT		0
 871#define DA9062AA_VLDO4_B_MASK		0x3f
 872#define DA9062AA_LDO4_SL_B_SHIFT	7
 873#define DA9062AA_LDO4_SL_B_MASK		BIT(7)
 874
 875/* DA9062AA_BBAT_CONT = 0x0C5 */
 876#define DA9062AA_BCHG_VSET_SHIFT	0
 877#define DA9062AA_BCHG_VSET_MASK		0x0f
 878#define DA9062AA_BCHG_ISET_SHIFT	4
 879#define DA9062AA_BCHG_ISET_MASK		(0x0f << 4)
 880
 881/* DA9062AA_INTERFACE = 0x105 */
 882#define DA9062AA_IF_BASE_ADDR_SHIFT	4
 883#define DA9062AA_IF_BASE_ADDR_MASK	(0x0f << 4)
 884
 885/* DA9062AA_CONFIG_A = 0x106 */
 886#define DA9062AA_PM_I_V_SHIFT		0
 887#define DA9062AA_PM_I_V_MASK		0x01
 888#define DA9062AA_PM_O_TYPE_SHIFT	2
 889#define DA9062AA_PM_O_TYPE_MASK		BIT(2)
 890#define DA9062AA_IRQ_TYPE_SHIFT		3
 891#define DA9062AA_IRQ_TYPE_MASK		BIT(3)
 892#define DA9062AA_PM_IF_V_SHIFT		4
 893#define DA9062AA_PM_IF_V_MASK		BIT(4)
 894#define DA9062AA_PM_IF_FMP_SHIFT	5
 895#define DA9062AA_PM_IF_FMP_MASK		BIT(5)
 896#define DA9062AA_PM_IF_HSM_SHIFT	6
 897#define DA9062AA_PM_IF_HSM_MASK		BIT(6)
 898
 899/* DA9062AA_CONFIG_B = 0x107 */
 900#define DA9062AA_VDD_FAULT_ADJ_SHIFT	0
 901#define DA9062AA_VDD_FAULT_ADJ_MASK	0x0f
 902#define DA9062AA_VDD_HYST_ADJ_SHIFT	4
 903#define DA9062AA_VDD_HYST_ADJ_MASK	(0x07 << 4)
 904
 905/* DA9062AA_CONFIG_C = 0x108 */
 906#define DA9062AA_BUCK_ACTV_DISCHRG_SHIFT	2
 907#define DA9062AA_BUCK_ACTV_DISCHRG_MASK		BIT(2)
 908#define DA9062AA_BUCK1_CLK_INV_SHIFT		3
 909#define DA9062AA_BUCK1_CLK_INV_MASK		BIT(3)
 910#define DA9062AA_BUCK4_CLK_INV_SHIFT		4
 911#define DA9062AA_BUCK4_CLK_INV_MASK		BIT(4)
 912#define DA9062AA_BUCK3_CLK_INV_SHIFT		6
 913#define DA9062AA_BUCK3_CLK_INV_MASK		BIT(6)
 914
 915/* DA9062AA_CONFIG_D = 0x109 */
 916#define DA9062AA_GPI_V_SHIFT		0
 917#define DA9062AA_GPI_V_MASK		0x01
 918#define DA9062AA_NIRQ_MODE_SHIFT	1
 919#define DA9062AA_NIRQ_MODE_MASK		BIT(1)
 920#define DA9062AA_SYSTEM_EN_RD_SHIFT	2
 921#define DA9062AA_SYSTEM_EN_RD_MASK	BIT(2)
 922#define DA9062AA_FORCE_RESET_SHIFT	5
 923#define DA9062AA_FORCE_RESET_MASK	BIT(5)
 924
 925/* DA9062AA_CONFIG_E = 0x10A */
 926#define DA9062AA_BUCK1_AUTO_SHIFT	0
 927#define DA9062AA_BUCK1_AUTO_MASK	0x01
 928#define DA9062AA_BUCK2_AUTO_SHIFT	1
 929#define DA9062AA_BUCK2_AUTO_MASK	BIT(1)
 930#define DA9062AA_BUCK4_AUTO_SHIFT	2
 931#define DA9062AA_BUCK4_AUTO_MASK	BIT(2)
 932#define DA9062AA_BUCK3_AUTO_SHIFT	4
 933#define DA9062AA_BUCK3_AUTO_MASK	BIT(4)
 934
 935/* DA9062AA_CONFIG_G = 0x10C */
 936#define DA9062AA_LDO1_AUTO_SHIFT	0
 937#define DA9062AA_LDO1_AUTO_MASK		0x01
 938#define DA9062AA_LDO2_AUTO_SHIFT	1
 939#define DA9062AA_LDO2_AUTO_MASK		BIT(1)
 940#define DA9062AA_LDO3_AUTO_SHIFT	2
 941#define DA9062AA_LDO3_AUTO_MASK		BIT(2)
 942#define DA9062AA_LDO4_AUTO_SHIFT	3
 943#define DA9062AA_LDO4_AUTO_MASK		BIT(3)
 944
 945/* DA9062AA_CONFIG_H = 0x10D */
 946#define DA9062AA_BUCK1_2_MERGE_SHIFT	3
 947#define DA9062AA_BUCK1_2_MERGE_MASK	BIT(3)
 948#define DA9062AA_BUCK2_OD_SHIFT		5
 949#define DA9062AA_BUCK2_OD_MASK		BIT(5)
 950#define DA9062AA_BUCK1_OD_SHIFT		6
 951#define DA9062AA_BUCK1_OD_MASK		BIT(6)
 952
 953/* DA9062AA_CONFIG_I = 0x10E */
 954#define DA9062AA_NONKEY_PIN_SHIFT	0
 955#define DA9062AA_NONKEY_PIN_MASK	0x03
 956#define DA9062AA_nONKEY_SD_SHIFT	2
 957#define DA9062AA_nONKEY_SD_MASK		BIT(2)
 958#define DA9062AA_WATCHDOG_SD_SHIFT	3
 959#define DA9062AA_WATCHDOG_SD_MASK	BIT(3)
 960#define DA9062AA_KEY_SD_MODE_SHIFT	4
 961#define DA9062AA_KEY_SD_MODE_MASK	BIT(4)
 962#define DA9062AA_HOST_SD_MODE_SHIFT	5
 963#define DA9062AA_HOST_SD_MODE_MASK	BIT(5)
 964#define DA9062AA_INT_SD_MODE_SHIFT	6
 965#define DA9062AA_INT_SD_MODE_MASK	BIT(6)
 966#define DA9062AA_LDO_SD_SHIFT		7
 967#define DA9062AA_LDO_SD_MASK		BIT(7)
 968
 969/* DA9062AA_CONFIG_J = 0x10F */
 970#define DA9062AA_KEY_DELAY_SHIFT	0
 971#define DA9062AA_KEY_DELAY_MASK		0x03
 972#define DA9062AA_SHUT_DELAY_SHIFT	2
 973#define DA9062AA_SHUT_DELAY_MASK	(0x03 << 2)
 974#define DA9062AA_RESET_DURATION_SHIFT	4
 975#define DA9062AA_RESET_DURATION_MASK	(0x03 << 4)
 976#define DA9062AA_TWOWIRE_TO_SHIFT	6
 977#define DA9062AA_TWOWIRE_TO_MASK	BIT(6)
 978#define DA9062AA_IF_RESET_SHIFT		7
 979#define DA9062AA_IF_RESET_MASK		BIT(7)
 980
 981/* DA9062AA_CONFIG_K = 0x110 */
 982#define DA9062AA_GPIO0_PUPD_SHIFT	0
 983#define DA9062AA_GPIO0_PUPD_MASK	0x01
 984#define DA9062AA_GPIO1_PUPD_SHIFT	1
 985#define DA9062AA_GPIO1_PUPD_MASK	BIT(1)
 986#define DA9062AA_GPIO2_PUPD_SHIFT	2
 987#define DA9062AA_GPIO2_PUPD_MASK	BIT(2)
 988#define DA9062AA_GPIO3_PUPD_SHIFT	3
 989#define DA9062AA_GPIO3_PUPD_MASK	BIT(3)
 990#define DA9062AA_GPIO4_PUPD_SHIFT	4
 991#define DA9062AA_GPIO4_PUPD_MASK	BIT(4)
 992
 993/* DA9062AA_CONFIG_M = 0x112 */
 994#define DA9062AA_NSHUTDOWN_PU_SHIFT	1
 995#define DA9062AA_NSHUTDOWN_PU_MASK	BIT(1)
 996#define DA9062AA_WDG_MODE_SHIFT		3
 997#define DA9062AA_WDG_MODE_MASK		BIT(3)
 998#define DA9062AA_OSC_FRQ_SHIFT		4
 999#define DA9062AA_OSC_FRQ_MASK		(0x0f << 4)
1000
1001/* DA9062AA_TRIM_CLDR = 0x120 */
1002#define DA9062AA_TRIM_CLDR_SHIFT	0
1003#define DA9062AA_TRIM_CLDR_MASK		0xff
1004
1005/* DA9062AA_GP_ID_0 = 0x121 */
1006#define DA9062AA_GP_0_SHIFT		0
1007#define DA9062AA_GP_0_MASK		0xff
1008
1009/* DA9062AA_GP_ID_1 = 0x122 */
1010#define DA9062AA_GP_1_SHIFT		0
1011#define DA9062AA_GP_1_MASK		0xff
1012
1013/* DA9062AA_GP_ID_2 = 0x123 */
1014#define DA9062AA_GP_2_SHIFT		0
1015#define DA9062AA_GP_2_MASK		0xff
1016
1017/* DA9062AA_GP_ID_3 = 0x124 */
1018#define DA9062AA_GP_3_SHIFT		0
1019#define DA9062AA_GP_3_MASK		0xff
1020
1021/* DA9062AA_GP_ID_4 = 0x125 */
1022#define DA9062AA_GP_4_SHIFT		0
1023#define DA9062AA_GP_4_MASK		0xff
1024
1025/* DA9062AA_GP_ID_5 = 0x126 */
1026#define DA9062AA_GP_5_SHIFT		0
1027#define DA9062AA_GP_5_MASK		0xff
1028
1029/* DA9062AA_GP_ID_6 = 0x127 */
1030#define DA9062AA_GP_6_SHIFT		0
1031#define DA9062AA_GP_6_MASK		0xff
1032
1033/* DA9062AA_GP_ID_7 = 0x128 */
1034#define DA9062AA_GP_7_SHIFT		0
1035#define DA9062AA_GP_7_MASK		0xff
1036
1037/* DA9062AA_GP_ID_8 = 0x129 */
1038#define DA9062AA_GP_8_SHIFT		0
1039#define DA9062AA_GP_8_MASK		0xff
1040
1041/* DA9062AA_GP_ID_9 = 0x12A */
1042#define DA9062AA_GP_9_SHIFT		0
1043#define DA9062AA_GP_9_MASK		0xff
1044
1045/* DA9062AA_GP_ID_10 = 0x12B */
1046#define DA9062AA_GP_10_SHIFT		0
1047#define DA9062AA_GP_10_MASK		0xff
1048
1049/* DA9062AA_GP_ID_11 = 0x12C */
1050#define DA9062AA_GP_11_SHIFT		0
1051#define DA9062AA_GP_11_MASK		0xff
1052
1053/* DA9062AA_GP_ID_12 = 0x12D */
1054#define DA9062AA_GP_12_SHIFT		0
1055#define DA9062AA_GP_12_MASK		0xff
1056
1057/* DA9062AA_GP_ID_13 = 0x12E */
1058#define DA9062AA_GP_13_SHIFT		0
1059#define DA9062AA_GP_13_MASK		0xff
1060
1061/* DA9062AA_GP_ID_14 = 0x12F */
1062#define DA9062AA_GP_14_SHIFT		0
1063#define DA9062AA_GP_14_MASK		0xff
1064
1065/* DA9062AA_GP_ID_15 = 0x130 */
1066#define DA9062AA_GP_15_SHIFT		0
1067#define DA9062AA_GP_15_MASK		0xff
1068
1069/* DA9062AA_GP_ID_16 = 0x131 */
1070#define DA9062AA_GP_16_SHIFT		0
1071#define DA9062AA_GP_16_MASK		0xff
1072
1073/* DA9062AA_GP_ID_17 = 0x132 */
1074#define DA9062AA_GP_17_SHIFT		0
1075#define DA9062AA_GP_17_MASK		0xff
1076
1077/* DA9062AA_GP_ID_18 = 0x133 */
1078#define DA9062AA_GP_18_SHIFT		0
1079#define DA9062AA_GP_18_MASK		0xff
1080
1081/* DA9062AA_GP_ID_19 = 0x134 */
1082#define DA9062AA_GP_19_SHIFT		0
1083#define DA9062AA_GP_19_MASK		0xff
1084
1085/* DA9062AA_DEVICE_ID = 0x181 */
1086#define DA9062AA_DEV_ID_SHIFT		0
1087#define DA9062AA_DEV_ID_MASK		0xff
1088
1089/* DA9062AA_VARIANT_ID = 0x182 */
1090#define DA9062AA_VRC_SHIFT		0
1091#define DA9062AA_VRC_MASK		0x0f
1092#define DA9062AA_MRC_SHIFT		4
1093#define DA9062AA_MRC_MASK		(0x0f << 4)
1094
1095/* DA9062AA_CUSTOMER_ID = 0x183 */
1096#define DA9062AA_CUST_ID_SHIFT		0
1097#define DA9062AA_CUST_ID_MASK		0xff
1098
1099/* DA9062AA_CONFIG_ID = 0x184 */
1100#define DA9062AA_CONFIG_REV_SHIFT	0
1101#define DA9062AA_CONFIG_REV_MASK	0xff
1102
1103#endif /* __DA9062_H__ */
~/ Read-only file preview.