0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __DA9211_REGISTERS_H__
0009 #define __DA9211_REGISTERS_H__
0010
0011
0012 #define DA9211_REG_PAGE_CON 0x00
0013
0014
0015 #define DA9211_REG_STATUS_A 0x50
0016 #define DA9211_REG_STATUS_B 0x51
0017 #define DA9211_REG_EVENT_A 0x52
0018 #define DA9211_REG_EVENT_B 0x53
0019 #define DA9211_REG_MASK_A 0x54
0020 #define DA9211_REG_MASK_B 0x55
0021 #define DA9211_REG_CONTROL_A 0x56
0022
0023
0024 #define DA9211_REG_GPIO_0_1 0x58
0025 #define DA9211_REG_GPIO_2_3 0x59
0026 #define DA9211_REG_GPIO_4 0x5A
0027
0028
0029 #define DA9211_REG_BUCKA_CONT 0x5D
0030 #define DA9211_REG_BUCKB_CONT 0x5E
0031 #define DA9211_REG_BUCK_ILIM 0xD0
0032 #define DA9211_REG_BUCKA_CONF 0xD1
0033 #define DA9211_REG_BUCKB_CONF 0xD2
0034 #define DA9211_REG_BUCK_CONF 0xD3
0035 #define DA9211_REG_VBACKA_MAX 0xD5
0036 #define DA9211_REG_VBACKB_MAX 0xD6
0037 #define DA9211_REG_VBUCKA_A 0xD7
0038 #define DA9211_REG_VBUCKA_B 0xD8
0039 #define DA9211_REG_VBUCKB_A 0xD9
0040 #define DA9211_REG_VBUCKB_B 0xDA
0041
0042
0043 #define DA9211_REG_INTERFACE 0x105
0044
0045
0046 #define DA9211_REG_CONFIG_E 0x147
0047
0048
0049 #define DA9211_REG_DEVICE_ID 0x201
0050
0051
0052
0053
0054
0055 #define DA9211_REG_PAGE_SHIFT 1
0056 #define DA9211_REG_PAGE_MASK 0x06
0057
0058 #define DA9211_REG_PAGE0 0
0059
0060 #define DA9211_REG_PAGE2 2
0061 #define DA9211_PAGE_WRITE_MODE 0x00
0062 #define DA9211_REPEAT_WRITE_MODE 0x40
0063 #define DA9211_PAGE_REVERT 0x80
0064
0065
0066 #define DA9211_GPI0 0x01
0067 #define DA9211_GPI1 0x02
0068 #define DA9211_GPI2 0x04
0069 #define DA9211_GPI3 0x08
0070 #define DA9211_GPI4 0x10
0071
0072
0073 #define DA9211_E_GPI0 0x01
0074 #define DA9211_E_GPI1 0x02
0075 #define DA9211_E_GPI2 0x04
0076 #define DA9211_E_GPI3 0x08
0077 #define DA9211_E_GPI4 0x10
0078 #define DA9211_E_UVLO_IO 0x40
0079
0080
0081 #define DA9211_E_PWRGOOD_A 0x01
0082 #define DA9211_E_PWRGOOD_B 0x02
0083 #define DA9211_E_TEMP_WARN 0x04
0084 #define DA9211_E_TEMP_CRIT 0x08
0085 #define DA9211_E_OV_CURR_A 0x10
0086 #define DA9211_E_OV_CURR_B 0x20
0087
0088
0089 #define DA9211_M_GPI0 0x01
0090 #define DA9211_M_GPI1 0x02
0091 #define DA9211_M_GPI2 0x04
0092 #define DA9211_M_GPI3 0x08
0093 #define DA9211_M_GPI4 0x10
0094 #define DA9211_M_UVLO_IO 0x40
0095
0096
0097 #define DA9211_M_PWRGOOD_A 0x01
0098 #define DA9211_M_PWRGOOD_B 0x02
0099 #define DA9211_M_TEMP_WARN 0x04
0100 #define DA9211_M_TEMP_CRIT 0x08
0101 #define DA9211_M_OV_CURR_A 0x10
0102 #define DA9211_M_OV_CURR_B 0x20
0103
0104
0105 #define DA9211_DEBOUNCING_SHIFT 0
0106 #define DA9211_DEBOUNCING_MASK 0x07
0107 #define DA9211_SLEW_RATE_SHIFT 3
0108 #define DA9211_SLEW_RATE_A_MASK 0x18
0109 #define DA9211_SLEW_RATE_B_SHIFT 5
0110 #define DA9211_SLEW_RATE_B_MASK 0x60
0111 #define DA9211_V_LOCK 0x80
0112
0113
0114 #define DA9211_GPIO0_PIN_SHIFT 0
0115 #define DA9211_GPIO0_PIN_MASK 0x03
0116 #define DA9211_GPIO0_PIN_GPI 0x00
0117 #define DA9211_GPIO0_PIN_GPO_OD 0x02
0118 #define DA9211_GPIO0_PIN_GPO 0x03
0119 #define DA9211_GPIO0_TYPE 0x04
0120 #define DA9211_GPIO0_TYPE_GPI 0x00
0121 #define DA9211_GPIO0_TYPE_GPO 0x04
0122 #define DA9211_GPIO0_MODE 0x08
0123 #define DA9211_GPIO1_PIN_SHIFT 4
0124 #define DA9211_GPIO1_PIN_MASK 0x30
0125 #define DA9211_GPIO1_PIN_GPI 0x00
0126 #define DA9211_GPIO1_PIN_VERROR 0x10
0127 #define DA9211_GPIO1_PIN_GPO_OD 0x20
0128 #define DA9211_GPIO1_PIN_GPO 0x30
0129 #define DA9211_GPIO1_TYPE_SHIFT 0x40
0130 #define DA9211_GPIO1_TYPE_GPI 0x00
0131 #define DA9211_GPIO1_TYPE_GPO 0x40
0132 #define DA9211_GPIO1_MODE 0x80
0133
0134
0135 #define DA9211_GPIO2_PIN_SHIFT 0
0136 #define DA9211_GPIO2_PIN_MASK 0x03
0137 #define DA9211_GPIO2_PIN_GPI 0x00
0138 #define DA9211_GPIO5_PIN_BUCK_CLK 0x10
0139 #define DA9211_GPIO2_PIN_GPO_OD 0x02
0140 #define DA9211_GPIO2_PIN_GPO 0x03
0141 #define DA9211_GPIO2_TYPE 0x04
0142 #define DA9211_GPIO2_TYPE_GPI 0x00
0143 #define DA9211_GPIO2_TYPE_GPO 0x04
0144 #define DA9211_GPIO2_MODE 0x08
0145 #define DA9211_GPIO3_PIN_SHIFT 4
0146 #define DA9211_GPIO3_PIN_MASK 0x30
0147 #define DA9211_GPIO3_PIN_GPI 0x00
0148 #define DA9211_GPIO3_PIN_IERROR 0x10
0149 #define DA9211_GPIO3_PIN_GPO_OD 0x20
0150 #define DA9211_GPIO3_PIN_GPO 0x30
0151 #define DA9211_GPIO3_TYPE_SHIFT 0x40
0152 #define DA9211_GPIO3_TYPE_GPI 0x00
0153 #define DA9211_GPIO3_TYPE_GPO 0x40
0154 #define DA9211_GPIO3_MODE 0x80
0155
0156
0157 #define DA9211_GPIO4_PIN_SHIFT 0
0158 #define DA9211_GPIO4_PIN_MASK 0x03
0159 #define DA9211_GPIO4_PIN_GPI 0x00
0160 #define DA9211_GPIO4_PIN_GPO_OD 0x02
0161 #define DA9211_GPIO4_PIN_GPO 0x03
0162 #define DA9211_GPIO4_TYPE 0x04
0163 #define DA9211_GPIO4_TYPE_GPI 0x00
0164 #define DA9211_GPIO4_TYPE_GPO 0x04
0165 #define DA9211_GPIO4_MODE 0x08
0166
0167
0168 #define DA9211_BUCKA_EN 0x01
0169 #define DA9211_BUCKA_GPI_SHIFT 1
0170 #define DA9211_BUCKA_GPI_MASK 0x06
0171 #define DA9211_BUCKA_GPI_OFF 0x00
0172 #define DA9211_BUCKA_GPI_GPIO0 0x02
0173 #define DA9211_BUCKA_GPI_GPIO1 0x04
0174 #define DA9211_BUCKA_GPI_GPIO3 0x06
0175 #define DA9211_BUCKA_PD_DIS 0x08
0176 #define DA9211_VBUCKA_SEL 0x10
0177 #define DA9211_VBUCKA_SEL_A 0x00
0178 #define DA9211_VBUCKA_SEL_B 0x10
0179 #define DA9211_VBUCKA_GPI_SHIFT 5
0180 #define DA9211_VBUCKA_GPI_MASK 0x60
0181 #define DA9211_VBUCKA_GPI_OFF 0x00
0182 #define DA9211_VBUCKA_GPI_GPIO1 0x20
0183 #define DA9211_VBUCKA_GPI_GPIO2 0x40
0184 #define DA9211_VBUCKA_GPI_GPIO4 0x60
0185
0186
0187 #define DA9211_BUCKB_EN 0x01
0188 #define DA9211_BUCKB_GPI_SHIFT 1
0189 #define DA9211_BUCKB_GPI_MASK 0x06
0190 #define DA9211_BUCKB_GPI_OFF 0x00
0191 #define DA9211_BUCKB_GPI_GPIO0 0x02
0192 #define DA9211_BUCKB_GPI_GPIO1 0x04
0193 #define DA9211_BUCKB_GPI_GPIO3 0x06
0194 #define DA9211_BUCKB_PD_DIS 0x08
0195 #define DA9211_VBUCKB_SEL 0x10
0196 #define DA9211_VBUCKB_SEL_A 0x00
0197 #define DA9211_VBUCKB_SEL_B 0x10
0198 #define DA9211_VBUCKB_GPI_SHIFT 5
0199 #define DA9211_VBUCKB_GPI_MASK 0x60
0200 #define DA9211_VBUCKB_GPI_OFF 0x00
0201 #define DA9211_VBUCKB_GPI_GPIO1 0x20
0202 #define DA9211_VBUCKB_GPI_GPIO2 0x40
0203 #define DA9211_VBUCKB_GPI_GPIO4 0x60
0204
0205
0206 #define DA9211_BUCKA_ILIM_SHIFT 0
0207 #define DA9211_BUCKA_ILIM_MASK 0x0F
0208 #define DA9211_BUCKB_ILIM_SHIFT 4
0209 #define DA9211_BUCKB_ILIM_MASK 0xF0
0210
0211
0212 #define DA9211_BUCKA_MODE_SHIFT 0
0213 #define DA9211_BUCKA_MODE_MASK 0x03
0214 #define DA9211_BUCKA_MODE_MANUAL 0x00
0215 #define DA9211_BUCKA_MODE_SLEEP 0x01
0216 #define DA9211_BUCKA_MODE_SYNC 0x02
0217 #define DA9211_BUCKA_MODE_AUTO 0x03
0218 #define DA9211_BUCKA_UP_CTRL_SHIFT 2
0219 #define DA9211_BUCKA_UP_CTRL_MASK 0x1C
0220 #define DA9211_BUCKA_DOWN_CTRL_SHIFT 5
0221 #define DA9211_BUCKA_DOWN_CTRL_MASK 0xE0
0222
0223
0224 #define DA9211_BUCKB_MODE_SHIFT 0
0225 #define DA9211_BUCKB_MODE_MASK 0x03
0226 #define DA9211_BUCKB_MODE_MANUAL 0x00
0227 #define DA9211_BUCKB_MODE_SLEEP 0x01
0228 #define DA9211_BUCKB_MODE_SYNC 0x02
0229 #define DA9211_BUCKB_MODE_AUTO 0x03
0230 #define DA9211_BUCKB_UP_CTRL_SHIFT 2
0231 #define DA9211_BUCKB_UP_CTRL_MASK 0x1C
0232 #define DA9211_BUCKB_DOWN_CTRL_SHIFT 5
0233 #define DA9211_BUCKB_DOWN_CTRL_MASK 0xE0
0234
0235
0236 #define DA9211_PHASE_SEL_A_SHIFT 0
0237 #define DA9211_PHASE_SEL_A_MASK 0x03
0238 #define DA9211_PHASE_SEL_B_SHIFT 2
0239 #define DA9211_PHASE_SEL_B_MASK 0x04
0240 #define DA9211_PH_SH_EN_A_SHIFT 3
0241 #define DA9211_PH_SH_EN_A_MASK 0x08
0242 #define DA9211_PH_SH_EN_B_SHIFT 4
0243 #define DA9211_PH_SH_EN_B_MASK 0x10
0244
0245
0246 #define DA9211_VBUCKA_BASE_SHIFT 0
0247 #define DA9211_VBUCKA_BASE_MASK 0x7F
0248
0249
0250 #define DA9211_VBUCKB_BASE_SHIFT 0
0251 #define DA9211_VBUCKB_BASE_MASK 0x7F
0252
0253
0254 #define DA9211_VBUCK_SHIFT 0
0255 #define DA9211_VBUCK_MASK 0x7F
0256 #define DA9211_VBUCK_BIAS 0
0257 #define DA9211_BUCK_SL 0x80
0258
0259
0260 #define DA9211_IF_BASE_ADDR_SHIFT 4
0261 #define DA9211_IF_BASE_ADDR_MASK 0xF0
0262
0263
0264 #define DA9211_SLAVE_SEL 0x40
0265
0266 #endif