coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
pmic_wrap.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef __SOC_MEDIATEK_MT8183_PMIC_WRAP_H__
4 #define __SOC_MEDIATEK_MT8183_PMIC_WRAP_H__
5 
6 #include <soc/addressmap.h>
7 #include <soc/pmic_wrap_common.h>
8 #include <types.h>
9 
240 };
241 
242 check_member(mt8183_pwrap_regs, bwc_options, 0x3CC);
243 check_member(mt8183_pwrap_regs, wacs3_vldclr, 0xC38);
244 
245 static struct mt8183_pwrap_regs * const mtk_pwrap = (void *)PWRAP_BASE;
246 
247 enum {
248  WACS2 = 1 << 2
249 };
250 
251 /* PMIC registers */
252 enum {
253  PMIC_BASE = 0x0000,
283 };
284 
285 enum {
288 };
289 
290 enum {
291  GPS_MAIN = 0x40,
292  GPS_SUBSYS = 0x80
293 };
294 
295 enum {
296  ULPOSC_CLK = 0x1 << 23
297 };
298 
299 enum {
300  ULPOSC_OFF = 0x1 << 31,
301  ULPOSC_INV = 0x1 << 28,
302  ULPOSC_SEL_1 = 0x1 << 24,
303  ULPOSC_SEL_2 = 0x1 << 25,
304 };
305 
306 enum {
307  TIMER_CG = 0x1,
308  AP_CG = 0x1 << 1,
309  MD_CG = 0x1 << 2,
310  CONN_CG = 0x1 << 3,
311 };
312 
313 enum {
315 };
316 
317 enum {
318  SIG_PMIC_0 = 0x1 << 0,
319  INT_STA_PMIC_0 = 0x1 << 2,
320  MD_ADC_DATA0 = 0x1 << 4,
321  MD_ADC_DATA1 = 0x1 << 5,
322  GPS_ADC_DATA0 = 0x1 << 6,
323  GPS_ADC_DATA1 = 0x1 << 7,
324 };
325 
326 enum {
327  MD = 1,
328  MD_DVFS = 2,
329  POWER_HW = 4,
332 };
333 
334 enum {
335  ARB_WACS0 = 0x1,
336  ARB_WACS2 = 0x1 << 2,
337  ARB_WACS_P2P = 0x1 << 4,
338  ARB_WACS_MD32 = 0x1 << 5,
339  ARB_MD = 0x1 << 6,
340  ARB_WACS_POWER_HW = 0x1 << 9,
341  ARB_DCXO_CONN = 0x1 << 11,
342  ARB_DCXO_NFC = 0x1 << 12,
343  ARB_MD_ADC0 = 0x1 << 13,
344  ARB_MD_ADC1 = 0x1 << 14,
345  ARB_GPS_0 = 0x1 << 15,
346  ARB_GPS_1 = 0x1 << 16,
347  STAUPD_HARB = 0x1 << 17,
351 };
352 
353 enum {
355 };
356 
357 enum {
359 };
360 
361 enum {
362  WDT_MONITOR_ALL = 0xFFFF,
363 };
364 
365 enum {
367  STARV_15 = 0x1 << 24,
368  DCXO = 0x1 << 19,
369  MONITOR_ALL_INT = 0xFFFFFFFF,
373 };
374 
375 enum {
376  SPI_CLK = 0x1,
377  SPI_CSN = 0x1 << 1,
378  SPI_MOSI = 0x1 << 2,
379  SPI_MISO = 0x1 << 3,
383 };
384 
385 enum {
386  IO_4_MA = 0x8,
387 };
388 
389 enum {
396 };
397 
398 enum {
400 };
401 #endif /* __SOC_MEDIATEK_MT8183_PMIC_WRAP_H__ */
check_member(mt8173_pwrap_regs, dcm_dbc_prd, 0x148)
@ PMIC_BASE
Definition: pmic_wrap.h:22
@ WACS2
Definition: pmic_wrap.h:13
@ ULPOSC_SEL_2
Definition: pmic_wrap.h:303
@ ULPOSC_INV
Definition: pmic_wrap.h:301
@ ULPOSC_OFF
Definition: pmic_wrap.h:300
@ ULPOSC_SEL_1
Definition: pmic_wrap.h:302
@ IO_4_MA
Definition: pmic_wrap.h:386
static struct mt8183_pwrap_regs *const mtk_pwrap
Definition: pmic_wrap.h:245
@ POWER_HW_BACKUP
Definition: pmic_wrap.h:330
@ MD_DVFS
Definition: pmic_wrap.h:328
@ ARB_PRIORITY
Definition: pmic_wrap.h:331
@ MD
Definition: pmic_wrap.h:327
@ POWER_HW
Definition: pmic_wrap.h:329
@ ARB_WACS_MD32
Definition: pmic_wrap.h:338
@ ARB_MD
Definition: pmic_wrap.h:339
@ ARB_USER_EN
Definition: pmic_wrap.h:348
@ ARB_WACS_POWER_HW
Definition: pmic_wrap.h:340
@ STAUPD_HARB
Definition: pmic_wrap.h:347
@ ARB_WACS_P2P
Definition: pmic_wrap.h:337
@ ARB_MD_ADC0
Definition: pmic_wrap.h:343
@ ARB_DCXO_CONN
Definition: pmic_wrap.h:341
@ ARB_GPS_1
Definition: pmic_wrap.h:346
@ ARB_WACS2
Definition: pmic_wrap.h:336
@ ARB_MD_ADC1
Definition: pmic_wrap.h:344
@ ARB_GPS_0
Definition: pmic_wrap.h:345
@ ARB_DCXO_NFC
Definition: pmic_wrap.h:342
@ ARB_WACS0
Definition: pmic_wrap.h:335
@ E_CLK_EDGE
Definition: pmic_wrap.h:286
@ E_CLK_LAST_SETTING
Definition: pmic_wrap.h:287
@ DUMMY_READ_CYCLES
Definition: pmic_wrap.h:399
@ GPS_MAIN
Definition: pmic_wrap.h:291
@ GPS_SUBSYS
Definition: pmic_wrap.h:292
@ INT0_MONITOR
Definition: pmic_wrap.h:370
@ STARV_15
Definition: pmic_wrap.h:367
@ MONITOR_LATCH_MATCHED_TRANS
Definition: pmic_wrap.h:366
@ MONITOR_ALL_INT
Definition: pmic_wrap.h:369
@ DCXO
Definition: pmic_wrap.h:368
@ INT1_MONITOR
Definition: pmic_wrap.h:371
@ SPI_MISO_SHIFT
Definition: pmic_wrap.h:393
@ SPI_DRIVING
Definition: pmic_wrap.h:394
@ SPI_MOSI_SHIFT
Definition: pmic_wrap.h:392
@ SPI_CLK_SHIFT
Definition: pmic_wrap.h:390
@ SPI_CSN_SHIFT
Definition: pmic_wrap.h:391
@ ULPOSC_CLK
Definition: pmic_wrap.h:296
@ MD_ADC_DATA0
Definition: pmic_wrap.h:320
@ MD_ADC_DATA1
Definition: pmic_wrap.h:321
@ GPS_ADC_DATA0
Definition: pmic_wrap.h:322
@ INT_STA_PMIC_0
Definition: pmic_wrap.h:319
@ SIG_PMIC_0
Definition: pmic_wrap.h:318
@ GPS_ADC_DATA1
Definition: pmic_wrap.h:323
@ PMIC_AUXADC_ADC35
Definition: pmic_wrap.h:280
@ PMIC_RG_SPI_CON8
Definition: pmic_wrap.h:273
@ PMIC_DEW_CRC_EN
Definition: pmic_wrap.h:263
@ PMIC_DEW_READ_TEST
Definition: pmic_wrap.h:261
@ PMIC_DEW_DIO_EN
Definition: pmic_wrap.h:260
@ PMIC_RG_SPI_CON5
Definition: pmic_wrap.h:270
@ PMIC_DEW_WRITE_TEST
Definition: pmic_wrap.h:262
@ PMIC_RG_SPI_CON13
Definition: pmic_wrap.h:274
@ PMIC_RG_SPI_CON6
Definition: pmic_wrap.h:271
@ PMIC_AUXADC_ADC17
Definition: pmic_wrap.h:277
@ PMIC_DEW_RDDMY_NO
Definition: pmic_wrap.h:265
@ PMIC_RG_SPI_CON3
Definition: pmic_wrap.h:268
@ PMIC_AUXADC_RQST0
Definition: pmic_wrap.h:281
@ PMIC_CPU_INT_STA
Definition: pmic_wrap.h:266
@ PMIC_FILTER_CON0
Definition: pmic_wrap.h:256
@ PMIC_AUXADC_ADC32
Definition: pmic_wrap.h:279
@ PMIC_PPCCTL0
Definition: pmic_wrap.h:276
@ PMIC_GPIO_PULLEN0_CLR
Definition: pmic_wrap.h:257
@ PMIC_AUXADC_RQST1
Definition: pmic_wrap.h:282
@ PMIC_SMT_CON1
Definition: pmic_wrap.h:254
@ PMIC_RG_SPI_CON4
Definition: pmic_wrap.h:269
@ PMIC_DEW_CRC_VAL
Definition: pmic_wrap.h:264
@ PMIC_AUXADC_ADC31
Definition: pmic_wrap.h:278
@ PMIC_RG_SPI_CON7
Definition: pmic_wrap.h:272
@ PMIC_RG_SPI_CON2
Definition: pmic_wrap.h:267
@ PMIC_DRV_CON1
Definition: pmic_wrap.h:255
@ PMIC_SPISLV_KEY
Definition: pmic_wrap.h:275
@ PMIC_RG_SPI_RECORD0
Definition: pmic_wrap.h:259
@ PMIC_RG_SPI_CON0
Definition: pmic_wrap.h:258
@ WDT_MONITOR_ALL
Definition: pmic_wrap.h:362
@ MODEM_TEMP_SHARE_CG
Definition: pmic_wrap.h:314
@ SPI_SMT
Definition: pmic_wrap.h:381
@ SPI_MISO
Definition: pmic_wrap.h:379
@ SPI_FILTER
Definition: pmic_wrap.h:380
@ SPI_PULL_DISABLE
Definition: pmic_wrap.h:382
@ SPI_CLK
Definition: pmic_wrap.h:376
@ SPI_CSN
Definition: pmic_wrap.h:377
@ SPI_MOSI
Definition: pmic_wrap.h:378
@ STA_PD_98_5_US
Definition: pmic_wrap.h:354
@ TIMER_CG
Definition: pmic_wrap.h:307
@ CONN_CG
Definition: pmic_wrap.h:310
@ MD_CG
Definition: pmic_wrap.h:309
@ AP_CG
Definition: pmic_wrap.h:308
@ WATCHDOG_TIMER_7_5_MS
Definition: pmic_wrap.h:358
@ PWRAP_BASE
Definition: addressmap.h:20
uint32_t u32
Definition: stdint.h:51
u32 starv_counter_15_status
Definition: pmic_wrap.h:189
u32 starv_counter_5_status
Definition: pmic_wrap.h:179
u32 starv_counter_10_status
Definition: pmic_wrap.h:184
u32 starv_counter_12_status
Definition: pmic_wrap.h:186
u32 starv_counter_4_status
Definition: pmic_wrap.h:178
u32 starv_counter_13_status
Definition: pmic_wrap.h:187
u32 starv_counter_9_status
Definition: pmic_wrap.h:183
u32 starv_counter_14_status
Definition: pmic_wrap.h:188
u32 starv_counter_8_status
Definition: pmic_wrap.h:182
u32 md_auxadc_rdata_wp_addr
Definition: pmic_wrap.h:138
u32 starv_counter_7_status
Definition: pmic_wrap.h:181
u32 int_gps_auxadc_cmd_addr
Definition: pmic_wrap.h:130
u32 md_auxadc_rdata_latest_addr
Definition: pmic_wrap.h:137
u32 ext_gps_auxadc_rdata_addr
Definition: pmic_wrap.h:133
u32 starv_counter_1_status
Definition: pmic_wrap.h:175
u32 md_auxadc_rdata[32]
Definition: pmic_wrap.h:139
u32 starv_counter_2_status
Definition: pmic_wrap.h:176
u32 reserved1[524]
Definition: pmic_wrap.h:224
u32 si_sample_ctrl_ulposc
Definition: pmic_wrap.h:15
u32 starv_counter_3_status
Definition: pmic_wrap.h:177
u32 starv_counter_11_status
Definition: pmic_wrap.h:185
u32 starv_counter_0_status
Definition: pmic_wrap.h:174
u32 scp_sleep_gating_ctrl
Definition: pmic_wrap.h:146
u32 int_gps_auxadc_rdata_addr
Definition: pmic_wrap.h:132
u32 starv_counter_16_status
Definition: pmic_wrap.h:190
u32 spm_sleep_gating_ctrl
Definition: pmic_wrap.h:145
u32 starv_counter_6_status
Definition: pmic_wrap.h:180