]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/clocksource.h
[PATCH] Uninline jiffies.h functions
[linux-2.6-omap-h63xx.git] / include / linux / clocksource.h
index c4187cda0ee4dadfd0a5f49cc78fd894f59d6901..1622d23a8dc3e9d7390e6642ee0d9f317aea6492 100644 (file)
@@ -46,8 +46,8 @@ typedef u64 cycle_t;
  * @shift:             cycle to nanosecond divisor (power of two)
  * @update_callback:   called when safe to alter clocksource values
  * @is_continuous:     defines if clocksource is free-running.
- * @interval_cycles:   Used internally by timekeeping core, please ignore.
- * @interval_snsecs:   Used internally by timekeeping core, please ignore.
+ * @cycle_interval:    Used internally by timekeeping core, please ignore.
+ * @xtime_interval:    Used internally by timekeeping core, please ignore.
  */
 struct clocksource {
        char *name;
@@ -61,10 +61,13 @@ struct clocksource {
        int is_continuous;
 
        /* timekeeping specific data, ignore */
-       cycle_t interval_cycles;
-       u64 interval_snsecs;
+       cycle_t cycle_last, cycle_interval;
+       u64 xtime_nsec, xtime_interval;
+       s64 error;
 };
 
+/* simplify initialization of mask field */
+#define CLOCKSOURCE_MASK(bits) (cycle_t)(bits<64 ? ((1ULL<<bits)-1) : -1)
 
 /**
  * clocksource_khz2mult - calculates mult from khz and shift
@@ -118,12 +121,12 @@ static inline u32 clocksource_hz2mult(u32 hz, u32 shift_constant)
 }
 
 /**
- * read_clocksource: - Access the clocksource's current cycle value
+ * clocksource_read: - Access the clocksource's current cycle value
  * @cs:                pointer to clocksource being read
  *
  * Uses the clocksource to return the current cycle_t value
  */
-static inline cycle_t read_clocksource(struct clocksource *cs)
+static inline cycle_t clocksource_read(struct clocksource *cs)
 {
        return cs->read();
 }
@@ -145,7 +148,7 @@ static inline s64 cyc2ns(struct clocksource *cs, cycle_t cycles)
 }
 
 /**
- * calculate_clocksource_interval - Calculates a clocksource interval struct
+ * clocksource_calculate_interval - Calculates a clocksource interval struct
  *
  * @c:         Pointer to clocksource.
  * @length_nsec: Desired interval length in nanoseconds.
@@ -155,8 +158,8 @@ static inline s64 cyc2ns(struct clocksource *cs, cycle_t cycles)
  *
  * Unless you're the timekeeping code, you should not be using this!
  */
-static inline void calculate_clocksource_interval(struct clocksource *c,
-                                               unsigned long length_nsec)
+static inline void clocksource_calculate_interval(struct clocksource *c,
+                                                 unsigned long length_nsec)
 {
        u64 tmp;
 
@@ -166,16 +169,17 @@ static inline void calculate_clocksource_interval(struct clocksource *c,
        tmp += c->mult/2;
        do_div(tmp, c->mult);
 
-       c->interval_cycles = (cycle_t)tmp;
-       if(c->interval_cycles == 0)
-               c->interval_cycles = 1;
+       c->cycle_interval = (cycle_t)tmp;
+       if (c->cycle_interval == 0)
+               c->cycle_interval = 1;
 
-       c->interval_snsecs = (u64)c->interval_cycles * c->mult;
+       c->xtime_interval = (u64)c->cycle_interval * c->mult;
 }
 
+
 /* used to install a new clocksource */
-int register_clocksource(struct clocksource*);
-void reselect_clocksource(void);
-struct clocksource* get_next_clocksource(void);
+int clocksource_register(struct clocksource*);
+void clocksource_reselect(void);
+struct clocksource* clocksource_get_next(void);
 
 #endif /* _LINUX_CLOCKSOURCE_H */