From 28b38f3c3073a2edf7daa7140c5db204fa3645ff Mon Sep 17 00:00:00 2001 From: Thomas Doerfler Date: Thu, 25 Feb 2010 11:01:35 +0000 Subject: combine all checks for missing MAC address enable FPU, if POSIX init task present explicitly disable all edge port interrupts --- c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c | 10 +++++----- c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c | 4 ++++ 2 files changed, 9 insertions(+), 5 deletions(-) (limited to 'c/src/lib/libbsp/m68k/genmcf548x/startup') diff --git a/c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c b/c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c index 9bd57c9abb..67774a2ad7 100644 --- a/c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c @@ -274,11 +274,11 @@ void bsp_start( void ) _CPU_cacr_shadow = BSP_CACR_INIT; /* Switch on FPU in CACR shadow register if necessary */ - if ( - Configuration_RTEMS_API.User_initialization_tasks_table != NULL && - (Configuration_RTEMS_API.User_initialization_tasks_table->attribute_set - & RTEMS_FLOATING_POINT) != 0 - ) { + if ((Configuration_POSIX_API.number_of_initialization_threads > 0) || + ((Configuration_RTEMS_API.number_of_initialization_tasks > 0) && + (Configuration_RTEMS_API.User_initialization_tasks_table + ->attribute_set & RTEMS_FLOATING_POINT) != 0) + ) { _CPU_cacr_shadow &= ~MCF548X_CACR_DF; } diff --git a/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c b/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c index 21923deef9..7f2646d7d3 100644 --- a/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c +++ b/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c @@ -321,4 +321,8 @@ gpio_init(void) ); #endif + /* + * make sure the "edge port" has all interrupts disabled + */ + MCF548X_EPORT_EPIER = 0; } -- cgit v1.2.3