|
@@ -22,6 +22,7 @@ bool nouveau_timer_wait_eq(void *, u64 nsec, u32 addr, u32 mask, u32 data);
|
|
bool nouveau_timer_wait_ne(void *, u64 nsec, u32 addr, u32 mask, u32 data);
|
|
bool nouveau_timer_wait_ne(void *, u64 nsec, u32 addr, u32 mask, u32 data);
|
|
bool nouveau_timer_wait_cb(void *, u64 nsec, bool (*func)(void *), void *data);
|
|
bool nouveau_timer_wait_cb(void *, u64 nsec, bool (*func)(void *), void *data);
|
|
void nouveau_timer_alarm(void *, u32 nsec, struct nouveau_alarm *);
|
|
void nouveau_timer_alarm(void *, u32 nsec, struct nouveau_alarm *);
|
|
|
|
+void nouveau_timer_alarm_cancel(void *, struct nouveau_alarm *);
|
|
|
|
|
|
#define NV_WAIT_DEFAULT 2000000000ULL
|
|
#define NV_WAIT_DEFAULT 2000000000ULL
|
|
#define nv_wait(o,a,m,v) \
|
|
#define nv_wait(o,a,m,v) \
|
|
@@ -35,6 +36,7 @@ struct nouveau_timer {
|
|
struct nouveau_subdev base;
|
|
struct nouveau_subdev base;
|
|
u64 (*read)(struct nouveau_timer *);
|
|
u64 (*read)(struct nouveau_timer *);
|
|
void (*alarm)(struct nouveau_timer *, u64 time, struct nouveau_alarm *);
|
|
void (*alarm)(struct nouveau_timer *, u64 time, struct nouveau_alarm *);
|
|
|
|
+ void (*alarm_cancel)(struct nouveau_timer *, struct nouveau_alarm *);
|
|
};
|
|
};
|
|
|
|
|
|
static inline struct nouveau_timer *
|
|
static inline struct nouveau_timer *
|