xref: /aosp_15_r20/external/kernel-headers/original/uapi/linux/hpet.h (revision f80ad8b4341604f5951dab671d41019a6d7087ce)
1*f80ad8b4SAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2*f80ad8b4SAndroid Build Coastguard Worker #ifndef _UAPI__HPET__
3*f80ad8b4SAndroid Build Coastguard Worker #define _UAPI__HPET__
4*f80ad8b4SAndroid Build Coastguard Worker 
5*f80ad8b4SAndroid Build Coastguard Worker #include <linux/compiler.h>
6*f80ad8b4SAndroid Build Coastguard Worker 
7*f80ad8b4SAndroid Build Coastguard Worker 
8*f80ad8b4SAndroid Build Coastguard Worker struct hpet_info {
9*f80ad8b4SAndroid Build Coastguard Worker 	unsigned long hi_ireqfreq;	/* Hz */
10*f80ad8b4SAndroid Build Coastguard Worker 	unsigned long hi_flags;	/* information */
11*f80ad8b4SAndroid Build Coastguard Worker 	unsigned short hi_hpet;
12*f80ad8b4SAndroid Build Coastguard Worker 	unsigned short hi_timer;
13*f80ad8b4SAndroid Build Coastguard Worker };
14*f80ad8b4SAndroid Build Coastguard Worker 
15*f80ad8b4SAndroid Build Coastguard Worker #define HPET_INFO_PERIODIC	0x0010	/* periodic-capable comparator */
16*f80ad8b4SAndroid Build Coastguard Worker 
17*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_IE_ON	_IO('h', 0x01)	/* interrupt on */
18*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_IE_OFF	_IO('h', 0x02)	/* interrupt off */
19*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_INFO	_IOR('h', 0x03, struct hpet_info)
20*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_EPI	_IO('h', 0x04)	/* enable periodic */
21*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_DPI	_IO('h', 0x05)	/* disable periodic */
22*f80ad8b4SAndroid Build Coastguard Worker #define	HPET_IRQFREQ	_IOW('h', 0x6, unsigned long)	/* IRQFREQ usec */
23*f80ad8b4SAndroid Build Coastguard Worker 
24*f80ad8b4SAndroid Build Coastguard Worker #define MAX_HPET_TBS	8		/* maximum hpet timer blocks */
25*f80ad8b4SAndroid Build Coastguard Worker 
26*f80ad8b4SAndroid Build Coastguard Worker #endif /* _UAPI__HPET__ */
27