ARM/arm64: vdso: Use common vdso clock mode storage
Convert ARM/ARM64 to the generic VDSO clock mode storage. This needs to happen in one go as they share the clocksource driver. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Link: https://lkml.kernel.org/r/20200207124403.363235229@linutronix.de
This commit is contained in:
@@ -69,7 +69,7 @@ static enum arch_timer_ppi_nr arch_timer_uses_ppi = ARCH_TIMER_VIRT_PPI;
|
||||
static bool arch_timer_c3stop;
|
||||
static bool arch_timer_mem_use_virtual;
|
||||
static bool arch_counter_suspend_stop;
|
||||
static bool vdso_default = true;
|
||||
static enum vdso_clock_mode vdso_default = VDSO_CLOCKMODE_ARCHTIMER;
|
||||
|
||||
static cpumask_t evtstrm_available = CPU_MASK_NONE;
|
||||
static bool evtstrm_enable = IS_ENABLED(CONFIG_ARM_ARCH_TIMER_EVTSTREAM);
|
||||
@@ -560,8 +560,8 @@ void arch_timer_enable_workaround(const struct arch_timer_erratum_workaround *wa
|
||||
* change both the default value and the vdso itself.
|
||||
*/
|
||||
if (wa->read_cntvct_el0) {
|
||||
clocksource_counter.archdata.vdso_direct = false;
|
||||
vdso_default = false;
|
||||
clocksource_counter.vdso_clock_mode = VDSO_CLOCKMODE_NONE;
|
||||
vdso_default = VDSO_CLOCKMODE_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -979,7 +979,7 @@ static void __init arch_counter_register(unsigned type)
|
||||
}
|
||||
|
||||
arch_timer_read_counter = rd;
|
||||
clocksource_counter.archdata.vdso_direct = vdso_default;
|
||||
clocksource_counter.vdso_clock_mode = vdso_default;
|
||||
} else {
|
||||
arch_timer_read_counter = arch_counter_get_cntvct_mem;
|
||||
}
|
||||
|
Reference in New Issue
Block a user