soc/mediatek: Add support for regulator VM18

To provide power to MIPI panel BOE_TV110C9M_LL0, add support for
regulator VM18.

BUG=b:244208960
TEST=test firmware display pass for BOE_TV110C9M_LL0 on Geralt.

Change-Id: Ib8c3b2df1157b23b37492b1e9b1716903ea67799
Signed-off-by: Sen Chu <sen.chu@mediatek.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/72747
Reviewed-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
This commit is contained in:
Sen Chu 2023-01-10 22:45:11 +08:00 committed by Felix Held
parent bf5f821431
commit 012701970f
3 changed files with 9 additions and 0 deletions

View File

@ -33,6 +33,7 @@ enum {
PMIC_VSIM1_CON0 = 0x1cd0,
PMIC_VSRAM_PROC1_ELR = 0x1b44,
PMIC_VSRAM_PROC2_ELR = 0x1b46,
PMIC_VM18_CON0 = 0x1d88,
PMIC_VSRAM_PROC1_VOSEL1 = 0x1e90,
PMIC_VSRAM_PROC2_VOSEL1 = 0x1eb0,
PMIC_VSIM1_ANA_CON0 = 0x1fa2,
@ -60,6 +61,7 @@ enum {
MT6359P_CORE,
MT6359P_PA,
MT6359P_SIM1,
MT6359P_VM18,
MT6359P_MAX,
};
@ -84,6 +86,7 @@ void mt6359p_set_vsim1_voltage(u32 vsim1_uv);
u32 mt6359p_get_vsim1_voltage(void);
void mt6359p_enable_vpa(bool enable);
void mt6359p_enable_vsim1(bool enable);
void mt6359p_enable_vm18(bool enable);
void mt6359p_write_field(u32 reg, u32 val, u32 mask, u32 shift);
void pmic_init_setting(void);
void pmic_lp_setting(void);

View File

@ -22,6 +22,7 @@ enum mtk_regulator {
MTK_REGULATOR_VSRAM_PROC12,
MTK_REGULATOR_VRF12,
MTK_REGULATOR_VCN33,
MTK_REGULATOR_VDD18,
MTK_REGULATOR_NUM,
};

View File

@ -324,6 +324,11 @@ void mt6359p_enable_vsim1(bool enable)
mt6359p_write_field(PMIC_VSIM1_CON0, enable, 0x1, 0);
}
void mt6359p_enable_vm18(bool enable)
{
mt6359p_write_field(PMIC_VM18_CON0, enable, 0x1, 0);
}
static void init_pmif_arb(void)
{
if (!pmif_arb) {