Staging: hv remove TIMER typedef
Remove the TIMER typedef and also replace HANDLE types that use the timer calls. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
aedb444a57
commit
06d2e318b7
|
@ -47,7 +47,7 @@ typedef struct _VMBUS_CHANNEL {
|
|||
|
||||
struct hv_device *DeviceObject;
|
||||
|
||||
HANDLE PollTimer; /* SA-111 workaround */
|
||||
struct osd_timer *PollTimer; /* SA-111 workaround */
|
||||
|
||||
VMBUS_CHANNEL_STATE State;
|
||||
|
||||
|
|
|
@ -48,6 +48,10 @@ typedef struct _DLIST_ENTRY {
|
|||
/* typedef unsigned char GUID[16]; */
|
||||
typedef void* HANDLE;
|
||||
|
||||
typedef void (*PFN_WORKITEM_CALLBACK)(void* context);
|
||||
typedef void (*PFN_TIMER_CALLBACK)(void* context);
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned char Data[16];
|
||||
} GUID;
|
||||
|
@ -57,9 +61,12 @@ struct osd_waitevent {
|
|||
wait_queue_head_t event;
|
||||
};
|
||||
|
||||
struct osd_timer {
|
||||
struct timer_list timer;
|
||||
PFN_TIMER_CALLBACK callback;
|
||||
void* context;
|
||||
};
|
||||
|
||||
typedef void (*PFN_WORKITEM_CALLBACK)(void* context);
|
||||
typedef void (*PFN_TIMER_CALLBACK)(void* context);
|
||||
|
||||
|
||||
#ifdef __x86_64__
|
||||
|
@ -123,10 +130,10 @@ extern void PageFree(void* page, unsigned int count);
|
|||
extern void* MemMapIO(unsigned long phys, unsigned long size);
|
||||
extern void MemUnmapIO(void* virt);
|
||||
|
||||
extern HANDLE TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context);
|
||||
extern void TimerClose(HANDLE hTimer);
|
||||
extern int TimerStop(HANDLE hTimer);
|
||||
extern void TimerStart(HANDLE hTimer, u32 expirationInUs);
|
||||
extern struct osd_timer *TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context);
|
||||
extern void TimerClose(struct osd_timer *t);
|
||||
extern int TimerStop(struct osd_timer *t);
|
||||
extern void TimerStart(struct osd_timer *t, u32 expirationInUs);
|
||||
|
||||
extern struct osd_waitevent *WaitEventCreate(void);
|
||||
extern void WaitEventClose(struct osd_waitevent *waitEvent);
|
||||
|
|
|
@ -49,11 +49,6 @@
|
|||
|
||||
/* Data types */
|
||||
|
||||
typedef struct _TIMER {
|
||||
struct timer_list timer;
|
||||
PFN_TIMER_CALLBACK callback;
|
||||
void* context;
|
||||
}TIMER;
|
||||
|
||||
typedef struct _WORKITEM {
|
||||
struct work_struct work;
|
||||
|
@ -168,14 +163,14 @@ void MemUnmapIO(void *virt)
|
|||
|
||||
void TimerCallback(unsigned long data)
|
||||
{
|
||||
TIMER* t = (TIMER*)data;
|
||||
struct osd_timer *t = (struct osd_timer *) data;
|
||||
|
||||
t->callback(t->context);
|
||||
}
|
||||
|
||||
HANDLE TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context)
|
||||
struct osd_timer *TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context)
|
||||
{
|
||||
TIMER* t = kmalloc(sizeof(TIMER), GFP_KERNEL);
|
||||
struct osd_timer *t = kmalloc(sizeof(struct osd_timer), GFP_KERNEL);
|
||||
if (!t)
|
||||
{
|
||||
return NULL;
|
||||
|
@ -191,25 +186,19 @@ HANDLE TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context)
|
|||
return t;
|
||||
}
|
||||
|
||||
void TimerStart(HANDLE hTimer, u32 expirationInUs)
|
||||
void TimerStart(struct osd_timer *t, u32 expirationInUs)
|
||||
{
|
||||
TIMER* t = (TIMER* )hTimer;
|
||||
|
||||
t->timer.expires = jiffies + usecs_to_jiffies(expirationInUs);
|
||||
add_timer(&t->timer);
|
||||
}
|
||||
|
||||
int TimerStop(HANDLE hTimer)
|
||||
int TimerStop(struct osd_timer *t)
|
||||
{
|
||||
TIMER* t = (TIMER* )hTimer;
|
||||
|
||||
return del_timer(&t->timer);
|
||||
}
|
||||
|
||||
void TimerClose(HANDLE hTimer)
|
||||
void TimerClose(struct osd_timer *t)
|
||||
{
|
||||
TIMER* t = (TIMER* )hTimer;
|
||||
|
||||
del_timer(&t->timer);
|
||||
kfree(t);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue