cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

acpi_pmtmr.h (674B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _ACPI_PMTMR_H_
      3#define _ACPI_PMTMR_H_
      4
      5#include <linux/clocksource.h>
      6
      7/* Number of PMTMR ticks expected during calibration run */
      8#define PMTMR_TICKS_PER_SEC 3579545
      9
     10/* limit it to 24 bits */
     11#define ACPI_PM_MASK CLOCKSOURCE_MASK(24)
     12
     13/* Overrun value */
     14#define ACPI_PM_OVRRUN	(1<<24)
     15
     16#ifdef CONFIG_X86_PM_TIMER
     17
     18extern u32 acpi_pm_read_verified(void);
     19extern u32 pmtmr_ioport;
     20
     21static inline u32 acpi_pm_read_early(void)
     22{
     23	if (!pmtmr_ioport)
     24		return 0;
     25	/* mask the output to 24 bits */
     26	return acpi_pm_read_verified() & ACPI_PM_MASK;
     27}
     28
     29#else
     30
     31static inline u32 acpi_pm_read_early(void)
     32{
     33	return 0;
     34}
     35
     36#endif
     37
     38#endif
     39