RTEMS 6.1-rc1
Macros | Functions
timer.c File Reference

IDT 4650 Timer Driver. More...

#include <rtems.h>
#include <rtems/btimer.h>

Macros

#define CLOCKS_PER_MICROSECOND   ( CPU_CLOCK_RATE_MHZ )
 
#define TIMER_MAX_VALUE   0xffffffff
 
#define AVG_OVERHEAD   8 /* It typically takes X.X microseconds */
 
#define LEAST_VALID   1 /* Don't trust a clicks value lower than this */
 

Functions

uint32_t mips_read_timer (void)
 
void benchmark_timer_initialize (void)
 Initialize the Benchmark Timer. More...
 
benchmark_timer_t benchmark_timer_read (void)
 Read the Benchmark Timer. More...
 
void benchmark_timer_disable_subtracting_average_overhead (bool find_flag)
 Disable Average Overhead Removal from the Benchmark Timer. More...
 

Detailed Description

IDT 4650 Timer Driver.

This file manages the benchmark timer used by the RTEMS Timing Test Suite.

Function Documentation

◆ benchmark_timer_disable_subtracting_average_overhead()

void benchmark_timer_disable_subtracting_average_overhead ( bool  find_flag)

Disable Average Overhead Removal from the Benchmark Timer.

This method places the benchmark timer in a "raw" mode where it returns the actual number of units which have passed between calls to benchmark_timer_initialize and benchmark_timer_read counting.

Parameters
[in]find_flagindicates to enable or disable the mode

◆ benchmark_timer_initialize()

void benchmark_timer_initialize ( void  )

Initialize the Benchmark Timer.

This method initializes the benchmark timer and resets it to begin counting.

◆ benchmark_timer_read()

benchmark_timer_t benchmark_timer_read ( void  )

Read the Benchmark Timer.

This method stops the benchmark timer and returns the number of units that have passed since benchmark_timer_initialize was invoked.

Returns
This method returns the number of units with the average overhead removed. If the value is below the minimum trusted value, zero is returned.