From 3e02a472baf7764e37825257490e90df0487a778 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 2 Jul 2015 12:04:50 +0200 Subject: bsp/qoriq: Enable branch prediction for T series --- c/src/lib/libbsp/powerpc/qoriq/configure.ac | 4 ++++ c/src/lib/libbsp/powerpc/qoriq/start/start.S | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/c/src/lib/libbsp/powerpc/qoriq/configure.ac b/c/src/lib/libbsp/powerpc/qoriq/configure.ac index 409ac193c4..3cf8547d5b 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/configure.ac +++ b/c/src/lib/libbsp/powerpc/qoriq/configure.ac @@ -146,6 +146,10 @@ RTEMS_BSPOPTS_SET([QORIQ_INITIAL_SPEFSCR],[qoriq_t*],[]) RTEMS_BSPOPTS_SET([QORIQ_INITIAL_SPEFSCR],[*],[0x00000000]) RTEMS_BSPOPTS_HELP([QORIQ_INITIAL_SPEFSCR],[initial SPEFSCR value]) +RTEMS_BSPOPTS_SET([QORIQ_INITIAL_BUCSR],[qoriq_t*],[0x01400201]) +RTEMS_BSPOPTS_SET([QORIQ_INITIAL_BUCSR],[*],[]) +RTEMS_BSPOPTS_HELP([QORIQ_INITIAL_BUCSR],[initial BUCSR value]) + RTEMS_BSPOPTS_SET([QORIQ_MMU_DEVICE_MAS7],[qoriq_t*],[0xf]) RTEMS_BSPOPTS_SET([QORIQ_MMU_DEVICE_MAS7],[*],[0x0]) RTEMS_BSPOPTS_HELP([QORIQ_MMU_DEVICE_MAS7],[MAS7 value for device TLB1 entries]) diff --git a/c/src/lib/libbsp/powerpc/qoriq/start/start.S b/c/src/lib/libbsp/powerpc/qoriq/start/start.S index 6b2187c1be..8a073bf09e 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/start/start.S +++ b/c/src/lib/libbsp/powerpc/qoriq/start/start.S @@ -66,6 +66,13 @@ _start: ori r0, INITIAL_MSR, MSR_IS | MSR_DS mtmsr r0 +#ifdef QORIQ_INITIAL_BUCSR + /* BUCSR initialization */ + LWI r0, QORIQ_INITIAL_BUCSR + mtspr FSL_EIS_BUCSR, r0 + isync +#endif + /* Initialize start stack */ LWI r1, start_stack_end - PPC_MINIMUM_STACK_FRAME_SIZE clrrwi r1, r1, PPC_STACK_ALIGN_POWER @@ -210,6 +217,13 @@ _start_secondary_processor: ori r0, INITIAL_MSR, MSR_IS | MSR_DS mtmsr r0 +#ifdef QORIQ_INITIAL_BUCSR + /* BUCSR initialization */ + LWI r0, QORIQ_INITIAL_BUCSR + mtspr FSL_EIS_BUCSR, r0 + isync +#endif + /* Initialize start stack */ subi r1, r1, PPC_MINIMUM_STACK_FRAME_SIZE clrrwi r1, r1, PPC_STACK_ALIGN_POWER -- cgit v1.2.3