diff options
-rw-r--r-- | include/linux/hpet.h | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/include/linux/hpet.h b/include/linux/hpet.h index 27238194b212..707f7cb9e795 100644 --- a/include/linux/hpet.h +++ b/include/linux/hpet.h | |||
@@ -3,6 +3,8 @@ | |||
3 | 3 | ||
4 | #include <linux/compiler.h> | 4 | #include <linux/compiler.h> |
5 | 5 | ||
6 | #ifdef __KERNEL__ | ||
7 | |||
6 | /* | 8 | /* |
7 | * Offsets into HPET Registers | 9 | * Offsets into HPET Registers |
8 | */ | 10 | */ |
@@ -85,22 +87,6 @@ struct hpet { | |||
85 | #define Tn_FSB_INT_ADDR_SHIFT (32UL) | 87 | #define Tn_FSB_INT_ADDR_SHIFT (32UL) |
86 | #define Tn_FSB_INT_VAL_MASK (0x00000000ffffffffULL) | 88 | #define Tn_FSB_INT_VAL_MASK (0x00000000ffffffffULL) |
87 | 89 | ||
88 | struct hpet_info { | ||
89 | unsigned long hi_ireqfreq; /* Hz */ | ||
90 | unsigned long hi_flags; /* information */ | ||
91 | unsigned short hi_hpet; | ||
92 | unsigned short hi_timer; | ||
93 | }; | ||
94 | |||
95 | #define HPET_INFO_PERIODIC 0x0001 /* timer is periodic */ | ||
96 | |||
97 | #define HPET_IE_ON _IO('h', 0x01) /* interrupt on */ | ||
98 | #define HPET_IE_OFF _IO('h', 0x02) /* interrupt off */ | ||
99 | #define HPET_INFO _IOR('h', 0x03, struct hpet_info) | ||
100 | #define HPET_EPI _IO('h', 0x04) /* enable periodic */ | ||
101 | #define HPET_DPI _IO('h', 0x05) /* disable periodic */ | ||
102 | #define HPET_IRQFREQ _IOW('h', 0x6, unsigned long) /* IRQFREQ usec */ | ||
103 | |||
104 | /* | 90 | /* |
105 | * exported interfaces | 91 | * exported interfaces |
106 | */ | 92 | */ |
@@ -133,4 +119,22 @@ int hpet_register(struct hpet_task *, int); | |||
133 | int hpet_unregister(struct hpet_task *); | 119 | int hpet_unregister(struct hpet_task *); |
134 | int hpet_control(struct hpet_task *, unsigned int, unsigned long); | 120 | int hpet_control(struct hpet_task *, unsigned int, unsigned long); |
135 | 121 | ||
122 | #endif /* __KERNEL__ */ | ||
123 | |||
124 | struct hpet_info { | ||
125 | unsigned long hi_ireqfreq; /* Hz */ | ||
126 | unsigned long hi_flags; /* information */ | ||
127 | unsigned short hi_hpet; | ||
128 | unsigned short hi_timer; | ||
129 | }; | ||
130 | |||
131 | #define HPET_INFO_PERIODIC 0x0001 /* timer is periodic */ | ||
132 | |||
133 | #define HPET_IE_ON _IO('h', 0x01) /* interrupt on */ | ||
134 | #define HPET_IE_OFF _IO('h', 0x02) /* interrupt off */ | ||
135 | #define HPET_INFO _IOR('h', 0x03, struct hpet_info) | ||
136 | #define HPET_EPI _IO('h', 0x04) /* enable periodic */ | ||
137 | #define HPET_DPI _IO('h', 0x05) /* disable periodic */ | ||
138 | #define HPET_IRQFREQ _IOW('h', 0x6, unsigned long) /* IRQFREQ usec */ | ||
139 | |||
136 | #endif /* !__HPET__ */ | 140 | #endif /* !__HPET__ */ |