Changeset f6999e6 in rtems


Ignore:
Timestamp:
Nov 21, 2012, 8:54:12 AM (7 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, master
Children:
fe1a4e4b
Parents:
c383372
git-author:
Sebastian Huber <sebastian.huber@…> (11/21/12 08:54:12)
git-committer:
Sebastian Huber <sebastian.huber@…> (12/03/12 12:17:09)
Message:

bsp/qoriq: Set PPC_EXC_CONFIG_USE_FIXED_HANDLER

Location:
c/src/lib/libbsp/powerpc/qoriq
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/powerpc/qoriq/Makefile.am

    rc383372 rf6999e6  
    6565        ../../shared/bspgetworkarea.c \
    6666        ../../shared/src/bsp-uboot-board-info.c \
     67        ../shared/src/ppc-exc-handler-table.c \
    6768        ../shared/src/tictac.c \
    6869        ../shared/src/bsp-start-zero.S \
  • c/src/lib/libbsp/powerpc/qoriq/configure.ac

    rc383372 rf6999e6  
    2020RTEMS_BSPOPTS_SET([BSP_USE_DATA_CACHE_BLOCK_TOUCH],[*],[1])
    2121RTEMS_BSPOPTS_HELP([BSP_USE_DATA_CACHE_BLOCK_TOUCH],[if defined use dcbt instruction])
     22
     23RTEMS_BSPOPTS_SET([PPC_EXC_CONFIG_USE_FIXED_HANDLER],[*],[1])
     24RTEMS_BSPOPTS_HELP([PPC_EXC_CONFIG_USE_FIXED_HANDLER],
     25[use fixed high-level exception handler])
    2226
    2327RTEMS_BSPOPTS_SET([BSP_CONSOLE_BAUD],[*],[115200])
  • c/src/lib/libbsp/powerpc/qoriq/irq/irq.c

    rc383372 rf6999e6  
    88
    99/*
    10  * Copyright (c) 2010, 2011 embedded brains GmbH.  All rights reserved.
     10 * Copyright (c) 2010, 2012 embedded brains GmbH.  All rights reserved.
    1111 *
    1212 *  embedded brains GmbH
     
    241241}
    242242
    243 static int qoriq_external_exception_handler(BSP_Exception_frame *frame, unsigned exception_number)
     243static void qoriq_interrupt_dispatch(void)
    244244{
    245245        rtems_vector_number vector = qoriq.pic.iack;
     
    257257                bsp_interrupt_handler_default(vector);
    258258        }
     259}
     260
     261#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER
     262static int qoriq_external_exception_handler(BSP_Exception_frame *frame, unsigned exception_number)
     263{
     264        qoriq_interrupt_dispatch();
    259265
    260266        return 0;
    261267}
     268#else
     269void bsp_interrupt_dispatch(void)
     270{
     271        qoriq_interrupt_dispatch();
     272}
     273#endif
    262274
    263275static bool pic_is_ipi(rtems_vector_number vector)
     
    292304        uint32_t processor_id = ppc_processor_id();
    293305
     306#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER
    294307        if (ppc_exc_set_handler(ASM_EXT_VECTOR, qoriq_external_exception_handler)) {
    295308                return RTEMS_IO_ERROR;
    296309        }
     310#endif
    297311
    298312        if (processor_id == 0) {
  • c/src/lib/libbsp/powerpc/qoriq/start/start.S

    rc383372 rf6999e6  
    88
    99/*
    10  * Copyright (c) 2010-2011 embedded brains GmbH.  All rights reserved.
     10 * Copyright (c) 2010-2012 embedded brains GmbH.  All rights reserved.
    1111 *
    1212 *  embedded brains GmbH
     
    179179        b       ppc_exc_wrap_nopush_std
    180180        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
     181#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER
    181182        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
    182183        li      r4, -32763
     184#endif
    183185        b       ppc_exc_wrap_async_normal
     186#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER
     187        nop
     188        nop
     189#endif
    184190        stwu    r1, -EXC_GENERIC_SIZE(r1)
    185191        stw     r4, GPR4_OFFSET(r1)
     
    204210        b       ppc_exc_wrap_nopush_std
    205211        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
     212#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER
    206213        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
    207214        li      r4, -32752
     215#endif
    208216        b       ppc_exc_wrap_async_normal
     217#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER
     218        nop
     219        nop
     220#endif
    209221        stwu    r1, -PPC_EXC_MINIMAL_FRAME_SIZE(r1)
     222#ifndef PPC_EXC_CONFIG_USE_FIXED_HANDLER
    210223        stw     r4, PPC_EXC_VECTOR_PROLOGUE_OFFSET(r1)
    211224        li      r4, -32749
     225#endif
    212226        b       ppc_exc_wrap_async_normal
     227#ifdef PPC_EXC_CONFIG_USE_FIXED_HANDLER
     228        nop
     229        nop
     230#endif
    213231        stw     r1, ppc_exc_lock_crit@sdarel(r13)
    214232        stw     r4, ppc_exc_vector_register_crit@sdarel(r13)
Note: See TracChangeset for help on using the changeset viewer.