Lines Matching refs:wa
485 bool arch_timer_check_dt_erratum(const struct arch_timer_erratum_workaround *wa, in arch_timer_check_dt_erratum() argument
490 return of_property_read_bool(np, wa->id); in arch_timer_check_dt_erratum()
494 bool arch_timer_check_local_cap_erratum(const struct arch_timer_erratum_workaround *wa, in arch_timer_check_local_cap_erratum() argument
497 return this_cpu_has_cap((uintptr_t)wa->id); in arch_timer_check_local_cap_erratum()
502 bool arch_timer_check_acpi_oem_erratum(const struct arch_timer_erratum_workaround *wa, in arch_timer_check_acpi_oem_erratum() argument
506 const struct ate_acpi_oem_info *info = wa->id; in arch_timer_check_acpi_oem_erratum()
541 void arch_timer_enable_workaround(const struct arch_timer_erratum_workaround *wa, in arch_timer_enable_workaround() argument
547 __this_cpu_write(timer_unstable_counter_workaround, wa); in arch_timer_enable_workaround()
550 per_cpu(timer_unstable_counter_workaround, i) = wa; in arch_timer_enable_workaround()
553 if (wa->read_cntvct_el0 || wa->read_cntpct_el0) in arch_timer_enable_workaround()
562 if (wa->read_cntvct_el0) { in arch_timer_enable_workaround()
571 const struct arch_timer_erratum_workaround *wa, *__wa; in arch_timer_check_ool_workaround() local
591 wa = arch_timer_iterate_errata(type, match_fn, arg); in arch_timer_check_ool_workaround()
592 if (!wa) in arch_timer_check_ool_workaround()
596 if (__wa && wa != __wa) in arch_timer_check_ool_workaround()
598 wa->desc, __wa->desc); in arch_timer_check_ool_workaround()
603 arch_timer_enable_workaround(wa, local); in arch_timer_check_ool_workaround()
605 local ? "local" : "global", wa->desc); in arch_timer_check_ool_workaround()