[rtems commit] powerpc: Use alternate time base for CPU counter
Sebastian Huber
sebh at rtems.org
Fri Jan 9 13:09:38 UTC 2015
Module: rtems
Branch: master
Commit: bb7bd148ba4bcbc2b1a1e4d17118c4c4b5464f9b
Changeset: http://git.rtems.org/rtems/commit/?id=bb7bd148ba4bcbc2b1a1e4d17118c4c4b5464f9b
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Mon Dec 22 11:46:17 2014 +0100
powerpc: Use alternate time base for CPU counter
---
c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c | 2 +-
cpukit/score/cpu/powerpc/rtems/score/cpu.h | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c b/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c
index 43caabb..364d8af 100644
--- a/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c
@@ -89,8 +89,8 @@ void bsp_start(void)
#ifdef HAS_UBOOT
BSP_bus_frequency = bsp_uboot_board_info.bi_busfreq;
bsp_clicks_per_usec = bsp_uboot_board_info.bi_busfreq / 8000000;
+ rtems_counter_initialize_converter(bsp_uboot_board_info.bi_intfreq);
#endif /* HAS_UBOOT */
- rtems_counter_initialize_converter(BSP_bus_frequency / 8);
/* Initialize some console parameters */
for (i = 0; i < console_device_count; ++i) {
diff --git a/cpukit/score/cpu/powerpc/rtems/score/cpu.h b/cpukit/score/cpu/powerpc/rtems/score/cpu.h
index 15854d5..2d3f05f 100644
--- a/cpukit/score/cpu/powerpc/rtems/score/cpu.h
+++ b/cpukit/score/cpu/powerpc/rtems/score/cpu.h
@@ -782,9 +782,9 @@ static inline CPU_Counter_ticks _CPU_Counter_read( void )
{
CPU_Counter_ticks value;
-#ifdef ppc8540
- /* Book E has no mftb */
- __asm__ volatile( "mfspr %0, 268" : "=r" (value) );
+#if defined(ppc8540) || defined(__PPC_CPU_E6500__)
+ /* Use Alternate Time Base */
+ __asm__ volatile( "mfspr %0, 526" : "=r" (value) );
#else
__asm__ volatile( "mftb %0" : "=r" (value) );
#endif
More information about the vc
mailing list