soc/mediatek/mt8186: Add support for reading CPU ID
MT8186 has two slightly different versions: MT8186G and MT8186T (turbo version). Add get_cpu_id() to identify different CPUs. BUG=b:249436110 TEST=cpu id is correct. BRANCH=corsola Signed-off-by: Bo-Chen Chen <rex-bc.chen@mediatek.com> Change-Id: I0612dd589e11853dbddc1d99526e9c9bf170acec Reviewed-on: https://review.coreboot.org/c/coreboot/+/68576 Reviewed-by: Yu-Ping Wu <yupingso@google.com> Reviewed-by: Yidi Lin <yidilin@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
e8df32775d
commit
6ad80f1b81
|
@ -0,0 +1,15 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <console/console.h>
|
||||
#include <device/mmio.h>
|
||||
#include <soc/cpu_id.h>
|
||||
#include <soc/efuse.h>
|
||||
|
||||
u32 get_cpu_id(void)
|
||||
{
|
||||
u32 id = read32(&mtk_efuse->cpu_id_reg);
|
||||
|
||||
printk(BIOS_INFO, "CPU: %#x\n", id);
|
||||
|
||||
return id;
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#ifndef SOC_MEDIATEK_COMMON_CPU_ID_H
|
||||
#define SOC_MEDIATEK_COMMON_CPU_ID_H
|
||||
|
||||
#define MTK_CPU_ID_MT8186G 0x81861001
|
||||
#define MTK_CPU_ID_MT8186T 0x81862001
|
||||
|
||||
u32 get_cpu_id(void);
|
||||
|
||||
#endif /* SOC_MEDIATEK_COMMON_CPU_ID_H */
|
|
@ -1,6 +1,7 @@
|
|||
ifeq ($(CONFIG_SOC_MEDIATEK_MT8186),y)
|
||||
|
||||
# for bootblock, verstage, romstage, ramstage
|
||||
all-y += ../common/cpu_id.c
|
||||
all-y += ../common/flash_controller.c
|
||||
all-y += ../common/gpio.c ../common/gpio_op.c gpio.c
|
||||
all-y += ../common/i2c.c i2c.c
|
||||
|
|
|
@ -9,9 +9,12 @@
|
|||
struct efuse_regs {
|
||||
uint32_t reserved[130];
|
||||
uint32_t adc_cali_reg;
|
||||
uint32_t reserved1[357];
|
||||
uint32_t cpu_id_reg;
|
||||
};
|
||||
|
||||
check_member(efuse_regs, adc_cali_reg, 0x208);
|
||||
check_member(efuse_regs, cpu_id_reg, 0x7a0);
|
||||
static struct efuse_regs *const mtk_efuse = (void *)EFUSEC_BASE;
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue