feat(gic600ae_fmu): enable all GICD, PPI, ITS SMs
The following SMIDs are disabled by default. * GICD: MBIST REQ error and GICD FMU ClkGate override * PPI: MBIST REQ error and PPI FMU ClkGate override * ITS: MBIST REQ error and ITS FMU ClkGate override This patch explicitly enables them during the FMU init sequence. Change-Id: I573e64786e3318d4cbcd07d0a1caf25f8e6e9200 Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
This commit is contained in:
parent
3f0094c15d
commit
6a1c17c770
|
@ -302,22 +302,26 @@ void gic600_fmu_init(uint64_t base, uint64_t blk_present_mask,
|
|||
*/
|
||||
if ((blk_present_mask & BIT(FMU_BLK_GICD)) != 0U) {
|
||||
smen = (GICD_MBIST_REQ_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(FMU_BLK_GICD << FMU_SMEN_BLK_SHIFT);
|
||||
(FMU_BLK_GICD << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
|
||||
smen = (GICD_FMU_CLKGATE_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(FMU_BLK_GICD << FMU_SMEN_BLK_SHIFT);
|
||||
(FMU_BLK_GICD << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
}
|
||||
|
||||
for (unsigned int i = FMU_BLK_PPI0; i < FMU_BLK_PPI31; i++) {
|
||||
if ((blk_present_mask & BIT(i)) != 0U) {
|
||||
smen = (PPI_MBIST_REQ_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(i << FMU_SMEN_BLK_SHIFT);
|
||||
(i << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
|
||||
smen = (PPI_FMU_CLKGATE_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(i << FMU_SMEN_BLK_SHIFT);
|
||||
(i << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
}
|
||||
}
|
||||
|
@ -325,11 +329,13 @@ void gic600_fmu_init(uint64_t base, uint64_t blk_present_mask,
|
|||
for (unsigned int i = FMU_BLK_ITS0; i < FMU_BLK_ITS7; i++) {
|
||||
if ((blk_present_mask & BIT(i)) != 0U) {
|
||||
smen = (ITS_MBIST_REQ_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(i << FMU_SMEN_BLK_SHIFT);
|
||||
(i << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
|
||||
smen = (ITS_FMU_CLKGATE_ERROR << FMU_SMEN_SMID_SHIFT) |
|
||||
(i << FMU_SMEN_BLK_SHIFT);
|
||||
(i << FMU_SMEN_BLK_SHIFT) |
|
||||
FMU_SMEN_EN_BIT;
|
||||
gic_fmu_write_smen(base, smen);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
/* SMEN constants */
|
||||
#define FMU_SMEN_BLK_SHIFT U(8)
|
||||
#define FMU_SMEN_SMID_SHIFT U(24)
|
||||
#define FMU_SMEN_EN_BIT BIT(0)
|
||||
|
||||
/* Error record IDs */
|
||||
#define FMU_BLK_GICD U(0)
|
||||
|
|
Loading…
Reference in New Issue