diff --git a/lib/aarch64/mb_mgr_aarch64_sve256.c b/lib/aarch64/mb_mgr_aarch64_sve256.c index 391540773e8b749a42f7afca770a04857e171809..19dc6bb2e7adedbd38d2179a4ac934969c2dff9d 100644 --- a/lib/aarch64/mb_mgr_aarch64_sve256.c +++ b/lib/aarch64/mb_mgr_aarch64_sve256.c @@ -82,10 +82,10 @@ static void reset_ooo_mgrs(IMB_MGR *state) ooo_mgr_zuc_reset(state->zuc256_eia3_ooo, 4); /* Init SNOW3G-UEA out-of-order fields */ - ooo_mgr_snow3g_reset(state->snow3g_uea2_ooo, 4); + ooo_mgr_snow3g_reset(state->snow3g_uea2_ooo, 8); /* Init SNOW3G-UIA out-of-order fields */ - ooo_mgr_snow3g_reset(state->snow3g_uia2_ooo, 4); + ooo_mgr_snow3g_reset(state->snow3g_uia2_ooo, 8); } IMB_DLL_LOCAL void diff --git a/lib/x86_64/ooo_mgr_reset.c b/lib/x86_64/ooo_mgr_reset.c index a582d7781d3de63b32c5055a5346d67e679bd6a0..4f19a2e9c7e9d87a0ce9df21eac840b7ab4aa66b 100644 --- a/lib/x86_64/ooo_mgr_reset.c +++ b/lib/x86_64/ooo_mgr_reset.c @@ -416,6 +416,10 @@ void ooo_mgr_snow3g_reset(void *p_ooo_mgr, const unsigned num_lanes) p_mgr->lens[10] = 0xffffffff; p_mgr->lens[11] = 0xffffffff; p_mgr->unused_lanes = 0x3210; +#ifdef __aarch64__ + } else if (num_lanes == 8) { + p_mgr->unused_lanes = 0x76543210; +#endif } else if (num_lanes == 16) p_mgr->unused_lanes = 0xFEDCBA9876543210; }