diff options
author | Madhukar Pappireddy <madhukar.pappireddy@arm.com> | 2021-09-03 15:17:08 +0200 |
---|---|---|
committer | TrustedFirmware Code Review <review@review.trustedfirmware.org> | 2021-09-03 15:17:08 +0200 |
commit | 81de40f23b8a9302991d4ebd42c38b88a45511da (patch) | |
tree | 280a3c4256dc3446c4d914ce194d11996a5223e9 /include | |
parent | 9dc2534fd742342c9d25e72200107b3481275054 (diff) | |
parent | 08695df91dffb2e45c01866b760d73cb531a071b (diff) | |
download | arm-trusted-firmware-81de40f23b8a9302991d4ebd42c38b88a45511da.tar.gz |
Merge changes I3c20611a,Ib1671011,I5eab3f33,Ib149b3ea into integration
* changes:
refactor(plat/nxp): refine api to read SVR register
refactor(plat/nxp): each errata use a seperate source file
refactor(plat/nxp): use a unified errata api
refactor(plat/soc-lx2160): move errata to common directory
Diffstat (limited to 'include')
-rw-r--r-- | include/drivers/nxp/dcfg/dcfg.h | 36 | ||||
-rw-r--r-- | include/drivers/nxp/dcfg/dcfg_lsch2.h | 8 |
2 files changed, 30 insertions, 14 deletions
diff --git a/include/drivers/nxp/dcfg/dcfg.h b/include/drivers/nxp/dcfg/dcfg.h index 3f4855ae5..524450a82 100644 --- a/include/drivers/nxp/dcfg/dcfg.h +++ b/include/drivers/nxp/dcfg/dcfg.h @@ -27,23 +27,41 @@ #endif typedef struct { - bool is_populated; - uint8_t mfr_id; -#if defined(CONFIG_CHASSIS_3_2) - uint8_t family; - uint8_t dev_id; + union { + uint32_t val; + struct { + uint32_t min_ver:4; + uint32_t maj_ver:4; +#if defined(CONFIG_CHASSIS_3) || defined(CONFIG_CHASSIS_3_2) + uint32_t personality:6; + uint32_t rsv1:2; +#elif defined(CONFIG_CHASSIS_2) + uint32_t personality:8; + #endif - uint8_t personality; +#if defined(CONFIG_CHASSIS_3) || defined(CONFIG_CHASSIS_3_2) + uint32_t dev_id:6; + uint32_t rsv2:2; + uint32_t family:4; +#elif defined(CONFIG_CHASSIS_2) + uint32_t dev_id:12; +#endif + uint32_t mfr_id; + } __packed bf; + struct { + uint32_t maj_min:8; + uint32_t version; /* SoC version without major and minor info */ + } __packed bf_ver; + } __packed svr_reg; bool sec_enabled; - uint8_t maj_ver; - uint8_t min_ver; + bool is_populated; } soc_info_t; typedef struct { bool is_populated; uint8_t ocram_present; uint8_t ddrc1_present; -#if defined(CONFIG_CHASSIS_3_2) +#if defined(CONFIG_CHASSIS_3) || defined(CONFIG_CHASSIS_3_2) uint8_t ddrc2_present; #endif } devdisr5_info_t; diff --git a/include/drivers/nxp/dcfg/dcfg_lsch2.h b/include/drivers/nxp/dcfg/dcfg_lsch2.h index 2838aca98..1e5672910 100644 --- a/include/drivers/nxp/dcfg/dcfg_lsch2.h +++ b/include/drivers/nxp/dcfg/dcfg_lsch2.h @@ -34,12 +34,10 @@ #define SVR_MFR_ID_MASK 0xF0000000 #define SVR_MFR_ID_SHIFT 28 -#define SVR_FAMILY_MASK 0xF000000 -#define SVR_FAMILY_SHIFT 24 -#define SVR_DEV_ID_MASK 0x3F0000 +#define SVR_DEV_ID_MASK 0xFFF0000 #define SVR_DEV_ID_SHIFT 16 -#define SVR_PERSONALITY_MASK 0x3E00 -#define SVR_PERSONALITY_SHIFT 9 +#define SVR_PERSONALITY_MASK 0xFF00 +#define SVR_PERSONALITY_SHIFT 8 #define SVR_SEC_MASK 0x100 #define SVR_SEC_SHIFT 8 #define SVR_MAJ_VER_MASK 0xF0 |