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