static void cpu_emulate_effective_ctr(const struct arm64_cpu_capabilities *__unused)
{
    /*
    * If the CPU exposes raw CTR_EL0.IDC = 0, while effectively
    * CTR_EL0.IDC = 1 (from CLIDR values), we need to trap accesses
    * to the CTR_EL0 on this CPU and emulate it with the real/safe
    * value.
    */
    if (!(read_cpuid_cachetype() & BIT(CTR_EL0_IDC_SHIFT)))
#ifdef CONFIG_IEE
        sysreg_clear_set_iee_si(sctlr_el1, SCTLR_EL1_UCT, 0);
#else
        sysreg_clear_set(sctlr_el1, SCTLR_EL1_UCT, 0);
#endif
}