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 /*
4  * This file is created based on MT8186 Functional Specification
5  * Chapter number: 3.7
6  */
7 
8 #ifndef __SOC_MEDIATEK_MT8186_PMIC_WRAP_H__
9 #define __SOC_MEDIATEK_MT8186_PMIC_WRAP_H__
10 
11 #include <soc/addressmap.h>
12 #include <soc/pmic_wrap_common.h>
13 #include <types.h>
14 
292 };
293 
294 check_member(mt8186_pwrap_regs, bwc_options, 0x488);
295 check_member(mt8186_pwrap_regs, wacs3_vldclr, 0xC38);
296 
297 static struct mt8186_pwrap_regs * const mtk_pwrap = (void *)PWRAP_BASE;
298 
299 enum {
300  WACS2 = 1 << 2
301 };
302 
303 /* PMIC registers */
304 enum {
305  PMIC_BASE = 0x0000,
335 };
336 
337 enum {
340 };
341 
342 enum {
343  GPS_MAIN = 0x40,
344  GPS_SUBSYS = 0x80,
345 };
346 
347 enum {
348  SIG_PMIC_0 = 0x1 << 0,
349  INT_STA_PMIC_0 = 0x1 << 2,
350  MD_ADC_DATA0 = 0x1 << 4,
351  MD_ADC_DATA1 = 0x1 << 5,
352  GPS_ADC_DATA0 = 0x1 << 6,
353  GPS_ADC_DATA1 = 0x1 << 7,
354 };
355 
356 enum {
357  MD = 1,
358  MD_DVFS = 2,
359  POWER_HW = 4,
362 };
363 
364 enum {
390 };
391 
392 enum {
394 };
395 
396 enum {
398 };
399 
400 enum {
401  WDT_MONITOR_ALL = 0xFFFF,
402 };
403 
404 enum {
406  STARV_15 = 0x1 << 24,
407  DCXO = 0x1 << 19,
408  MONITOR_ALL_INT = 0xFFFFFFFF,
412 };
413 
414 enum {
415  SPI_CLK = 0x1,
416  SPI_CSN = 0x1 << 1,
417  SPI_MOSI = 0x1 << 2,
418  SPI_MISO = 0x1 << 3,
422 };
423 
424 enum {
425  IO_4_MA = 0x8,
426 };
427 
428 enum {
435 };
436 
437 enum {
439 };
440 #endif /* __SOC_MEDIATEK_MT8186_PMIC_WRAP_H__ */
#define BIT(nr)
Definition: ec_commands.h:45
check_member(mt8173_pwrap_regs, dcm_dbc_prd, 0x148)
@ PMIC_BASE
Definition: pmic_wrap.h:22
@ WACS2
Definition: pmic_wrap.h:13
@ IO_4_MA
Definition: pmic_wrap.h:386
@ 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_USER_EN
Definition: pmic_wrap.h:348
@ ARB_WACS_P2P
Definition: pmic_wrap.h:337
@ ARB_WACS2
Definition: pmic_wrap.h:336
@ 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
@ 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
@ 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
@ WATCHDOG_TIMER_7_5_MS
Definition: pmic_wrap.h:358
static struct mt8186_pwrap_regs *const mtk_pwrap
Definition: pmic_wrap.h:297
@ ARB_MCU_PMINF
Definition: pmic_wrap.h:379
@ ARB_SRCLKEN_RCINF
Definition: pmic_wrap.h:376
@ ARB_DCXO_NFCINF
Definition: pmic_wrap.h:378
@ ARB_MD_ADCINF_0
Definition: pmic_wrap.h:380
@ ARB_MDINF
Definition: pmic_wrap.h:371
@ ARB_C2KINF
Definition: pmic_wrap.h:372
@ ARB_MD_ADCINF_1
Definition: pmic_wrap.h:381
@ ARB_DCXO_CONNINF
Definition: pmic_wrap.h:377
@ ARB_SPMINF_BACKUP
Definition: pmic_wrap.h:375
@ ARB_STAUPD
Definition: pmic_wrap.h:384
@ ARB_MD_DVFSINF
Definition: pmic_wrap.h:373
@ ARB_WACS3
Definition: pmic_wrap.h:368
@ ARB_GPSINF_0
Definition: pmic_wrap.h:382
@ ARB_GPSINF_1
Definition: pmic_wrap.h:383
@ ARB_WACS1
Definition: pmic_wrap.h:366
@ ARB_SPMINF
Definition: pmic_wrap.h:374
@ PWRAP_BASE
Definition: addressmap.h:20
uint32_t u32
Definition: stdint.h:51
u32 starv_counter_11_status
Definition: pmic_wrap.h:200
u32 md_auxadc_rdata_latest_addr
Definition: pmic_wrap.h:148
u32 monitor_target_adr_0
Definition: pmic_wrap.h:218
u32 starv_counter_15_status
Definition: pmic_wrap.h:204
u32 ext_gps_auxadc_rdata_addr
Definition: pmic_wrap.h:144
u32 starv_counter_14_status
Definition: pmic_wrap.h:203
u32 monitor_target_channel_4
Definition: pmic_wrap.h:213
u32 starv_counter_7_status
Definition: pmic_wrap.h:196
u32 monitor_target_adr_1
Definition: pmic_wrap.h:219
u32 starv_counter_9_status
Definition: pmic_wrap.h:198
u32 monitor_target_wdata_0
Definition: pmic_wrap.h:226
u32 starv_counter_5_status
Definition: pmic_wrap.h:194
u32 spm_sleep_gating_ctrl
Definition: pmic_wrap.h:157
u32 int_gps_auxadc_cmd_addr
Definition: pmic_wrap.h:141
u32 monitor_target_channel_0
Definition: pmic_wrap.h:209
u32 monitor_target_wdata_2
Definition: pmic_wrap.h:228
u32 monitor_target_adr_6
Definition: pmic_wrap.h:224
u32 monitor_target_wdata_7
Definition: pmic_wrap.h:233
u32 monitor_target_channel_7
Definition: pmic_wrap.h:216
u32 starv_counter_12_status
Definition: pmic_wrap.h:201
u32 monitor_target_adr_4
Definition: pmic_wrap.h:222
u32 monitor_target_channel_6
Definition: pmic_wrap.h:215
u32 md_auxadc_rdata_wp_addr
Definition: pmic_wrap.h:149
u32 monitor_target_channel_5
Definition: pmic_wrap.h:214
u32 starv_counter_16_status
Definition: pmic_wrap.h:205
u32 monitor_target_wdata_3
Definition: pmic_wrap.h:229
u32 starv_counter_1_status
Definition: pmic_wrap.h:190
u32 starv_counter_8_status
Definition: pmic_wrap.h:197
u32 int_gps_auxadc_rdata_addr
Definition: pmic_wrap.h:143
u32 md_auxadc_rdata[32]
Definition: pmic_wrap.h:150
u32 starv_counter_4_status
Definition: pmic_wrap.h:193
u32 busy_sta_latched_wdt
Definition: pmic_wrap.h:160
u32 si_sample_ctrl_ulposc
Definition: pmic_wrap.h:23
u32 monitor_target_wdata_5
Definition: pmic_wrap.h:231
u32 sleep_protection_ctrl
Definition: pmic_wrap.h:156
u32 starv_counter_13_status
Definition: pmic_wrap.h:202
u32 starv_counter_2_status
Definition: pmic_wrap.h:191
u32 scp_sleep_gating_ctrl
Definition: pmic_wrap.h:158
u32 monitor_target_write
Definition: pmic_wrap.h:217
u32 monitor_target_channel_3
Definition: pmic_wrap.h:212
u32 starv_counter_0_status
Definition: pmic_wrap.h:189
u32 starv_counter_10_status
Definition: pmic_wrap.h:199
u32 starv_counter_6_status
Definition: pmic_wrap.h:195
u32 monitor_target_adr_3
Definition: pmic_wrap.h:221
u32 monitor_target_adr_5
Definition: pmic_wrap.h:223
u32 monitor_target_adr_2
Definition: pmic_wrap.h:220
u32 monitor_target_channel_1
Definition: pmic_wrap.h:210
u32 monitor_target_wdata_6
Definition: pmic_wrap.h:232
u32 monitor_target_wdata_4
Definition: pmic_wrap.h:230
u32 starv_counter_3_status
Definition: pmic_wrap.h:192
u32 monitor_target_wdata_1
Definition: pmic_wrap.h:227
u32 reserved1[477]
Definition: pmic_wrap.h:276
u32 monitor_target_adr_7
Definition: pmic_wrap.h:225
u32 monitor_target_channel_2
Definition: pmic_wrap.h:211