mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-22 04:24:19 +00:00
feat(mt8188): add pmic and pwrap support
Add PWRAP and PMIC driver to support power-off. TEST=build pass. BUG=b:233720142 Signed-off-by: Hui Liu <hui.liu@mediatek.corp-partner.google.com> Change-Id: Id9951134925f6cb5f8d304a7b8e7901837809bd9
This commit is contained in:
parent
80fa75842d
commit
e9310c34b0
6 changed files with 73 additions and 0 deletions
plat/mediatek
drivers
include/mt8188
mt8188
15
plat/mediatek/drivers/pmic/rules.mk
Normal file
15
plat/mediatek/drivers/pmic/rules.mk
Normal file
|
@ -0,0 +1,15 @@
|
|||
#
|
||||
# Copyright (c) 2022, MediaTek Inc. All rights reserved.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
LOCAL_DIR := $(call GET_LOCAL_DIR)
|
||||
|
||||
MODULE := pmic
|
||||
|
||||
LOCAL_SRCS-y += ${LOCAL_DIR}/pmic.c
|
||||
|
||||
PLAT_INCLUDES += -I${LOCAL_DIR}/
|
||||
|
||||
$(eval $(call MAKE_MODULE,$(MODULE),$(LOCAL_SRCS-y),$(MTK_BL)))
|
30
plat/mediatek/drivers/pmic_wrap/mt8188/pmic_wrap_init.h
Normal file
30
plat/mediatek/drivers/pmic_wrap/mt8188/pmic_wrap_init.h
Normal file
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* Copyright (c) 2022, MediaTek Inc. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
||||
#ifndef PMIC_WRAP_INIT_H
|
||||
#define PMIC_WRAP_INIT_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include "platform_def.h"
|
||||
#include <pmic_wrap_init_common.h>
|
||||
|
||||
static struct mt8188_pmic_wrap_regs *const mtk_pwrap = (void *)PMIC_WRAP_BASE;
|
||||
|
||||
/* PMIC_WRAP registers */
|
||||
struct mt8188_pmic_wrap_regs {
|
||||
uint32_t init_done;
|
||||
uint32_t reserved[543];
|
||||
uint32_t wacs2_cmd;
|
||||
uint32_t wacs2_wdata;
|
||||
uint32_t reserved1[3];
|
||||
uint32_t wacs2_rdata;
|
||||
uint32_t reserved2[3];
|
||||
uint32_t wacs2_vldclr;
|
||||
uint32_t wacs2_sta;
|
||||
};
|
||||
|
||||
#endif /* PMIC_WRAP_INIT_H */
|
20
plat/mediatek/drivers/pmic_wrap/rules.mk
Normal file
20
plat/mediatek/drivers/pmic_wrap/rules.mk
Normal file
|
@ -0,0 +1,20 @@
|
|||
#
|
||||
# Copyright (c) 2022, MediaTek Inc. All rights reserved.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
LOCAL_DIR := $(call GET_LOCAL_DIR)
|
||||
|
||||
MODULE := pmic_wrap
|
||||
|
||||
ifeq (${USE_PMIC_WRAP_INIT_V2}, 1)
|
||||
LOCAL_SRCS-y += ${LOCAL_DIR}/pmic_wrap_init_v2.c
|
||||
else
|
||||
LOCAL_SRCS-y += ${LOCAL_DIR}/pmic_wrap_init.c
|
||||
endif
|
||||
|
||||
PLAT_INCLUDES += -I${LOCAL_DIR}/
|
||||
PLAT_INCLUDES += -I${LOCAL_DIR}/${MTK_SOC}
|
||||
|
||||
$(eval $(call MAKE_MODULE,$(MODULE),$(LOCAL_SRCS-y),$(MTK_BL)))
|
|
@ -25,6 +25,11 @@
|
|||
#define UART0_BASE (IO_PHYS + 0x01002000)
|
||||
#define UART_BAUDRATE (115200)
|
||||
|
||||
/*******************************************************************************
|
||||
* PMIC related constants
|
||||
******************************************************************************/
|
||||
#define PMIC_WRAP_BASE (IO_PHYS + 0x00024000)
|
||||
|
||||
/*******************************************************************************
|
||||
* Infra IOMMU related constants
|
||||
******************************************************************************/
|
||||
|
|
|
@ -16,6 +16,7 @@ GICV3_SUPPORT_GIC600 := 1
|
|||
# MTK options
|
||||
#
|
||||
PLAT_EXTRA_RODATA_INCLUDES := 1
|
||||
USE_PMIC_WRAP_INIT_V2 := 1
|
||||
|
||||
# Configs for A78 and A55
|
||||
CTX_INCLUDE_AARCH32_REGS := 0
|
||||
|
|
|
@ -26,6 +26,8 @@ MODULES-y += $(MTK_PLAT)/drivers/cirq
|
|||
MODULES-y += $(MTK_PLAT)/drivers/dp
|
||||
MODULES-y += $(MTK_PLAT)/drivers/gic600
|
||||
MODULES-y += $(MTK_PLAT)/drivers/iommu
|
||||
MODULES-y += $(MTK_PLAT)/drivers/pmic
|
||||
MODULES-y += $(MTK_PLAT)/drivers/pmic_wrap
|
||||
MODULES-y += $(MTK_PLAT)/drivers/timer
|
||||
|
||||
PLAT_BL_COMMON_SOURCES := common/desc_image_load.c \
|
||||
|
|
Loading…
Add table
Reference in a new issue