|
@@ -33,14 +33,24 @@ struct hrtimer_cpu_base;
|
|
* HRTIMER_MODE_REL - Time value is relative to now
|
|
* HRTIMER_MODE_REL - Time value is relative to now
|
|
* HRTIMER_MODE_PINNED - Timer is bound to CPU (is only considered
|
|
* HRTIMER_MODE_PINNED - Timer is bound to CPU (is only considered
|
|
* when starting the timer)
|
|
* when starting the timer)
|
|
|
|
+ * HRTIMER_MODE_SOFT - Timer callback function will be executed in
|
|
|
|
+ * soft irq context
|
|
*/
|
|
*/
|
|
enum hrtimer_mode {
|
|
enum hrtimer_mode {
|
|
HRTIMER_MODE_ABS = 0x00,
|
|
HRTIMER_MODE_ABS = 0x00,
|
|
HRTIMER_MODE_REL = 0x01,
|
|
HRTIMER_MODE_REL = 0x01,
|
|
HRTIMER_MODE_PINNED = 0x02,
|
|
HRTIMER_MODE_PINNED = 0x02,
|
|
|
|
+ HRTIMER_MODE_SOFT = 0x04,
|
|
|
|
|
|
HRTIMER_MODE_ABS_PINNED = HRTIMER_MODE_ABS | HRTIMER_MODE_PINNED,
|
|
HRTIMER_MODE_ABS_PINNED = HRTIMER_MODE_ABS | HRTIMER_MODE_PINNED,
|
|
HRTIMER_MODE_REL_PINNED = HRTIMER_MODE_REL | HRTIMER_MODE_PINNED,
|
|
HRTIMER_MODE_REL_PINNED = HRTIMER_MODE_REL | HRTIMER_MODE_PINNED,
|
|
|
|
+
|
|
|
|
+ HRTIMER_MODE_ABS_SOFT = HRTIMER_MODE_ABS | HRTIMER_MODE_SOFT,
|
|
|
|
+ HRTIMER_MODE_REL_SOFT = HRTIMER_MODE_REL | HRTIMER_MODE_SOFT,
|
|
|
|
+
|
|
|
|
+ HRTIMER_MODE_ABS_PINNED_SOFT = HRTIMER_MODE_ABS_PINNED | HRTIMER_MODE_SOFT,
|
|
|
|
+ HRTIMER_MODE_REL_PINNED_SOFT = HRTIMER_MODE_REL_PINNED | HRTIMER_MODE_SOFT,
|
|
|
|
+
|
|
};
|
|
};
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -151,6 +161,10 @@ enum hrtimer_base_type {
|
|
HRTIMER_BASE_REALTIME,
|
|
HRTIMER_BASE_REALTIME,
|
|
HRTIMER_BASE_BOOTTIME,
|
|
HRTIMER_BASE_BOOTTIME,
|
|
HRTIMER_BASE_TAI,
|
|
HRTIMER_BASE_TAI,
|
|
|
|
+ HRTIMER_BASE_MONOTONIC_SOFT,
|
|
|
|
+ HRTIMER_BASE_REALTIME_SOFT,
|
|
|
|
+ HRTIMER_BASE_BOOTTIME_SOFT,
|
|
|
|
+ HRTIMER_BASE_TAI_SOFT,
|
|
HRTIMER_MAX_CLOCK_BASES,
|
|
HRTIMER_MAX_CLOCK_BASES,
|
|
};
|
|
};
|
|
|
|
|