X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Finclude%2Ftimer.h;h=f15e6fbdca33ef10ba596b96d8aad86383a82cf9;hb=refs%2Fheads%2Fradar;hp=7e4cb4cd69a2a5a4bebac5a8f4b38f206b7e1fd9;hpb=7c60c5e57519144942267d382d3658c070bc89e7;p=carl9170fw.git diff --git a/carlfw/include/timer.h b/carlfw/include/timer.h index 7e4cb4c..f15e6fb 100644 --- a/carlfw/include/timer.h +++ b/carlfw/include/timer.h @@ -19,8 +19,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * with this program; If not, see . */ #ifndef __CARL9170FW_TIMER_H @@ -47,7 +46,12 @@ static inline __inline uint32_t get_clock_counter(void) */ static inline __inline bool is_after_msecs(const uint32_t t0, const uint32_t msecs) { - return ((get_clock_counter() - t0) / 1000) > (msecs * fw.ticks_per_msec); + return ((get_clock_counter() - t0) / 1000) > (msecs * fw.ticks_per_usec); +} + +static inline __inline bool is_after_usecs(const uint32_t t0, const uint32_t usecs) +{ + return ((get_clock_counter() - t0)) > (usecs * fw.ticks_per_usec); } /* @@ -60,7 +64,7 @@ static inline __inline void delay(const uint32_t msec) { uint32_t t1, t2, dt, wt; - wt = msec * fw.ticks_per_msec; + wt = msec * fw.ticks_per_usec; t1 = get_clock_counter(); while (1) { @@ -79,10 +83,13 @@ static inline __inline void udelay(const uint32_t usec) while (1) { t2 = get_clock_counter(); dt = (t2 - t1); - if (dt >= (usec * fw.ticks_per_msec)) + if (dt >= (usec * fw.ticks_per_usec)) break; } } void clock_set(enum cpu_clock_t _clock, bool on); +void handle_timer(void); +void timer_init(const unsigned int timer, const unsigned int interval); + #endif /* __CARL9170FW_TIMER_H */