diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-02-12 10:31:38 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-02-14 10:28:29 +0100 |
commit | 24bf11eca11947d961cc9bb5f7d92dabff169e93 (patch) | |
tree | b28f3aa8a21df91e8feaf324613aa76460559837 /c/src/lib/libbsp/powerpc/ep1a | |
parent | bsps/arm: Fix Cortex-A9 MPCore nanoseconds handler (diff) | |
download | rtems-24bf11eca11947d961cc9bb5f7d92dabff169e93.tar.bz2 |
score: Add CPU counter support
Add a CPU counter interface to allow access to a free-running counter.
It is useful to measure short time intervals. This can be used for
example to enable profiling of critical low-level functions.
Add two busy wait functions rtems_counter_delay_ticks() and
rtems_counter_delay_nanoseconds() implemented via the CPU counter.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/ep1a')
-rw-r--r-- | c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c b/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c index a76657936c..b22a743843 100644 --- a/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/ep1a/startup/bspstart.c @@ -27,6 +27,7 @@ #include <libcpu/cpuIdent.h> #include <bsp/vectors.h> #include <rtems/powerpc/powerpc.h> +#include <rtems/counter.h> extern unsigned long __bss_start[], __SBSS_START__[], __SBSS_END__[]; extern unsigned long __SBSS2_START__[], __SBSS2_END__[]; @@ -300,6 +301,9 @@ void bsp_start( void ) Read_ep1a_config_registers( myCpu ); bsp_clicks_per_usec = BSP_processor_frequency/(BSP_time_base_divisor * 1000); + rtems_counter_initialize_converter( + BSP_processor_frequency / (BSP_time_base_divisor / 1000) + ); ShowBATS(); #if 0 /* XXX - Add back in cache enable when we get this up and running!! */ |