Lines Matching +full:cpu +full:- +full:read

1 /* SPDX-License-Identifier: GPL-2.0 */
4 * Definitions for the clocksource provided by the Hyper-V
5 * hypervisor to guest VMs, as described in the Hyper-V Top
29 extern int hv_stimer_cleanup(unsigned int cpu);
30 extern void hv_stimer_legacy_init(unsigned int cpu, int sint);
31 extern void hv_stimer_legacy_cleanup(unsigned int cpu);
51 * The protocol for reading Hyper-V TSC page is specified in Hypervisor in hv_read_tsc_page_tsc()
52 * Top-Level Functional Specification ver. 3.0 and above. To get the in hv_read_tsc_page_tsc()
54 * - READ ReferenceTscSequence in hv_read_tsc_page_tsc()
57 * versions (up to 4.0b) contain a mistake and wrongly claim '-1' in hv_read_tsc_page_tsc()
59 * - ReferenceTime = in hv_read_tsc_page_tsc()
61 * - READ ReferenceTscSequence again. In case its value has changed in hv_read_tsc_page_tsc()
67 sequence = READ_ONCE(tsc_pg->tsc_sequence); in hv_read_tsc_page_tsc()
71 * Make sure we read sequence before we read other values from in hv_read_tsc_page_tsc()
76 scale = READ_ONCE(tsc_pg->tsc_scale); in hv_read_tsc_page_tsc()
77 offset = READ_ONCE(tsc_pg->tsc_offset); in hv_read_tsc_page_tsc()
81 * Make sure we read sequence after we read all other values in hv_read_tsc_page_tsc()
86 } while (READ_ONCE(tsc_pg->tsc_sequence) != sequence); in hv_read_tsc_page_tsc()
109 static inline int hv_stimer_cleanup(unsigned int cpu) { return 0; } in hv_stimer_cleanup() argument
110 static inline void hv_stimer_legacy_init(unsigned int cpu, int sint) {} in hv_stimer_legacy_init() argument
111 static inline void hv_stimer_legacy_cleanup(unsigned int cpu) {} in hv_stimer_legacy_cleanup() argument