diff options
| -rw-r--r-- | demos/ARM7-AT91SAM7X-GCC/Makefile | 2 | ||||
| -rw-r--r-- | demos/ARM7-AT91SAM7X-GCC/Makefile.thumb | 2 | ||||
| -rw-r--r-- | demos/ARM7-LPC214x-GCC/Makefile.thumb | 2 | ||||
| -rw-r--r-- | ports/ARM7-AT91SAM7X/chcore.c | 69 | ||||
| -rw-r--r-- | ports/ARM7-AT91SAM7X/wfi.h | 35 | ||||
| -rw-r--r-- | ports/ARM7-LPC214x/wfi.h | 35 | 
6 files changed, 73 insertions, 72 deletions
| diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile b/demos/ARM7-AT91SAM7X-GCC/Makefile index effdd4aba..65219c2da 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile @@ -69,7 +69,7 @@ include ../../src/kernel.mk  include ../../test/test.mk
  # List ARM-mode C source files here
 -ASRC = ../../ports/ARM7-AT91SAM7X/chcore.c \
 +ASRC = ../../ports/ARM7/chcore.c \
         ../../ports/ARM7-AT91SAM7X/sam7x_serial.c \
         ${KERNSRC} \
         ${TESTSRC} \
 diff --git a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb index d0e92d4b8..6d06e82a7 100644 --- a/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb +++ b/demos/ARM7-AT91SAM7X-GCC/Makefile.thumb @@ -74,7 +74,7 @@ ASRC =  # List THUMB-mode C sources here
  # NOTE: If any module is compiled in thumb mode then -mthumb-interwork is
  #       enabled for all modules and that lowers performance.
 -TSRC = ../../ports/ARM7-AT91SAM7X/chcore.c \
 +TSRC = ../../ports/ARM7/chcore.c \
         ../../ports/ARM7-AT91SAM7X/sam7x_serial.c \
         ${KERNSRC} \
         ${TESTSRC} \
 diff --git a/demos/ARM7-LPC214x-GCC/Makefile.thumb b/demos/ARM7-LPC214x-GCC/Makefile.thumb index 769c6a174..aa3046c20 100644 --- a/demos/ARM7-LPC214x-GCC/Makefile.thumb +++ b/demos/ARM7-LPC214x-GCC/Makefile.thumb @@ -74,7 +74,7 @@ ASRC =  # List THUMB-mode C sources here
  # NOTE: If any module is compiled in thumb mode then -mthumb-interwork is
  #       enabled for all modules and that lowers performance.
 -TSRC = ../../ports/ARM7-LPC214x/chcore.c \
 +TSRC = ../../ports/ARM7/chcore.c \
         ../../ports/ARM7-LPC214x/vic.c  \
         ../../ports/ARM7-LPC214x/lpc214x_serial.c  \
         ../../ports/ARM7-LPC214x/lpc214x_ssp.c  \
 diff --git a/ports/ARM7-AT91SAM7X/chcore.c b/ports/ARM7-AT91SAM7X/chcore.c deleted file mode 100644 index f404efce1..000000000 --- a/ports/ARM7-AT91SAM7X/chcore.c +++ /dev/null @@ -1,69 +0,0 @@ -/*
 -    ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio.
 -
 -    This file is part of ChibiOS/RT.
 -
 -    ChibiOS/RT is free software; you can redistribute it and/or modify
 -    it under the terms of the GNU General Public License as published by
 -    the Free Software Foundation; either version 3 of the License, or
 -    (at your option) any later version.
 -
 -    ChibiOS/RT is distributed in the hope that it will be useful,
 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 -    GNU General Public License for more details.
 -
 -    You should have received a copy of the GNU General Public License
 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 -*/
 -
 -/**
 - * @addtogroup ARM7_CORE
 - * @{
 - */
 -
 -#include <ch.h>
 -
 -#include "at91lib/AT91SAM7X256.h"
 -
 -/*
 - * This file is a template of the system driver functions provided by a port.
 - * Some of the following functions may be implemented as macros in chcore.h if
 - * the implementer decides that there is an advantage in doing so, as example
 - * because performance concerns.
 - */
 -
 -/**
 - * Prints a message on the system console. - * @param msg pointer to the message - */
 -__attribute__((weak))
 -void sys_puts(char *msg) {
 -}
 -
 -/**
 - * Enters an architecture-dependent halt mode. The function is meant to return
 - * when an interrupt becomes pending.
 - */
 -__attribute__((weak))
 -void sys_wait_for_interrupt(void) {
 -
 -#if ENABLE_WFI_IDLE != 0
 -  AT91C_BASE_SYS->PMC_SCDR = AT91C_PMC_PCK;
 -#endif
 -}
 -
 -/**
 - * Halts the system. This function is invoked by the operating system when an
 - * unrecoverable error is detected (as example because a programming error in
 - * the application code that triggers an assertion while in debug mode). - */
 -__attribute__((weak))
 -void sys_halt(void) {
 -
 -  sys_disable_all();
 -  while (TRUE) {
 -  }
 -}
 -
 -/** @} */
 diff --git a/ports/ARM7-AT91SAM7X/wfi.h b/ports/ARM7-AT91SAM7X/wfi.h new file mode 100644 index 000000000..5e2da044d --- /dev/null +++ b/ports/ARM7-AT91SAM7X/wfi.h @@ -0,0 +1,35 @@ +/*
 +    ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio.
 +
 +    This file is part of ChibiOS/RT.
 +
 +    ChibiOS/RT is free software; you can redistribute it and/or modify
 +    it under the terms of the GNU General Public License as published by
 +    the Free Software Foundation; either version 3 of the License, or
 +    (at your option) any later version.
 +
 +    ChibiOS/RT is distributed in the hope that it will be useful,
 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +    GNU General Public License for more details.
 +
 +    You should have received a copy of the GNU General Public License
 +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 +*/
 +
 +#ifndef _WFI_H_
 +#define _WFI_H_
 +
 +#include "at91lib/AT91SAM7X256.h"
 +
 +#ifndef port_wait_for_interrupt
 +#if ENABLE_WFI_IDLE != 0
 +#define port_wait_for_interrupt() {                                     \
 +  AT91C_BASE_SYS->PMC_SCDR = AT91C_PMC_PCK;                             \
 +}
 +#else
 +#define port_wait_for_interrupt()
 +#endif
 +#endif
 +
 +#endif /* _WFI_H_ */
 diff --git a/ports/ARM7-LPC214x/wfi.h b/ports/ARM7-LPC214x/wfi.h new file mode 100644 index 000000000..bd3b5e7cd --- /dev/null +++ b/ports/ARM7-LPC214x/wfi.h @@ -0,0 +1,35 @@ +/*
 +    ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio.
 +
 +    This file is part of ChibiOS/RT.
 +
 +    ChibiOS/RT is free software; you can redistribute it and/or modify
 +    it under the terms of the GNU General Public License as published by
 +    the Free Software Foundation; either version 3 of the License, or
 +    (at your option) any later version.
 +
 +    ChibiOS/RT is distributed in the hope that it will be useful,
 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 +    GNU General Public License for more details.
 +
 +    You should have received a copy of the GNU General Public License
 +    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 +*/
 +
 +#ifndef _WFI_H_
 +#define _WFI_H_
 +
 +#include "lpc214x.h"
 +
 +#ifndef port_wait_for_interrupt
 +#if ENABLE_WFI_IDLE != 0
 +#define port_wait_for_interrupt() {                                     \
 +  PCON = 1;                                                             \
 +}
 +#else
 +#define port_wait_for_interrupt()
 +#endif
 +#endif
 +
 +#endif /* _WFI_H_ */
 | 
