coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
pmif_spmi.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
3
#ifndef __SOC_MEDIATEK_PMIF_SPMI_H__
4
#define __SOC_MEDIATEK_PMIF_SPMI_H__
5
6
#include <soc/addressmap.h>
7
#include <soc/pmif.h>
8
9
#define DEFAULT_VALUE_READ_TEST (0x5a)
10
#define DEFAULT_VALUE_WRITE_TEST (0xa5)
11
12
/* indicate which number SW channel start, by project */
13
#define PMIF_SPMI_SW_CHAN BIT(6)
14
#define PMIF_SPMI_INF 0x2F7
15
16
struct
mtk_rgu_regs
{
17
u32
reserved
[36];
18
u32
wdt_swsysrst2
;
19
};
20
check_member
(
mtk_rgu_regs
, wdt_swsysrst2, 0x90);
21
22
struct
mtk_spmi_mst_reg
{
23
u32
op_st_ctrl
;
24
u32
grp_id_en
;
25
u32
op_st_sta
;
26
u32
mst_sampl
;
27
u32
mst_req_en
;
28
u32
rcs_ctrl
;
29
u32
reserved1
[10];
30
u32
rec_ctrl
;
31
u32
rec0
;
32
u32
rec1
;
33
u32
rec2
;
34
u32
rec3
;
35
u32
rec4
;
36
u32
reserved2
[41];
37
u32
mst_dbg
;
38
};
39
40
check_member
(
mtk_spmi_mst_reg
, rec_ctrl, 0x40);
41
check_member
(
mtk_spmi_mst_reg
, mst_dbg, 0xfc);
42
43
#define mtk_rug ((struct mtk_rgu_regs *)RGU_BASE)
44
#define mtk_spmi_mst ((struct mtk_spmi_mst_reg *)SPMI_MST_BASE)
45
46
struct
cali
{
47
unsigned
int
dly
;
48
unsigned
int
pol
;
49
};
50
51
enum
{
52
SPMI_CK_NO_DLY
= 0,
53
SPMI_CK_DLY_1T
,
54
};
55
56
enum
{
57
SPMI_CK_POL_NEG
= 0,
58
SPMI_CK_POL_POS
,
59
};
60
61
enum
spmi_regs
{
62
SPMI_OP_ST_CTRL
,
63
SPMI_GRP_ID_EN
,
64
SPMI_OP_ST_STA
,
65
SPMI_MST_SAMPL
,
66
SPMI_MST_REQ_EN
,
67
SPMI_REC_CTRL
,
68
SPMI_REC0
,
69
SPMI_REC1
,
70
SPMI_REC2
,
71
SPMI_REC3
,
72
SPMI_REC4
,
73
SPMI_MST_DBG
74
};
75
76
/* MT6315 registers */
77
enum
{
78
MT6315_BASE
= 0x0,
79
MT6315_READ_TEST
=
MT6315_BASE
+ 0x9,
80
MT6315_READ_TEST_1
=
MT6315_BASE
+ 0xb,
81
};
82
83
#define MT6315_DEFAULT_VALUE_READ 0x15
84
85
int
pmif_spmi_init
(
struct
pmif
*arb);
86
int
spmi_config_master
(
void
);
87
void
pmif_spmi_iocfg
(
void
);
88
#endif
/* __SOC_MEDIATEK_PMIF_SPMI_H__ */
check_member
check_member(mtk_rgu_regs, wdt_swsysrst2, 0x90)
SPMI_CK_DLY_1T
@ SPMI_CK_DLY_1T
Definition:
pmif_spmi.h:53
SPMI_CK_NO_DLY
@ SPMI_CK_NO_DLY
Definition:
pmif_spmi.h:52
pmif_spmi_init
int pmif_spmi_init(struct pmif *arb)
Definition:
pmif_spmi.c:186
pmif_spmi_iocfg
void pmif_spmi_iocfg(void)
Definition:
pmif_spmi.c:44
spmi_regs
spmi_regs
Definition:
pmif_spmi.h:61
SPMI_MST_SAMPL
@ SPMI_MST_SAMPL
Definition:
pmif_spmi.h:65
SPMI_MST_REQ_EN
@ SPMI_MST_REQ_EN
Definition:
pmif_spmi.h:66
SPMI_OP_ST_STA
@ SPMI_OP_ST_STA
Definition:
pmif_spmi.h:64
SPMI_REC0
@ SPMI_REC0
Definition:
pmif_spmi.h:68
SPMI_REC4
@ SPMI_REC4
Definition:
pmif_spmi.h:72
SPMI_MST_DBG
@ SPMI_MST_DBG
Definition:
pmif_spmi.h:73
SPMI_OP_ST_CTRL
@ SPMI_OP_ST_CTRL
Definition:
pmif_spmi.h:62
SPMI_REC3
@ SPMI_REC3
Definition:
pmif_spmi.h:71
SPMI_REC1
@ SPMI_REC1
Definition:
pmif_spmi.h:69
SPMI_REC2
@ SPMI_REC2
Definition:
pmif_spmi.h:70
SPMI_GRP_ID_EN
@ SPMI_GRP_ID_EN
Definition:
pmif_spmi.h:63
SPMI_REC_CTRL
@ SPMI_REC_CTRL
Definition:
pmif_spmi.h:67
MT6315_READ_TEST_1
@ MT6315_READ_TEST_1
Definition:
pmif_spmi.h:80
MT6315_BASE
@ MT6315_BASE
Definition:
pmif_spmi.h:78
MT6315_READ_TEST
@ MT6315_READ_TEST
Definition:
pmif_spmi.h:79
SPMI_CK_POL_POS
@ SPMI_CK_POL_POS
Definition:
pmif_spmi.h:58
SPMI_CK_POL_NEG
@ SPMI_CK_POL_NEG
Definition:
pmif_spmi.h:57
spmi_config_master
int spmi_config_master(void)
Definition:
pmif_spmi.c:24
u32
uint32_t u32
Definition:
stdint.h:51
cali
Definition:
pmif_spmi.h:46
cali::dly
unsigned int dly
Definition:
pmif_spmi.h:47
cali::pol
unsigned int pol
Definition:
pmif_spmi.h:48
mtk_rgu_regs
Definition:
pmif_spmi.h:16
mtk_rgu_regs::reserved
u32 reserved[36]
Definition:
pmif_spmi.h:17
mtk_rgu_regs::wdt_swsysrst2
u32 wdt_swsysrst2
Definition:
pmif_spmi.h:18
mtk_spmi_mst_reg
Definition:
pmif_spmi.h:22
mtk_spmi_mst_reg::mst_dbg
u32 mst_dbg
Definition:
pmif_spmi.h:37
mtk_spmi_mst_reg::reserved1
u32 reserved1[10]
Definition:
pmif_spmi.h:29
mtk_spmi_mst_reg::rec0
u32 rec0
Definition:
pmif_spmi.h:31
mtk_spmi_mst_reg::rcs_ctrl
u32 rcs_ctrl
Definition:
pmif_spmi.h:28
mtk_spmi_mst_reg::rec2
u32 rec2
Definition:
pmif_spmi.h:33
mtk_spmi_mst_reg::mst_sampl
u32 mst_sampl
Definition:
pmif_spmi.h:26
mtk_spmi_mst_reg::rec_ctrl
u32 rec_ctrl
Definition:
pmif_spmi.h:30
mtk_spmi_mst_reg::op_st_ctrl
u32 op_st_ctrl
Definition:
pmif_spmi.h:23
mtk_spmi_mst_reg::reserved2
u32 reserved2[41]
Definition:
pmif_spmi.h:36
mtk_spmi_mst_reg::op_st_sta
u32 op_st_sta
Definition:
pmif_spmi.h:25
mtk_spmi_mst_reg::rec4
u32 rec4
Definition:
pmif_spmi.h:35
mtk_spmi_mst_reg::mst_req_en
u32 mst_req_en
Definition:
pmif_spmi.h:27
mtk_spmi_mst_reg::rec3
u32 rec3
Definition:
pmif_spmi.h:34
mtk_spmi_mst_reg::grp_id_en
u32 grp_id_en
Definition:
pmif_spmi.h:24
mtk_spmi_mst_reg::rec1
u32 rec1
Definition:
pmif_spmi.h:32
pmif
Definition:
pmif_common.h:25
src
soc
mediatek
common
include
soc
pmif_spmi.h
Generated by
1.9.1