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