forked from Imagelibrary/rtems
bsps/powerpc: Simplify ppc_exc_initialize()
Remove parameters from ppc_exc_initialize() since all BSPs passed the same values. Update #3459.
This commit is contained in:
@@ -177,8 +177,6 @@ void bsp_start( void )
|
|||||||
{
|
{
|
||||||
unsigned char *stack;
|
unsigned char *stack;
|
||||||
char *chpt;
|
char *chpt;
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
|
|
||||||
Triv121PgTbl pt=0;
|
Triv121PgTbl pt=0;
|
||||||
|
|
||||||
@@ -231,21 +229,7 @@ void bsp_start( void )
|
|||||||
|
|
||||||
*((uint32_t *)stack) = 0;
|
*((uint32_t *)stack) = 0;
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings
|
|
||||||
* SPRG0 = interrupt nesting level count
|
|
||||||
* SPRG1 = software managed IRQ stack
|
|
||||||
*
|
|
||||||
* This could be done latter (e.g in IRQ_INIT) but it helps to understand
|
|
||||||
* some settings below...
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t)_Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers. See vectors/vectors_init.c
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
printk("CPU: %s\n", get_ppc_cpu_type_name(current_ppc_cpu));
|
printk("CPU: %s\n", get_ppc_cpu_type_name(current_ppc_cpu));
|
||||||
|
|
||||||
|
|||||||
@@ -153,13 +153,10 @@ void bsp_start(void)
|
|||||||
|
|
||||||
/* Initialize exception handler */
|
/* Initialize exception handler */
|
||||||
ppc_exc_cache_wb_check = 0;
|
ppc_exc_cache_wb_check = 0;
|
||||||
ppc_exc_initialize(
|
ppc_exc_initialize();
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
|
||||||
ppc_exc_set_handler(ASM_ALIGN_VECTOR, ppc_exc_alignment_handler);
|
ppc_exc_set_handler(ASM_ALIGN_VECTOR, ppc_exc_alignment_handler);
|
||||||
|
|
||||||
/* Initalize interrupt support */
|
/* Initialize interrupt support */
|
||||||
bsp_interrupt_initialize();
|
bsp_interrupt_initialize();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -113,10 +113,7 @@ void bsp_start( void)
|
|||||||
#ifndef BSP_DATA_CACHE_ENABLED
|
#ifndef BSP_DATA_CACHE_ENABLED
|
||||||
ppc_exc_cache_wb_check = 0;
|
ppc_exc_cache_wb_check = 0;
|
||||||
#endif
|
#endif
|
||||||
ppc_exc_initialize(
|
ppc_exc_initialize();
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
|
||||||
|
|
||||||
/* Install default handler for the decrementer exception */
|
/* Install default handler for the decrementer exception */
|
||||||
sc = ppc_exc_set_handler( ASM_DEC_VECTOR, mpc83xx_decrementer_exception_handler);
|
sc = ppc_exc_set_handler( ASM_DEC_VECTOR, mpc83xx_decrementer_exception_handler);
|
||||||
|
|||||||
@@ -181,13 +181,7 @@ void bsp_start( void )
|
|||||||
/* timebase register ticks/microsecond = CPU Clk in MHz */
|
/* timebase register ticks/microsecond = CPU Clk in MHz */
|
||||||
bsp_clicks_per_usec = 400;
|
bsp_clicks_per_usec = 400;
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(
|
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Install our own set of exception vectors
|
* Install our own set of exception vectors
|
||||||
|
|||||||
@@ -300,11 +300,9 @@ rtems_status_code ppc_exc_make_prologue(
|
|||||||
size_t *prologue_size
|
size_t *prologue_size
|
||||||
);
|
);
|
||||||
|
|
||||||
static inline void ppc_exc_initialize_interrupt_stack(
|
static inline void ppc_exc_initialize_interrupt_stack(uintptr_t stack_begin)
|
||||||
uintptr_t stack_begin,
|
|
||||||
uintptr_t stack_size
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
|
uintptr_t stack_size = rtems_configuration_get_interrupt_stack_size();
|
||||||
uintptr_t stack_end = stack_begin + stack_size;
|
uintptr_t stack_end = stack_begin + stack_size;
|
||||||
uintptr_t stack_pointer = stack_end - PPC_MINIMUM_STACK_FRAME_SIZE;
|
uintptr_t stack_pointer = stack_end - PPC_MINIMUM_STACK_FRAME_SIZE;
|
||||||
|
|
||||||
@@ -326,7 +324,6 @@ static inline void ppc_exc_initialize_interrupt_stack(
|
|||||||
*/
|
*/
|
||||||
void ppc_exc_initialize_with_vector_base(
|
void ppc_exc_initialize_with_vector_base(
|
||||||
uintptr_t interrupt_stack_begin,
|
uintptr_t interrupt_stack_begin,
|
||||||
uintptr_t interrupt_stack_size,
|
|
||||||
void *vector_base
|
void *vector_base
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -343,14 +340,10 @@ void ppc_exc_initialize_with_vector_base(
|
|||||||
* SVR4/EABI, or
|
* SVR4/EABI, or
|
||||||
* - the minimal prologue creation failed.
|
* - the minimal prologue creation failed.
|
||||||
*/
|
*/
|
||||||
static inline void ppc_exc_initialize(
|
static inline void ppc_exc_initialize(void)
|
||||||
uintptr_t interrupt_stack_begin,
|
|
||||||
uintptr_t interrupt_stack_size
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
ppc_exc_initialize_with_vector_base(
|
ppc_exc_initialize_with_vector_base(
|
||||||
interrupt_stack_begin,
|
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
||||||
interrupt_stack_size,
|
|
||||||
NULL
|
NULL
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -135,8 +135,6 @@ void bsp_start( void )
|
|||||||
#if !defined(mvme2100)
|
#if !defined(mvme2100)
|
||||||
unsigned l2cr;
|
unsigned l2cr;
|
||||||
#endif
|
#endif
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
prep_t boardManufacturer;
|
prep_t boardManufacturer;
|
||||||
motorolaBoard myBoard;
|
motorolaBoard myBoard;
|
||||||
Triv121PgTbl pt=0;
|
Triv121PgTbl pt=0;
|
||||||
@@ -217,16 +215,7 @@ void bsp_start( void )
|
|||||||
set_L2CR(0xb9A14000);
|
set_L2CR(0xb9A14000);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t)_Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
boardManufacturer = checkPrepBoardType(&residualCopy);
|
boardManufacturer = checkPrepBoardType(&residualCopy);
|
||||||
if (boardManufacturer != PREP_Motorola) {
|
if (boardManufacturer != PREP_Motorola) {
|
||||||
@@ -242,7 +231,6 @@ void bsp_start( void )
|
|||||||
#ifdef SHOW_MORE_INIT_SETTINGS
|
#ifdef SHOW_MORE_INIT_SETTINGS
|
||||||
printk("Residuals are located at %x\n", (unsigned) &residualCopy);
|
printk("Residuals are located at %x\n", (unsigned) &residualCopy);
|
||||||
printk("Additionnal boot options are %s\n", loaderParam);
|
printk("Additionnal boot options are %s\n", loaderParam);
|
||||||
printk("Software IRQ stack starts at %x with size %u\n", intrStackStart, intrStackSize);
|
|
||||||
printk("-----------------------------------------\n");
|
printk("-----------------------------------------\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -88,14 +88,10 @@ void bsp_start(void)
|
|||||||
/* Time reference value */
|
/* Time reference value */
|
||||||
bsp_clicks_per_usec = bsp_clock_speed / 1000000;
|
bsp_clicks_per_usec = bsp_clock_speed / 1000000;
|
||||||
|
|
||||||
/* Initialize exceptions */
|
|
||||||
ppc_exc_initialize_with_vector_base(
|
ppc_exc_initialize_with_vector_base(
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
||||||
rtems_configuration_get_interrupt_stack_size(),
|
|
||||||
mpc55xx_exc_vector_base
|
mpc55xx_exc_vector_base
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Initialize interrupts */
|
|
||||||
bsp_interrupt_initialize();
|
bsp_interrupt_initialize();
|
||||||
|
|
||||||
#if MPC55XX_CHIP_FAMILY != 566
|
#if MPC55XX_CHIP_FAMILY != 566
|
||||||
|
|||||||
@@ -138,13 +138,7 @@ void bsp_start(void)
|
|||||||
mmu_init();
|
mmu_init();
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Initialize exception handler */
|
ppc_exc_initialize();
|
||||||
ppc_exc_initialize(
|
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
|
||||||
|
|
||||||
/* Initalize interrupt support */
|
|
||||||
bsp_interrupt_initialize();
|
bsp_interrupt_initialize();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -210,8 +210,6 @@ SPR_RW(HID1)
|
|||||||
void bsp_start( void )
|
void bsp_start( void )
|
||||||
{
|
{
|
||||||
unsigned char *stack;
|
unsigned char *stack;
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
char *chpt;
|
char *chpt;
|
||||||
int i;
|
int i;
|
||||||
ppc_cpu_id_t myCpu;
|
ppc_cpu_id_t myCpu;
|
||||||
@@ -252,23 +250,13 @@ VpdBufRec vpdData [] = {
|
|||||||
/* tag the bottom */
|
/* tag the bottom */
|
||||||
*((uint32_t*)stack) = 0;
|
*((uint32_t*)stack) = 0;
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t) _Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
printk("CPU 0x%x - rev 0x%x\n", myCpu, myCpuRevision);
|
printk("CPU 0x%x - rev 0x%x\n", myCpu, myCpuRevision);
|
||||||
|
|
||||||
#ifdef SHOW_MORE_INIT_SETTINGS
|
#ifdef SHOW_MORE_INIT_SETTINGS
|
||||||
printk("Additionnal boot options are %s\n", BSP_commandline_string);
|
printk("Additionnal boot options are %s\n", BSP_commandline_string);
|
||||||
printk("Initial system stack at %" PRIxPTR "\n", (uintptr_t) stack);
|
printk("Initial system stack at %" PRIxPTR "\n", (uintptr_t) stack);
|
||||||
printk("Software IRQ stack starts at %x with size %u\n", intrStackStart, intrStackSize);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef SHOW_MORE_INIT_SETTINGS
|
#ifdef SHOW_MORE_INIT_SETTINGS
|
||||||
|
|||||||
@@ -188,8 +188,6 @@ void bsp_start( void )
|
|||||||
#ifdef SHOW_LCR3_REGISTER
|
#ifdef SHOW_LCR3_REGISTER
|
||||||
unsigned l3cr;
|
unsigned l3cr;
|
||||||
#endif
|
#endif
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
Triv121PgTbl pt=0;
|
Triv121PgTbl pt=0;
|
||||||
|
|
||||||
/* Till Straumann: 4/2005
|
/* Till Straumann: 4/2005
|
||||||
@@ -222,16 +220,7 @@ void bsp_start( void )
|
|||||||
printk("Initial L1CR value = %x\n", l1cr);
|
printk("Initial L1CR value = %x\n", l1cr);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t) _Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Init MMU block address translation to enable hardware
|
* Init MMU block address translation to enable hardware
|
||||||
|
|||||||
@@ -87,12 +87,8 @@ void bsp_start( void )
|
|||||||
bsp_clicks_per_usec = BSP_bus_frequency;
|
bsp_clicks_per_usec = BSP_bus_frequency;
|
||||||
BSP_time_base_divisor = 1;
|
BSP_time_base_divisor = 1;
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize_with_vector_base(
|
ppc_exc_initialize_with_vector_base(
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
||||||
rtems_configuration_get_interrupt_stack_size(),
|
|
||||||
(void *) 0xfff00000
|
(void *) 0xfff00000
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -66,8 +66,6 @@ uint32_t _CPU_Counter_frequency(void)
|
|||||||
void bsp_start( void )
|
void bsp_start( void )
|
||||||
{
|
{
|
||||||
rtems_status_code sc = RTEMS_SUCCESSFUL;
|
rtems_status_code sc = RTEMS_SUCCESSFUL;
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Note we can not get CPU identification dynamically, so
|
* Note we can not get CPU identification dynamically, so
|
||||||
@@ -84,18 +82,9 @@ void bsp_start( void )
|
|||||||
bsp_time_base_frequency = 20000000;
|
bsp_time_base_frequency = 20000000;
|
||||||
bsp_clicks_per_usec = BSP_bus_frequency;
|
bsp_clicks_per_usec = BSP_bus_frequency;
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t) _Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
BSP_mem_size = (uint32_t )RamSize;
|
BSP_mem_size = (uint32_t )RamSize;
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
/* Install default handler for the decrementer exception */
|
/* Install default handler for the decrementer exception */
|
||||||
sc = ppc_exc_set_handler( ASM_DEC_VECTOR, default_decrementer_exception_handler);
|
sc = ppc_exc_set_handler( ASM_DEC_VECTOR, default_decrementer_exception_handler);
|
||||||
|
|||||||
@@ -47,8 +47,7 @@ static bool is_started_by_u_boot(uint32_t cpu_index)
|
|||||||
void qoriq_start_thread(Per_CPU_Control *cpu_self)
|
void qoriq_start_thread(Per_CPU_Control *cpu_self)
|
||||||
{
|
{
|
||||||
ppc_exc_initialize_interrupt_stack(
|
ppc_exc_initialize_interrupt_stack(
|
||||||
(uintptr_t) cpu_self->interrupt_stack_low,
|
(uintptr_t) cpu_self->interrupt_stack_low
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
);
|
||||||
|
|
||||||
bsp_interrupt_facility_initialize();
|
bsp_interrupt_facility_initialize();
|
||||||
|
|||||||
@@ -113,8 +113,7 @@ void qoriq_initialize_exceptions(void *interrupt_stack_begin)
|
|||||||
uintptr_t addr;
|
uintptr_t addr;
|
||||||
|
|
||||||
ppc_exc_initialize_interrupt_stack(
|
ppc_exc_initialize_interrupt_stack(
|
||||||
(uintptr_t) interrupt_stack_begin,
|
(uintptr_t) interrupt_stack_begin
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
);
|
||||||
|
|
||||||
addr = (uintptr_t) bsp_exc_vector_base;
|
addr = (uintptr_t) bsp_exc_vector_base;
|
||||||
|
|||||||
@@ -82,7 +82,6 @@ static void ppc_exc_fatal_error(void)
|
|||||||
|
|
||||||
void ppc_exc_initialize_with_vector_base(
|
void ppc_exc_initialize_with_vector_base(
|
||||||
uintptr_t interrupt_stack_begin,
|
uintptr_t interrupt_stack_begin,
|
||||||
uintptr_t interrupt_stack_size,
|
|
||||||
void *vector_base
|
void *vector_base
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@@ -110,7 +109,7 @@ void ppc_exc_initialize_with_vector_base(
|
|||||||
ppc_exc_fatal_error();
|
ppc_exc_fatal_error();
|
||||||
}
|
}
|
||||||
|
|
||||||
ppc_exc_initialize_interrupt_stack(interrupt_stack_begin, interrupt_stack_size);
|
ppc_exc_initialize_interrupt_stack(interrupt_stack_begin);
|
||||||
|
|
||||||
#ifndef PPC_EXC_CONFIG_BOOKE_ONLY
|
#ifndef PPC_EXC_CONFIG_BOOKE_ONLY
|
||||||
|
|
||||||
|
|||||||
@@ -26,8 +26,7 @@ static void bsp_work_area_initialize_later(void)
|
|||||||
uintptr_t work_size;
|
uintptr_t work_size;
|
||||||
uintptr_t work_area;
|
uintptr_t work_area;
|
||||||
|
|
||||||
work_area = (uintptr_t)__rtems_end +
|
work_area = (uintptr_t)__rtems_end;
|
||||||
rtems_configuration_get_interrupt_stack_size();
|
|
||||||
work_size = (uintptr_t)BSP_mem_size - work_area;
|
work_size = (uintptr_t)BSP_mem_size - work_area;
|
||||||
|
|
||||||
bsp_work_area_initialize_default((void *) work_area, work_size);
|
bsp_work_area_initialize_default((void *) work_area, work_size);
|
||||||
|
|||||||
@@ -49,8 +49,7 @@ static void t32mppc_initialize_exceptions(void)
|
|||||||
uintptr_t addr;
|
uintptr_t addr;
|
||||||
|
|
||||||
ppc_exc_initialize_interrupt_stack(
|
ppc_exc_initialize_interrupt_stack(
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
(uintptr_t) _Configuration_Interrupt_stack_area_begin
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
);
|
||||||
|
|
||||||
addr = (uintptr_t) bsp_exc_vector_base;
|
addr = (uintptr_t) bsp_exc_vector_base;
|
||||||
|
|||||||
@@ -143,13 +143,7 @@ void bsp_start( void)
|
|||||||
bsp_time_base_frequency = BSP_bus_frequency / 16;
|
bsp_time_base_frequency = BSP_bus_frequency / 16;
|
||||||
bsp_clicks_per_usec = bsp_time_base_frequency / 1000000;
|
bsp_clicks_per_usec = bsp_time_base_frequency / 1000000;
|
||||||
|
|
||||||
/* Initialize exception handler */
|
ppc_exc_initialize();
|
||||||
ppc_exc_initialize(
|
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
|
||||||
rtems_configuration_get_interrupt_stack_size()
|
|
||||||
);
|
|
||||||
|
|
||||||
/* Initalize interrupt support */
|
|
||||||
bsp_interrupt_initialize();
|
bsp_interrupt_initialize();
|
||||||
|
|
||||||
#ifdef SHOW_MORE_INIT_SETTINGS
|
#ifdef SHOW_MORE_INIT_SETTINGS
|
||||||
|
|||||||
@@ -94,12 +94,8 @@ void bsp_start( void )
|
|||||||
get_ppc_cpu_type();
|
get_ppc_cpu_type();
|
||||||
get_ppc_cpu_revision();
|
get_ppc_cpu_revision();
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialize default raw exception handlers.
|
|
||||||
*/
|
|
||||||
ppc_exc_initialize_with_vector_base(
|
ppc_exc_initialize_with_vector_base(
|
||||||
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
(uintptr_t) _Configuration_Interrupt_stack_area_begin,
|
||||||
rtems_configuration_get_interrupt_stack_size(),
|
|
||||||
virtex_exc_vector_base
|
virtex_exc_vector_base
|
||||||
);
|
);
|
||||||
__asm__ volatile ("mtevpr %0" : : "r" (virtex_exc_vector_base));
|
__asm__ volatile ("mtevpr %0" : : "r" (virtex_exc_vector_base));
|
||||||
|
|||||||
@@ -141,9 +141,6 @@ uint32_t _CPU_Counter_frequency(void)
|
|||||||
*/
|
*/
|
||||||
void bsp_start(void)
|
void bsp_start(void)
|
||||||
{
|
{
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
|
|
||||||
ppc_cpu_id_t myCpu;
|
ppc_cpu_id_t myCpu;
|
||||||
ppc_cpu_revision_t myCpuRevision;
|
ppc_cpu_revision_t myCpuRevision;
|
||||||
|
|
||||||
@@ -168,25 +165,17 @@ void bsp_start(void)
|
|||||||
/* Timebase register ticks/microsecond; The application may override these */
|
/* Timebase register ticks/microsecond; The application may override these */
|
||||||
bsp_clicks_per_usec = 350;
|
bsp_clicks_per_usec = 350;
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t) _Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
/* Let the user know what parameters we were compiled with */
|
/* Let the user know what parameters we were compiled with */
|
||||||
printk(" Base/Start End Size\n"
|
printk(" Base/Start End Size\n"
|
||||||
"RAM: %p %p\n"
|
"RAM: %p %p\n"
|
||||||
"RTEMS: %p\n"
|
"RTEMS: %p\n"
|
||||||
"Interrupt Stack: 0x%08x 0x%x\n"
|
|
||||||
"Workspace: %p %p\n"
|
"Workspace: %p %p\n"
|
||||||
"MsgArea: %p %p\n"
|
"MsgArea: %p %p\n"
|
||||||
"Physical RAM %p\n",
|
"Physical RAM %p\n",
|
||||||
RamBase, RamSize,
|
RamBase, RamSize,
|
||||||
__rtems_end,
|
__rtems_end,
|
||||||
intrStackStart, intrStackSize,
|
|
||||||
WorkAreaBase, __bsp_ram_end,
|
WorkAreaBase, __bsp_ram_end,
|
||||||
MsgAreaBase, MsgAreaSize,
|
MsgAreaBase, MsgAreaSize,
|
||||||
__phy_ram_end);
|
__phy_ram_end);
|
||||||
|
|||||||
@@ -155,9 +155,6 @@ uint32_t _CPU_Counter_frequency(void)
|
|||||||
*/
|
*/
|
||||||
void bsp_start(void)
|
void bsp_start(void)
|
||||||
{
|
{
|
||||||
uintptr_t intrStackStart;
|
|
||||||
uintptr_t intrStackSize;
|
|
||||||
|
|
||||||
ppc_cpu_id_t myCpu;
|
ppc_cpu_id_t myCpu;
|
||||||
ppc_cpu_revision_t myCpuRevision;
|
ppc_cpu_revision_t myCpuRevision;
|
||||||
|
|
||||||
@@ -187,25 +184,17 @@ void bsp_start(void)
|
|||||||
/* Timebase register ticks/microsecond; The application may override these */
|
/* Timebase register ticks/microsecond; The application may override these */
|
||||||
bsp_clicks_per_usec = BSP_bus_frequency/(BSP_time_base_divisor * 1000);
|
bsp_clicks_per_usec = BSP_bus_frequency/(BSP_time_base_divisor * 1000);
|
||||||
|
|
||||||
/*
|
ppc_exc_initialize();
|
||||||
* Initialize the interrupt related settings.
|
|
||||||
*/
|
|
||||||
intrStackStart = (uintptr_t)_Configuration_Interrupt_stack_area_begin;
|
|
||||||
intrStackSize = rtems_configuration_get_interrupt_stack_size();
|
|
||||||
|
|
||||||
ppc_exc_initialize(intrStackStart, intrStackSize);
|
|
||||||
|
|
||||||
/* Let the user know what parameters we were compiled with */
|
/* Let the user know what parameters we were compiled with */
|
||||||
printk(" Base/Start End Size\n"
|
printk(" Base/Start End Size\n"
|
||||||
"RAM: %p %p\n"
|
"RAM: %p %p\n"
|
||||||
"RTEMS: %p\n"
|
"RTEMS: %p\n"
|
||||||
"Interrupt Stack: 0x%08x 0x%x\n"
|
|
||||||
"Workspace: %p %p\n"
|
"Workspace: %p %p\n"
|
||||||
"MsgArea: %p %p\n"
|
"MsgArea: %p %p\n"
|
||||||
"Physical RAM %p\n",
|
"Physical RAM %p\n",
|
||||||
RamBase, RamSize,
|
RamBase, RamSize,
|
||||||
__rtems_end,
|
__rtems_end,
|
||||||
intrStackStart, intrStackSize,
|
|
||||||
WorkAreaBase, __bsp_ram_end,
|
WorkAreaBase, __bsp_ram_end,
|
||||||
MsgAreaBase, MsgAreaSize,
|
MsgAreaBase, MsgAreaSize,
|
||||||
__phy_ram_end);
|
__phy_ram_end);
|
||||||
|
|||||||
Reference in New Issue
Block a user