diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-05-23 14:17:25 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-06-15 13:02:44 +0200 |
commit | 65f868cac6f7fd5c3ad02046574c19f8f4673255 (patch) | |
tree | 15103fb87ed2e7161c17006e2c077f35e3506a95 /bsps/powerpc/qoriq | |
parent | Add RTEMS_SYSINIT_CPU_COUNTER (diff) | |
download | rtems-65f868cac6f7fd5c3ad02046574c19f8f4673255.tar.bz2 |
Add _CPU_Counter_frequency()
Add rtems_counter_frequency() API function. Use it to initialize the
counter value converter via the new system initialization step
(RTEMS_SYSINIT_CPU_COUNTER). This decouples the counter implementation
and the counter converter. It avoids an unnecessary pull in of the
64-bit integer division from libgcc.
Update #3456.
Diffstat (limited to 'bsps/powerpc/qoriq')
-rw-r--r-- | bsps/powerpc/qoriq/start/bspstart.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/bsps/powerpc/qoriq/start/bspstart.c b/bsps/powerpc/qoriq/start/bspstart.c index 7d9fa0d3c7..cc7902428b 100644 --- a/bsps/powerpc/qoriq/start/bspstart.c +++ b/bsps/powerpc/qoriq/start/bspstart.c @@ -54,6 +54,15 @@ uint32_t bsp_time_base_frequency; uint32_t qoriq_clock_frequency; +uint32_t _CPU_Counter_frequency(void) +{ +#ifdef __PPC_CPU_E6500__ + return qoriq_clock_frequency; +#else + return bsp_time_base_frequency; +#endif +} + static void initialize_frequency_parameters(void) { const void *fdt = bsp_fdt_get(); @@ -82,7 +91,6 @@ static void initialize_frequency_parameters(void) } qoriq_clock_frequency = fdt32_to_cpu(*val_fdt); #endif - rtems_counter_initialize_converter(fdt32_to_cpu(*val_fdt)); } #define MTIVPR(base) \ |