xref: /rk3399_ARM-atf/plat/st/stm32mp2/stm32mp2_syscfg.c (revision d76d27e9781ee56a07ab550ff058551c8e682b5e)
1*154e6e62SYann Gautier /*
2*154e6e62SYann Gautier  * Copyright (c) 2024, STMicroelectronics - All Rights Reserved
3*154e6e62SYann Gautier  *
4*154e6e62SYann Gautier  * SPDX-License-Identifier: BSD-3-Clause
5*154e6e62SYann Gautier  */
6*154e6e62SYann Gautier 
7*154e6e62SYann Gautier #include <common/debug.h>
8*154e6e62SYann Gautier #include <lib/mmio.h>
9*154e6e62SYann Gautier #include <lib/utils_def.h>
10*154e6e62SYann Gautier 
11*154e6e62SYann Gautier #include <platform_def.h>
12*154e6e62SYann Gautier #include <stm32mp2_private.h>
13*154e6e62SYann Gautier 
14*154e6e62SYann Gautier /*
15*154e6e62SYann Gautier  * SYSCFG register offsets (base relative)
16*154e6e62SYann Gautier  */
17*154e6e62SYann Gautier #define SYSCFG_DEVICEID			0x6400U
18*154e6e62SYann Gautier 
19*154e6e62SYann Gautier /*
20*154e6e62SYann Gautier  * SYSCFG_DEVICEID Register
21*154e6e62SYann Gautier  */
22*154e6e62SYann Gautier #define SYSCFG_DEVICEID_DEV_ID_MASK	GENMASK_32(11, 0)
23*154e6e62SYann Gautier 
24*154e6e62SYann Gautier /*
25*154e6e62SYann Gautier  * @brief  Get device ID from SYSCFG registers.
26*154e6e62SYann Gautier  * @retval device ID (DEV_ID).
27*154e6e62SYann Gautier  */
stm32mp_syscfg_get_chip_dev_id(void)28*154e6e62SYann Gautier uint32_t stm32mp_syscfg_get_chip_dev_id(void)
29*154e6e62SYann Gautier {
30*154e6e62SYann Gautier 	return mmio_read_32(SYSCFG_BASE + SYSCFG_DEVICEID) & SYSCFG_DEVICEID_DEV_ID_MASK;
31*154e6e62SYann Gautier }
32