From 9ae2d98866cace349fc40feac8cf0e8895d9c699 Mon Sep 17 00:00:00 2001 From: Aun-Ali Zaidi Date: Tue, 8 Dec 2015 13:51:44 -0600 Subject: m68k/mvme136: Remove closes #2444. --- c/src/lib/libbsp/m68k/acinclude.m4 | 2 - c/src/lib/libbsp/m68k/mvme136/Makefile.am | 62 ------- c/src/lib/libbsp/m68k/mvme136/bsp_specs | 13 -- c/src/lib/libbsp/m68k/mvme136/clock/ckinit.c | 114 ------------ c/src/lib/libbsp/m68k/mvme136/configure.ac | 20 -- c/src/lib/libbsp/m68k/mvme136/console/console.c | 173 ------------------ c/src/lib/libbsp/m68k/mvme136/include/bsp.h | 81 --------- c/src/lib/libbsp/m68k/mvme136/include/coverhd.h | 106 ----------- c/src/lib/libbsp/m68k/mvme136/include/tm27.h | 36 ---- .../mvme136/make/custom/mvme136-testsuite.tcfg | 7 - .../libbsp/m68k/mvme136/make/custom/mvme136.cfg | 26 --- c/src/lib/libbsp/m68k/mvme136/preinstall.am | 76 -------- c/src/lib/libbsp/m68k/mvme136/shmsupp/addrconv.c | 29 --- c/src/lib/libbsp/m68k/mvme136/shmsupp/getcfg.c | 82 --------- c/src/lib/libbsp/m68k/mvme136/shmsupp/lock.c | 71 -------- c/src/lib/libbsp/m68k/mvme136/shmsupp/mpisr.c | 39 ---- c/src/lib/libbsp/m68k/mvme136/startup/bspclean.c | 46 ----- c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c | 39 ---- c/src/lib/libbsp/m68k/mvme136/startup/linkcmds | 201 --------------------- c/src/lib/libbsp/m68k/mvme136/timer/timer.c | 85 --------- c/src/lib/libbsp/m68k/mvme136/timer/timerisr.S | 36 ---- c/src/lib/libbsp/m68k/mvme136/times | 189 ------------------- 22 files changed, 1533 deletions(-) delete mode 100644 c/src/lib/libbsp/m68k/mvme136/Makefile.am delete mode 100644 c/src/lib/libbsp/m68k/mvme136/bsp_specs delete mode 100644 c/src/lib/libbsp/m68k/mvme136/clock/ckinit.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/configure.ac delete mode 100644 c/src/lib/libbsp/m68k/mvme136/console/console.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/include/bsp.h delete mode 100644 c/src/lib/libbsp/m68k/mvme136/include/coverhd.h delete mode 100644 c/src/lib/libbsp/m68k/mvme136/include/tm27.h delete mode 100644 c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136-testsuite.tcfg delete mode 100644 c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136.cfg delete mode 100644 c/src/lib/libbsp/m68k/mvme136/preinstall.am delete mode 100644 c/src/lib/libbsp/m68k/mvme136/shmsupp/addrconv.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/shmsupp/getcfg.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/shmsupp/lock.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/shmsupp/mpisr.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/startup/bspclean.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/startup/linkcmds delete mode 100644 c/src/lib/libbsp/m68k/mvme136/timer/timer.c delete mode 100644 c/src/lib/libbsp/m68k/mvme136/timer/timerisr.S delete mode 100644 c/src/lib/libbsp/m68k/mvme136/times (limited to 'c') diff --git a/c/src/lib/libbsp/m68k/acinclude.m4 b/c/src/lib/libbsp/m68k/acinclude.m4 index f4b2ccf176..b755b66ff9 100644 --- a/c/src/lib/libbsp/m68k/acinclude.m4 +++ b/c/src/lib/libbsp/m68k/acinclude.m4 @@ -28,8 +28,6 @@ AC_DEFUN([RTEMS_CHECK_BSPDIR], AC_CONFIG_SUBDIRS([mcf5329]);; mrm332 ) AC_CONFIG_SUBDIRS([mrm332]);; - mvme136 ) - AC_CONFIG_SUBDIRS([mvme136]);; mvme147 ) AC_CONFIG_SUBDIRS([mvme147]);; mvme147s ) diff --git a/c/src/lib/libbsp/m68k/mvme136/Makefile.am b/c/src/lib/libbsp/m68k/mvme136/Makefile.am deleted file mode 100644 index 2dbaef49dd..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/Makefile.am +++ /dev/null @@ -1,62 +0,0 @@ -ACLOCAL_AMFLAGS = -I ../../../../aclocal - -include $(top_srcdir)/../../../../automake/compile.am - -include_bspdir = $(includedir)/bsp - -dist_project_lib_DATA = bsp_specs - -include_HEADERS = include/bsp.h -include_HEADERS += include/tm27.h - -nodist_include_HEADERS = include/bspopts.h -nodist_include_bsp_HEADERS = ../../shared/include/bootcard.h -DISTCLEANFILES = include/bspopts.h -noinst_PROGRAMS = - -include_HEADERS += include/coverhd.h - -## Zilog component header files -include_rtems_zilogdir = $(includedir)/rtems/zilog -include_rtems_zilog_HEADERS = ../../shared/include/zilog/z8036.h - -noinst_LIBRARIES = libbspstart.a -libbspstart_a_SOURCES = ../../m68k/shared/start/start.S -project_lib_DATA = start.$(OBJEXT) - -dist_project_lib_DATA += startup/linkcmds - -noinst_LIBRARIES += libbsp.a -libbsp_a_SOURCES = - -# startup -libbsp_a_SOURCES += startup/bspclean.c ../../shared/bsplibc.c \ - ../../shared/bsppost.c ../../shared/bsppredriverhook.c \ - startup/bspstart.c ../../shared/bootcard.c \ - ../../shared/bsppretaskinghook.c ../../shared/bspgetworkarea.c \ - ../../shared/sbrk.c ../../shared/setvec.c -# gnatsupp -libbsp_a_SOURCES += ../../shared/gnatinstallhandler.c -# clock -libbsp_a_SOURCES += clock/ckinit.c -# console -libbsp_a_SOURCES += console/console.c -# debugio -libbsp_a_SOURCES += ../../shared/dummy_printk_support.c -# timer -libbsp_a_SOURCES += timer/timer.c timer/timerisr.S - -if HAS_MP -# shmsupp -libbsp_a_SOURCES += shmsupp/addrconv.c shmsupp/getcfg.c shmsupp/lock.c \ - shmsupp/mpisr.c -endif - -libbsp_a_LIBADD = \ - ../../../libcpu/@RTEMS_CPU@/shared/cache.rel \ - ../../../libcpu/@RTEMS_CPU@/shared/misc.rel - -EXTRA_DIST = times - -include $(srcdir)/preinstall.am -include $(top_srcdir)/../../../../automake/local.am diff --git a/c/src/lib/libbsp/m68k/mvme136/bsp_specs b/c/src/lib/libbsp/m68k/mvme136/bsp_specs deleted file mode 100644 index 5154de8c55..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/bsp_specs +++ /dev/null @@ -1,13 +0,0 @@ -%rename endfile old_endfile -%rename startfile old_startfile -%rename link old_link - -*startfile: -%{!qrtems: %(old_startfile)} \ -%{!nostdlib: %{qrtems: start.o%s crti.o%s crtbegin.o%s -e start}} - -*link: -%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N} - -*endfile: -%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s} diff --git a/c/src/lib/libbsp/m68k/mvme136/clock/ckinit.c b/c/src/lib/libbsp/m68k/mvme136/clock/ckinit.c deleted file mode 100644 index 02115c431c..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/clock/ckinit.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * This routine initializes the Z80386 1 on the MVME136 board. - * The tick frequency is 1 millisecond. - */ - -/* - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include - -#include -#include - -#define MICRVAL 0xe2 /* disable lower chain, no vec */ - /* set right justified addr */ - /* and master int enable */ -#define MCCRVAL 0xc4 /* enable T1 and port B */ - /* timers independent */ -#define MS_COUNT 0x07d0 /* T1's countdown constant (1 ms) */ -#define T1MSRVAL 0x80 /* T1 cont. cycle/pulse output */ -#define T1CSRVAL 0xc6 /* enable interrupt, allow and */ - /* and trigger countdown */ - -#define TIMER 0xfffb0000 -#define RELOAD 0x24 /* clr IP & IUS,allow countdown */ - -#define CLOCK_VECTOR 66 - -uint32_t Clock_isrs; /* ISRs until next tick */ - -volatile uint32_t Clock_driver_ticks; /* ticks since initialization */ - -rtems_isr_entry Old_ticker; - -void Clock_exit( void ); - -/* - * ISR Handler - */ -static rtems_isr Clock_isr( - rtems_vector_number vector -) -{ - Clock_driver_ticks += 1; - ((volatile struct z8036_map *) TIMER)->CT1_CMD_STATUS = RELOAD; - - if ( Clock_isrs == 1 ) { - rtems_clock_tick(); - Clock_isrs = rtems_configuration_get_microseconds_per_tick() / 1000; - } - else - Clock_isrs -= 1; -} - -static void Install_clock( - rtems_isr_entry clock_isr -) -{ - volatile struct z8036_map *timer; - - Clock_driver_ticks = 0; - Clock_isrs = rtems_configuration_get_microseconds_per_tick() / 1000; - - Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 ); - timer = (struct z8036_map *) 0xfffb0000; - timer->MASTER_INTR = MICRVAL; - timer->CT1_MODE_SPEC = T1MSRVAL; - - *((uint16_t*)0xfffb0016) = MS_COUNT; /* write countdown value */ - - /* - * timer->CT1_TIME_CONST_MSB = (MS_COUNT >> 8); - * timer->CT1_TIME_CONST_LSB = (MS_COUNT & 0xff); - */ - - timer->MASTER_CFG = MCCRVAL; - timer->CT1_CMD_STATUS = T1CSRVAL; - - /* - * Enable interrupt via VME interrupt mask register - */ - (*(uint8_t*)0xfffb0038) &= 0xfd; - - atexit( Clock_exit ); -} - -void Clock_exit( void ) -{ - volatile struct z8036_map *timer; - - timer = (struct z8036_map *) 0xfffb0000; - timer->MASTER_INTR = 0x62; - timer->CT1_MODE_SPEC = 0x00; - timer->MASTER_CFG = 0xf4; - timer->CT1_CMD_STATUS = 0x00; - /* do not restore old vector */ -} - -rtems_device_driver Clock_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - Install_clock( Clock_isr ); - - return RTEMS_SUCCESSFUL; -} diff --git a/c/src/lib/libbsp/m68k/mvme136/configure.ac b/c/src/lib/libbsp/m68k/mvme136/configure.ac deleted file mode 100644 index 2a714b6529..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/configure.ac +++ /dev/null @@ -1,20 +0,0 @@ -## Process this file with autoconf to produce a configure script. - -AC_PREREQ([2.69]) -AC_INIT([rtems-c-src-lib-libbsp-m68k-mvme136],[_RTEMS_VERSION],[https://devel.rtems.org/newticket]) -AC_CONFIG_SRCDIR([bsp_specs]) -RTEMS_TOP(../../../../../..) - -RTEMS_CANONICAL_TARGET_CPU -AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.12.2]) -RTEMS_BSP_CONFIGURE - -RTEMS_PROG_CC_FOR_TARGET -RTEMS_CANONICALIZE_TOOLS -RTEMS_PROG_CCAS - -RTEMS_BSP_CLEANUP_OPTIONS(0, 0) - -# Explicitly list all Makefiles here -AC_CONFIG_FILES([Makefile]) -AC_OUTPUT diff --git a/c/src/lib/libbsp/m68k/mvme136/console/console.c b/c/src/lib/libbsp/m68k/mvme136/console/console.c deleted file mode 100644 index ce8fa8de72..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/console/console.c +++ /dev/null @@ -1,173 +0,0 @@ -/* - * This file contains the MVME136 console IO package. - */ - -/* - * COPYRIGHT (c) 1989-2014. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include - -volatile struct r_m681_info *_Read_m681; /* M68681 read registers */ -volatile struct w_m681_info *_Write_m681; /* M68681 write registers */ - -/* console_initialize - * - * This routine initializes the console IO driver. - */ -rtems_device_driver console_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *arg -) -{ - rtems_status_code status; - - _Write_m681 = ( struct w_m681_info * ) M681ADDR; - _Read_m681 = ( struct r_m681_info * ) M681ADDR; - - status = rtems_io_register_name( - "/dev/console", - major, - (rtems_device_minor_number) 0 - ); - - if (status != RTEMS_SUCCESSFUL) - rtems_fatal_error_occurred(status); - - return RTEMS_SUCCESSFUL; -} - -/* inbyte - * - * This routine reads a character from the UART. - */ -static char inbyte( void ) -{ - while ( !(_Read_m681->srb & RXRDYB) ); - return _Read_m681->rbb; -} - -/* outbyte - * - * This routine transmits a character out the M68681. It supports - * XON/XOFF flow control. - */ -static void outbyte( - char ch -) -{ - while ( ! (_Read_m681->srb & TXRDYB) ) ; - while ( _Read_m681->srb & RXRDYB ) /* must be an XOFF */ - if ( _Read_m681->rbb == XOFF ) - do { - while ( ! (_Read_m681->srb & RXRDYB) ) ; - } while ( _Read_m681->rbb != XON ); - - _Write_m681->tbb = ch; - if ( ch == '\n' ) - outbyte( CR ); -} - -/* - * Open entry point - */ -rtems_device_driver console_open( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * Close entry point - */ -rtems_device_driver console_close( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} - -/* - * read bytes from the serial port. We only have stdin. - */ -rtems_device_driver console_read( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - rtems_libio_rw_args_t *rw_args; - char *buffer; - int maximum; - int count = 0; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - buffer[ count ] = inbyte(); - if (buffer[ count ] == '\n' || buffer[ count ] == '\r') { - buffer[ count++ ] = '\n'; - break; - } - } - - rw_args->bytes_moved = count; - return (count >= 0) ? RTEMS_SUCCESSFUL : RTEMS_UNSATISFIED; -} - -/* - * write bytes to the serial port. Stdout and stderr are the same. - */ -rtems_device_driver console_write( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - int count; - int maximum; - rtems_libio_rw_args_t *rw_args; - char *buffer; - - rw_args = (rtems_libio_rw_args_t *) arg; - - buffer = rw_args->buffer; - maximum = rw_args->count; - - for (count = 0; count < maximum; count++) { - if ( buffer[ count ] == '\n') { - outbyte('\r'); - } - outbyte( buffer[ count ] ); - } - - rw_args->bytes_moved = maximum; - return 0; -} - -/* - * IO Control entry point - */ -rtems_device_driver console_control( - rtems_device_major_number major, - rtems_device_minor_number minor, - void * arg -) -{ - return RTEMS_SUCCESSFUL; -} diff --git a/c/src/lib/libbsp/m68k/mvme136/include/bsp.h b/c/src/lib/libbsp/m68k/mvme136/include/bsp.h deleted file mode 100644 index 3ea2101de6..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/include/bsp.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - * This include file contains all MVME136 board IO definitions. - */ - -/* - * COPYRIGHT (c) 1989-2014. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifndef LIBBSP_M68K_MVME136_BSP_H -#define LIBBSP_M68K_MVME136_BSP_H - -#include -#include - -#include -#include -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* Constants */ - -#define RAM_START 0 -#define RAM_END 0x100000 - -#define M681ADDR 0xfffb0040 /* address of the M68681 chip */ -#define RXRDYB 0x01 /* status reg recv ready mask */ -#define TXRDYB 0x04 /* status reg trans ready mask */ -#define PARITYERR 0x20 /* status reg parity error mask */ -#define FRAMEERR 0x40 /* status reg frame error mask */ - -#define FOREVER 1 /* infinite loop */ - -/* Structures */ - -struct r_m681_info { - char fill1[ 5 ]; /* channel A regs ( not used ) */ - char isr; /* interrupt status reg */ - char fill2[ 2 ]; /* counter regs (not used) */ - char mr1mr2b; /* MR1B and MR2B regs */ - char srb; /* status reg channel B */ - char fill3; /* do not access */ - char rbb; /* receive buffer channel B */ - char ivr; /* interrupt vector register */ -}; - -struct w_m681_info { - char fill1[ 4 ]; /* channel A regs (not used) */ - char acr; /* auxillary control reg */ - char imr; /* interrupt mask reg */ - char fill2[ 2 ]; /* counter regs (not used) */ - char mr1mr2b; /* MR1B and MR2B regs */ - char csrb; /* clock select reg */ - char crb; /* command reg */ - char tbb; /* transmit buffer channel B */ - char ivr; /* interrupt vector register */ -}; - -extern rtems_isr_entry M68Kvec[]; /* vector table address */ - -/* functions */ - -rtems_isr_entry set_vector( - rtems_isr_entry handle, - rtems_vector_number vector, - int type -); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/c/src/lib/libbsp/m68k/mvme136/include/coverhd.h b/c/src/lib/libbsp/m68k/mvme136/include/coverhd.h deleted file mode 100644 index 025b9cdcc9..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/include/coverhd.h +++ /dev/null @@ -1,106 +0,0 @@ -/** - * @file - * @ingroup m68k_mvme136 - * @brief C Overhead definitions - */ - -/* - * - * This include file has defines to represent the overhead associated - * with calling a particular directive from C on this target. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifndef __COVERHD_h -#define __COVERHD_h - -#ifdef __cplusplus -extern "C" { -#endif - -#define CALLING_OVERHEAD_INITIALIZE_EXECUTIVE 2 -#define CALLING_OVERHEAD_SHUTDOWN_EXECUTIVE 1 -#define CALLING_OVERHEAD_TASK_CREATE 3 -#define CALLING_OVERHEAD_TASK_IDENT 2 -#define CALLING_OVERHEAD_TASK_START 2 -#define CALLING_OVERHEAD_TASK_RESTART 2 -#define CALLING_OVERHEAD_TASK_DELETE 1 -#define CALLING_OVERHEAD_TASK_SUSPEND 1 -#define CALLING_OVERHEAD_TASK_RESUME 2 -#define CALLING_OVERHEAD_TASK_SET_PRIORITY 2 -#define CALLING_OVERHEAD_TASK_MODE 2 -#define CALLING_OVERHEAD_TASK_GET_NOTE 2 -#define CALLING_OVERHEAD_TASK_SET_NOTE 2 -#define CALLING_OVERHEAD_TASK_WAKE_WHEN 4 -#define CALLING_OVERHEAD_TASK_WAKE_AFTER 1 -#define CALLING_OVERHEAD_INTERRUPT_CATCH 2 -#define CALLING_OVERHEAD_CLOCK_GET 5 -#define CALLING_OVERHEAD_CLOCK_SET 4 -#define CALLING_OVERHEAD_CLOCK_TICK 1 - -#define CALLING_OVERHEAD_TIMER_CREATE 2 -#define CALLING_OVERHEAD_TIMER_IDENT 1 -#define CALLING_OVERHEAD_TIMER_DELETE 2 -#define CALLING_OVERHEAD_TIMER_FIRE_AFTER 2 -#define CALLING_OVERHEAD_TIMER_FIRE_WHEN 5 -#define CALLING_OVERHEAD_TIMER_RESET 1 -#define CALLING_OVERHEAD_TIMER_CANCEL 1 -#define CALLING_OVERHEAD_SEMAPHORE_CREATE 3 -#define CALLING_OVERHEAD_SEMAPHORE_DELETE 1 -#define CALLING_OVERHEAD_SEMAPHORE_IDENT 2 -#define CALLING_OVERHEAD_SEMAPHORE_OBTAIN 2 -#define CALLING_OVERHEAD_SEMAPHORE_RELEASE 1 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE 2 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_IDENT 2 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE 1 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_SEND 2 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT 2 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_BROADCAST 2 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE 3 -#define CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH 2 - -#define CALLING_OVERHEAD_EVENT_SEND 2 -#define CALLING_OVERHEAD_EVENT_RECEIVE 2 -#define CALLING_OVERHEAD_SIGNAL_CATCH 2 -#define CALLING_OVERHEAD_SIGNAL_SEND 2 -#define CALLING_OVERHEAD_PARTITION_CREATE 3 -#define CALLING_OVERHEAD_PARTITION_IDENT 2 -#define CALLING_OVERHEAD_PARTITION_DELETE 1 -#define CALLING_OVERHEAD_PARTITION_GET_BUFFER 2 -#define CALLING_OVERHEAD_PARTITION_RETURN_BUFFER 2 -#define CALLING_OVERHEAD_REGION_CREATE 3 -#define CALLING_OVERHEAD_REGION_IDENT 2 -#define CALLING_OVERHEAD_REGION_DELETE 2 -#define CALLING_OVERHEAD_REGION_GET_SEGMENT 3 -#define CALLING_OVERHEAD_REGION_RETURN_SEGMENT 2 -#define CALLING_OVERHEAD_PORT_CREATE 3 -#define CALLING_OVERHEAD_PORT_IDENT 2 -#define CALLING_OVERHEAD_PORT_DELETE 1 -#define CALLING_OVERHEAD_PORT_EXTERNAL_TO_INTERNAL 2 -#define CALLING_OVERHEAD_PORT_INTERNAL_TO_EXTERNAL 2 - -#define CALLING_OVERHEAD_IO_INITIALIZE 2 -#define CALLING_OVERHEAD_IO_OPEN 2 -#define CALLING_OVERHEAD_IO_CLOSE 3 -#define CALLING_OVERHEAD_IO_READ 2 -#define CALLING_OVERHEAD_IO_WRITE 2 -#define CALLING_OVERHEAD_IO_CONTROL 2 -#define CALLING_OVERHEAD_FATAL_ERROR_OCCURRED 1 -#define CALLING_OVERHEAD_RATE_MONOTONIC_CREATE 2 -#define CALLING_OVERHEAD_RATE_MONOTONIC_IDENT 2 -#define CALLING_OVERHEAD_RATE_MONOTONIC_DELETE 1 -#define CALLING_OVERHEAD_RATE_MONOTONIC_CANCEL 1 -#define CALLING_OVERHEAD_RATE_MONOTONIC_PERIOD 2 -#define CALLING_OVERHEAD_MULTIPROCESSING_ANNOUNCE 1 - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/c/src/lib/libbsp/m68k/mvme136/include/tm27.h b/c/src/lib/libbsp/m68k/mvme136/include/tm27.h deleted file mode 100644 index 66771bfdd6..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/include/tm27.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * @file - * @ingroup m68k_mvme136 - * @brief Implementations for interrupt mechanisms for Time Test 27 - */ - -/* - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifndef _RTEMS_TMTEST27 -#error "This is an RTEMS internal file you must not include directly." -#endif - -#ifndef __tm27_h -#define __tm27_h - -/* - * Define the interrupt mechanism for Time Test 27 - * - * NOTE: Use the MPCSR vector for the MVME136 - */ - -#define MUST_WAIT_FOR_INTERRUPT 0 - -#define Install_tm27_vector( handler ) set_vector( (handler), 75, 1 ) - -#define Cause_tm27_intr() (*(volatile uint8_t*)0xfffb006b) = 0x80 - -#define Clear_tm27_intr() (*(volatile uint8_t*)0xfffb006b) = 0x00 - -#define Lower_tm27_intr() /* empty */ - -#endif diff --git a/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136-testsuite.tcfg b/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136-testsuite.tcfg deleted file mode 100644 index e8bff6398f..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136-testsuite.tcfg +++ /dev/null @@ -1,7 +0,0 @@ -# -# mvme136 RTEMS Test Database -# -# Format is one line per test that is _NOT_ built. -# - -fsdosfsname01 diff --git a/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136.cfg b/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136.cfg deleted file mode 100644 index c90a7a3096..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/make/custom/mvme136.cfg +++ /dev/null @@ -1,26 +0,0 @@ -# -# Config file for the mvme136 BSP -# - -include $(RTEMS_ROOT)/make/custom/default.cfg - -RTEMS_CPU=m68k -RTEMS_CPU_MODEL=m68020 - -# -# This contains the compiler options necessary to select the CPU model -# and (hopefully) optimize for it. -# -CPU_CFLAGS = -mcpu=68020 - -# optimize flag: typically -O2 -CFLAGS_OPTIMIZE_V = -Os -g -fomit-frame-pointer - -define bsp-post-link - $(OBJCOPY) -O srec $(basename $@)$(EXEEXT) $(basename $@).srec - sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \ - $(PACKHEX) > $(basename $@)$(DOWNEXT) - rm -f $(basename $@).srec - $(default-bsp-post-link) -endef - diff --git a/c/src/lib/libbsp/m68k/mvme136/preinstall.am b/c/src/lib/libbsp/m68k/mvme136/preinstall.am deleted file mode 100644 index 4f605dc981..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/preinstall.am +++ /dev/null @@ -1,76 +0,0 @@ -## Automatically generated by ampolish3 - Do not edit - -if AMPOLISH3 -$(srcdir)/preinstall.am: Makefile.am - $(AMPOLISH3) $(srcdir)/Makefile.am > $(srcdir)/preinstall.am -endif - -PREINSTALL_DIRS = -DISTCLEANFILES += $(PREINSTALL_DIRS) - -all-am: $(PREINSTALL_FILES) - -PREINSTALL_FILES = -CLEANFILES = $(PREINSTALL_FILES) - -all-local: $(TMPINSTALL_FILES) - -TMPINSTALL_FILES = -CLEANFILES += $(TMPINSTALL_FILES) - -$(PROJECT_LIB)/$(dirstamp): - @$(MKDIR_P) $(PROJECT_LIB) - @: > $(PROJECT_LIB)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp) - -$(PROJECT_INCLUDE)/$(dirstamp): - @$(MKDIR_P) $(PROJECT_INCLUDE) - @: > $(PROJECT_INCLUDE)/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp) - -$(PROJECT_INCLUDE)/bsp/$(dirstamp): - @$(MKDIR_P) $(PROJECT_INCLUDE)/bsp - @: > $(PROJECT_INCLUDE)/bsp/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/bsp/$(dirstamp) - -$(PROJECT_LIB)/bsp_specs: bsp_specs $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/bsp_specs -PREINSTALL_FILES += $(PROJECT_LIB)/bsp_specs - -$(PROJECT_INCLUDE)/bsp.h: include/bsp.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h - -$(PROJECT_INCLUDE)/tm27.h: include/tm27.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/tm27.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/tm27.h - -$(PROJECT_INCLUDE)/bspopts.h: include/bspopts.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h - -$(PROJECT_INCLUDE)/bsp/bootcard.h: ../../shared/include/bootcard.h $(PROJECT_INCLUDE)/bsp/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/bootcard.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/bootcard.h - -$(PROJECT_INCLUDE)/coverhd.h: include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h - -$(PROJECT_INCLUDE)/rtems/zilog/$(dirstamp): - @$(MKDIR_P) $(PROJECT_INCLUDE)/rtems/zilog - @: > $(PROJECT_INCLUDE)/rtems/zilog/$(dirstamp) -PREINSTALL_DIRS += $(PROJECT_INCLUDE)/rtems/zilog/$(dirstamp) - -$(PROJECT_INCLUDE)/rtems/zilog/z8036.h: ../../shared/include/zilog/z8036.h $(PROJECT_INCLUDE)/rtems/zilog/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/zilog/z8036.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/zilog/z8036.h - -$(PROJECT_LIB)/start.$(OBJEXT): start.$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/start.$(OBJEXT) -TMPINSTALL_FILES += $(PROJECT_LIB)/start.$(OBJEXT) - -$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds - diff --git a/c/src/lib/libbsp/m68k/mvme136/shmsupp/addrconv.c b/c/src/lib/libbsp/m68k/mvme136/shmsupp/addrconv.c deleted file mode 100644 index 82ad28bb94..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/shmsupp/addrconv.c +++ /dev/null @@ -1,29 +0,0 @@ -/* Shm_Convert_address - * - * This MVME136 has a "normal" view of the VME address space. - * No address range conversion is required. - * - * Input parameters: - * address - address to convert - * - * Output parameters: - * returns - converted address - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -void *Shm_Convert_address( - void *address -) -{ - return ( address ); -} diff --git a/c/src/lib/libbsp/m68k/mvme136/shmsupp/getcfg.c b/c/src/lib/libbsp/m68k/mvme136/shmsupp/getcfg.c deleted file mode 100644 index 705736990d..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/shmsupp/getcfg.c +++ /dev/null @@ -1,82 +0,0 @@ -/* void Shm_Get_configuration( localnode, &shmcfg ) - * - * This routine initializes, if necessary, and returns a pointer - * to the Shared Memory Configuration Table for the Cyclone CVME961. - * - * INPUT PARAMETERS: - * localnode - local node number - * shmcfg - address of pointer to SHM Config Table - * - * OUTPUT PARAMETERS: - * *shmcfg - pointer to SHM Config Table - * - * NOTES: The MPCSR interrupt on the MVME136 is used as an interprocessor - * interrupt. The capablities of the MPCSR are used to generate - * interprocessor interrupts for up to eight nodes. - * - * The following table illustrates the configuration limitations: - * - * BUS MAX - * MODE ENDIAN NODES - * ========= ====== ======= - * POLLED LITTLE 2+ - * INTERRUPT LITTLE 2-8 - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include "shm_driver.h" - -#define INTERRUPT 1 /* MVME136 target supports both */ -#define POLLING 0 /* polling and interrupt modes */ - -shm_config_table BSP_shm_cfgtbl; - -uint32_t *BSP_int_address() -{ - uint32_t id, offset; - - id = (uint32_t) *(uint8_t*)0xfffb0061; - offset = ((id & 0x1f) << 5) | ((id & 0xe0) << 8); - offset |= 0xffff000b; - return( (uint32_t * ) offset ); -} - -void Shm_Get_configuration( - uint32_t localnode, - shm_config_table **shmcfg -) -{ - BSP_shm_cfgtbl.base = (uint32_t*)0x20000000; - BSP_shm_cfgtbl.length = 1 * MEGABYTE; - BSP_shm_cfgtbl.format = SHM_BIG; - - BSP_shm_cfgtbl.cause_intr = Shm_Cause_interrupt; - -#ifdef NEUTRAL_BIG - BSP_shm_cfgtbl.convert = NULL_CONVERT; -#else - BSP_shm_cfgtbl.convert = CPU_swap_u32; -#endif - -#if (POLLING==1) - BSP_shm_cfgtbl.poll_intr = POLLED_MODE; - BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.value = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.length = NO_INTERRUPT; -#else - BSP_shm_cfgtbl.poll_intr = INTR_MODE; - BSP_shm_cfgtbl.Intr.address = BSP_int_address(); - BSP_shm_cfgtbl.Intr.value = 0x80; - BSP_shm_cfgtbl.Intr.length = BYTE; -#endif - - *shmcfg = &BSP_shm_cfgtbl; - -} diff --git a/c/src/lib/libbsp/m68k/mvme136/shmsupp/lock.c b/c/src/lib/libbsp/m68k/mvme136/shmsupp/lock.c deleted file mode 100644 index 129de01fd0..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/shmsupp/lock.c +++ /dev/null @@ -1,71 +0,0 @@ -/* Shared Memory Lock Routines - * - * This shared memory locked queue support routine need to be - * able to lock the specified locked queue. Interrupts are - * disabled while the queue is locked to prevent preemption - * and deadlock when two tasks poll for the same lock. - * previous level. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -/* - * Shm_Initialize_lock - * - * Initialize the lock for the specified locked queue. - */ - -void Shm_Initialize_lock( - Shm_Locked_queue_Control *lq_cb -) -{ - lq_cb->lock = LQ_UNLOCKED; -} - -/* void _Shm_Lock( &lq_cb ) - * - * This shared memory locked queue support routine locks the - * specified locked queue. It disables interrupts to prevent - * a deadlock condition. - */ - -void Shm_Lock( - Shm_Locked_queue_Control *lq_cb -) -{ - uint32_t isr_level; - uint32_t *lockptr = (uint32_t*)&lq_cb->lock; - - rtems_interrupt_disable( isr_level ); - Shm_isrstat = isr_level; - __asm__ volatile( "lockit:" : : ); - __asm__ volatile( "tas %0@" : "=a" (lockptr) : "0" (lockptr) ); - __asm__ volatile( "bne lockit" : : ); -/* should delay */ -} - -/* - * Shm_Unlock - * - * Unlock the lock for the specified locked queue. - */ - -void Shm_Unlock( - Shm_Locked_queue_Control *lq_cb -) -{ - uint32_t isr_level; - - lq_cb->lock = SHM_UNLOCK_VALUE; - isr_level = Shm_isrstat; - rtems_interrupt_enable( isr_level ); -} diff --git a/c/src/lib/libbsp/m68k/mvme136/shmsupp/mpisr.c b/c/src/lib/libbsp/m68k/mvme136/shmsupp/mpisr.c deleted file mode 100644 index 0788378a58..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/shmsupp/mpisr.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Shm_isr_mvme136() - * - * NOTE: This routine is not used when in polling mode. Either - * this routine OR Shm_clockisr is used in a particular system. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -rtems_isr Shm_isr_mvme136() -{ - Shm_Interrupt_count += 1; - rtems_multiprocessing_announce(); - (*(volatile uint8_t*)0xfffb006b) = 0; /* clear MPCSR intr */ -} - -/* void _Shm_setvec( ) - * - * This driver routine sets the SHM interrupt vector to point to the - * driver's SHM interrupt service routine. - * - * Input parameters: NONE - * - * Output parameters: NONE - */ - -void Shm_setvec() -{ - /* may need to disable intr */ - set_vector( Shm_isr_mvme136, 75, 1 ); -} diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/bspclean.c b/c/src/lib/libbsp/m68k/mvme136/startup/bspclean.c deleted file mode 100644 index 5d968b804e..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/startup/bspclean.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * This routine returns control to 135Bug. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -void start(void); - -static rtems_isr bsp_return_to_monitor_trap(rtems_vector_number ignored) -{ - register volatile void *start_addr; - - m68k_set_vbr( 0 ); /* restore 135Bug vectors */ - __asm__ volatile( "trap #15" ); /* trap to 135Bug */ - __asm__ volatile( ".short 0x63" ); /* return to 135Bug (.RETURN) */ - /* restart program */ - start_addr = start; - - __asm__ volatile ( "jmp %0@" : "=a" (start_addr) : "0" (start_addr) ); -} - -#define TIMER 0xfffb0000 - -void bsp_fatal_extension( - rtems_fatal_source source, - bool is_internal, - rtems_fatal_code error -) -{ - Z8x36_WRITE( TIMER, MASTER_INTR, 0x62 ); /* redo timer */ - Z8x36_WRITE( TIMER, CT1_MODE_SPEC, 0x00 ); - Z8x36_WRITE( TIMER, MASTER_CFG, 0xf4 ); - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0x00 ); - - M68Kvec[ 45 ] = bsp_return_to_monitor_trap; /* install handler */ - __asm__ volatile( "trap #13" ); /* insures SUPV mode */ -} diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c deleted file mode 100644 index 04d073d045..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/startup/bspstart.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * This routine does the bulk of the system initialization. - */ - -/* - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -void bsp_start( void ) -{ - rtems_isr_entry *monitors_vector_table; - int index; - - monitors_vector_table = (rtems_isr_entry *)0; /* 135Bug Vectors are at 0 */ - m68k_set_vbr( monitors_vector_table ); - - for ( index=2 ; index<=255 ; index++ ) - M68Kvec[ index ] = monitors_vector_table[ 32 ]; - - M68Kvec[ 2 ] = monitors_vector_table[ 2 ]; /* bus error vector */ - M68Kvec[ 4 ] = monitors_vector_table[ 4 ]; /* breakpoints vector */ - M68Kvec[ 9 ] = monitors_vector_table[ 9 ]; /* trace vector */ - M68Kvec[ 47 ] = monitors_vector_table[ 47 ]; /* system call vector */ - - m68k_set_vbr( &M68Kvec ); - - (*(uint8_t*)0xfffb0067) = 0x7f; /* make VME access round-robin */ - - rtems_cache_enable_instruction(); -} diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds deleted file mode 100644 index 85d614d943..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds +++ /dev/null @@ -1,201 +0,0 @@ -/* - * This file contains directives for the GNU linker which are specific - * to the Motorola MVME136/MVME135 boards. - * - * COPYRIGHT (c) 1989-2007. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -/* - * Declare some sizes. - */ -RamBase = DEFINED(RamBase) ? RamBase : 0x0; -RamSize = DEFINED(RamSize) ? RamSize : 1M; -HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0; -_StackSize = DEFINED(_StackSize) ? _StackSize : 0x1000; - -MEMORY -{ - ram : org = 0x0, l = 1M -} - -SECTIONS -{ - ram : { - . = 0x3000; - } >ram - - /* - * Text, data and bss segments - */ - .text : { - *(.text*) - - /* - * C++ constructors/destructors - * - * Various files can provide initialization and finalization - * functions. crtbegin.o and crtend.o are two instances. The - * body of these functions are in .init and .fini sections. We - * accumulate the bodies here, and prepend function prologues - * from crti.o and function epilogues from crtn.o. crti.o must - * be linked first; crtn.o must be linked last. Because these - * are wildcards, it doesn't matter if the user does not - * actually link against crti.o and crtn.o; the linker won't - * look for a file to match a wildcard. The wildcard also - * means that it doesn't matter which directory crti.o and - * crtn.o are in. - */ - *(.gnu.linkonce.t.*) - - /* - * Initialization and finalization code. - * - * gcc uses crtbegin.o to find the start of the constructors - * and destructors so we make sure it is first. Because this - * is a wildcard, it doesn't matter if the user does not - * actually link against crtbegin.o; the linker won't look for - * a file to match a wildcard. The wildcard also means that - * it doesn't matter which directory crtbegin.o is in. The - * constructor and destructor list are terminated in - * crtend.o. The same comments apply to it. - */ - PROVIDE (_init = .); - *crti.o(.init) - *(.init) - *crtn.o(.init) - PROVIDE (_fini = .); - *crti.o(.fini) - *(.fini) - *crtn.o(.fini) - - /* - * Special FreeBSD sysctl sections. - */ - . = ALIGN (16); - __start_set_sysctl_set = .; - *(set_sysctl_*); - __stop_set_sysctl_set = ABSOLUTE(.); - *(set_domain_*); - *(set_pseudo_*); - - /* - * C++ constructors/destructors - */ - . = ALIGN (16); - *crtbegin.o(.ctors) - *(.ctors) - *crtend.o(.ctors) - *crtbegin.o(.dtors) - *(.dtors) - *crtend.o(.dtors) - - /* - * Exception frame info - */ - . = ALIGN (16); - *(.eh_frame) - - /* - * Read-only data - */ - . = ALIGN (16); - _rodata_start = .; - *(.rodata*) - KEEP (*(SORT(.rtemsroset.*))) - *(.gnu.linkonce.r*) - - . = ALIGN (16); - PROVIDE (_etext = .); - } >ram - - .tdata : { - _TLS_Data_begin = .; - *(.tdata .tdata.* .gnu.linkonce.td.*) - _TLS_Data_end = .; - } >ram - - .tbss : { - _TLS_BSS_begin = .; - *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) - _TLS_BSS_end = .; - } >ram - - _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin; - _TLS_Data_begin = _TLS_Data_size != 0 ? _TLS_Data_begin : _TLS_BSS_begin; - _TLS_Data_end = _TLS_Data_size != 0 ? _TLS_Data_end : _TLS_BSS_begin; - _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin; - _TLS_Size = _TLS_BSS_end - _TLS_Data_begin; - _TLS_Alignment = MAX (ALIGNOF (.tdata), ALIGNOF (.tbss)); - - .data : { - PROVIDE (_copy_start = .); - *(.data*) - KEEP (*(SORT(.rtemsrwset.*))) - *(.gnu.linkonce.d*) - *(.gcc_except_table*) - *(.jcr) - . = ALIGN (16); - PROVIDE (_edata = .); - PROVIDE (_copy_end = .); - } >ram - .bss : { - _clear_start = .; - *(.dynbss) - *(.bss* .gnu.linkonce.b.*) - *(COMMON) - . = ALIGN (16); - PROVIDE (end = .); - - . += _StackSize; - . = ALIGN (16); - _stack_init = .; - _clear_end = .; - - WorkAreaBase = .; - } >ram - - /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } - .stabstr 0 : { *(.stabstr) } - .stab.excl 0 : { *(.stab.excl) } - .stab.exclstr 0 : { *(.stab.exclstr) } - .stab.index 0 : { *(.stab.index) } - .stab.indexstr 0 : { *(.stab.indexstr) } - .comment 0 : { *(.comment) } - - /* DWARF debug sections. - Symbols in the DWARF debugging sections are relative to the beginning - of the section so we begin them at 0. */ - /* DWARF 1 */ - .debug 0 : { *(.debug) } - .line 0 : { *(.line) } - - /* GNU DWARF 1 extensions */ - .debug_srcinfo 0 : { *(.debug_srcinfo) } - .debug_sfnames 0 : { *(.debug_sfnames) } - - /* DWARF 1.1 and DWARF 2 */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - - /* DWARF 2 */ - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* SGI/MIPS DWARF 2 extensions */ - .debug_weaknames 0 : { *(.debug_weaknames) } - .debug_funcnames 0 : { *(.debug_funcnames) } - .debug_typenames 0 : { *(.debug_typenames) } - .debug_varnames 0 : { *(.debug_varnames) } - /* These must appear regardless of . */ -} diff --git a/c/src/lib/libbsp/m68k/mvme136/timer/timer.c b/c/src/lib/libbsp/m68k/mvme136/timer/timer.c deleted file mode 100644 index a9bf322162..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/timer/timer.c +++ /dev/null @@ -1,85 +0,0 @@ -/* - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include -#include -#include - -#define TIMER 0xfffb0000 /* address of Z8036 on MVME136 */ - -int Ttimer_val; -bool benchmark_timer_find_average_overhead; - -rtems_isr timerisr(rtems_vector_number); - -void benchmark_timer_initialize(void) -{ - (void) set_vector( timerisr, 66, 0 ); /* install ISR */ - - Ttimer_val = 0; /* clear timer ISR count */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0x01 ); /* reset */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0x00 ); /* clear reset */ - Z8x36_WRITE( TIMER, MASTER_INTR, 0xe2 ); /* disable lower chain, no vec */ - /* set right justified addr */ - /* and master int enable */ - Z8x36_WRITE( TIMER, CT1_MODE_SPEC, 0x80 ); /* T1 continuous, and */ - /* cycle/pulse output */ - - *((uint16_t*)0xfffb0016) = 0x0000; /* write countdown value */ -/* - Z8x36_WRITE( TIMER, CT1_TIME_CONST_MSB, 0x00 ); - Z8x36_WRITE( TIMER, CT1_TIME_CONST_LSB, 0x00 ); -*/ - Z8x36_WRITE( TIMER, MASTER_CFG, 0xc4 ); /* enable timer1 */ - - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xc6 ); /* set INTR enable (IE), */ - /* trigger command */ - /* (TCB) and gate */ - /* command (GCB) bits */ - *((uint8_t*)0xfffb0038) &= 0xfd; /* enable timer INTR on */ - /* VME controller */ -} - -#define AVG_OVERHEAD 6 /* It typically takes 3.0 microseconds */ - /* (6 countdowns) to start/stop the timer. */ -#define LEAST_VALID 10 /* Don't trust a value lower than this */ - -benchmark_timer_t benchmark_timer_read(void) -{ -/* - uint8_t msb, lsb; -*/ - uint32_t remaining, total; - - Z8x36_WRITE( TIMER, CT1_CMD_STATUS, 0xce ); /* read the counter value */ -remaining = 0xffff - *((uint16_t*) 0xfffb0010); -/* - Z8x36_READ( TIMER, CT1_CUR_CNT_MSB, msb ); - Z8x36_READ( TIMER, CT1_CUR_CNT_LSB, lsb ); - - remaining = 0xffff - ((msb << 8) + lsb); -*/ - total = (Ttimer_val * 0x10000) + remaining; - - if ( benchmark_timer_find_average_overhead == true ) - return total; /* in one-half microsecond units */ - - else { - if ( total < LEAST_VALID ) - return 0; /* below timer resolution */ - return (total-AVG_OVERHEAD) >> 1; - } -} - -void benchmark_timer_disable_subtracting_average_overhead( - bool find_flag -) -{ - benchmark_timer_find_average_overhead = find_flag; -} diff --git a/c/src/lib/libbsp/m68k/mvme136/timer/timerisr.S b/c/src/lib/libbsp/m68k/mvme136/timer/timerisr.S deleted file mode 100644 index dda8770c36..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/timer/timerisr.S +++ /dev/null @@ -1,36 +0,0 @@ -/* timer_isr() - * - * This routine provides the ISR for the Z8036 timer on the MVME136 - * board. The timer is set up to generate an interrupt at maximum - * intervals. - * - * Input parameters: NONE - * - * Output parameters: NONE - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include - -BEGIN_CODE - -.set CT1_CMD_STATUS, 0xfffb000a | port A -.set RELOAD, 0x24 | clr IP & IUS,allow countdown - - PUBLIC (timerisr) -SYM (timerisr): - movl a0,a7@- | save a0 - movl #CT1_CMD_STATUS,a0 | a0 = addr of cmd status reg - movb #RELOAD,a0@ | reload countdown - addql #1, SYM (Ttimer_val) | increment timer value - movl a7@+,a0 | save a0 - rte - -END_CODE -END diff --git a/c/src/lib/libbsp/m68k/mvme136/times b/c/src/lib/libbsp/m68k/mvme136/times deleted file mode 100644 index 527a3d299f..0000000000 --- a/c/src/lib/libbsp/m68k/mvme136/times +++ /dev/null @@ -1,189 +0,0 @@ -# -# Timing Test Suite Results for the Motorola MVME136 BSP -# - -Board: Motorola MVME136 -CPU: Motorola MC68020 + MC68881 FPU -Clock Speed: 20 Mhz -Memory Configuration: DRAM w/no cache -Wait States: 1 wait state - -Times Reported in: microseconds -Timer Source: Zilog Z8036 - -Column A: 3.5.1 pre-release -Column B: 3.5.17 pre-release - -# DESCRIPTION A B -== ================================================================= ==== ==== - 1 rtems_semaphore_create 67 60 - rtems_semaphore_delete 64 58 - rtems_semaphore_obtain: available 46 38 - rtems_semaphore_obtain: not available -- NO_WAIT 45 38 - rtems_semaphore_release: no waiting tasks 51 44 - - 2 rtems_semaphore_obtain: not available -- caller blocks 113 109 - - 3 rtems_semaphore_release: task readied -- preempts caller 94 87 - - 4 rtems_task_restart: blocked task -- preempts caller 152 149 - rtems_task_restart: ready task -- preempts caller 145 142 - rtems_semaphore_release: task readied -- returns to caller 71 66 - rtems_task_create 154 148 - rtems_task_start 82 76 - rtems_task_restart: suspended task -- returns to caller 94 89 - rtems_task_delete: suspended task 145 138 - rtems_task_restart: ready task -- returns to caller 97 92 - rtems_task_restart: blocked task -- returns to caller 128 124 - rtems_task_delete: blocked task 149 143 - - 5 rtems_task_suspend: calling task 77 71 - rtems_task_resume: task readied -- preempts caller 74 67 - - 6 rtems_task_restart: calling task 101 95 - rtems_task_suspend: returns to caller 50 43 - rtems_task_resume: task readied -- returns to caller 50 45 - rtems_task_delete: ready task 151 144 - - 7 rtems_task_restart: suspended task -- preempts caller 130 125 - - 8 rtems_task_set_priority: obtain current priority 38 31 - rtems_task_set_priority: returns to caller 71 64 - rtems_task_mode: obtain current mode 16 14 - rtems_task_mode: no reschedule 18 16 - rtems_task_mode: reschedule -- returns to caller 24 23 - rtems_task_mode: reschedule -- preempts caller 68 60 - rtems_task_set_note 39 33 - rtems_task_get_note 40 33 - rtems_clock_set 93 86 - rtems_clock_get 1 1 - - 9 rtems_message_queue_create 207 200 - rtems_message_queue_send: no waiting tasks 103 97 - rtems_message_queue_urgent: no waiting tasks 103 96 - rtems_message_queue_receive: available 87 79 - rtems_message_queue_flush: no messages flushed 36 29 - rtems_message_queue_flush: messages flushed 46 39 - rtems_message_queue_delete 85 80 - -10 rtems_message_queue_receive: not available -- NO_WAIT 51 43 - rtems_message_queue_receive: not available -- caller blocks 115 114 - -11 rtems_message_queue_send: task readied -- preempts caller 129 123 - -12 rtems_message_queue_send: task readied -- returns to caller 107 101 - -13 rtems_message_queue_urgent: task readied -- preempts caller 130 123 - -14 rtems_message_queue_urgent: task readied -- returns to caller 107 101 - -15 rtems_event_receive: obtain current events 0 1 - rtems_event_receive: not available -- NO_WAIT 33 23 - rtems_event_receive: not available -- caller blocks 92 84 - rtems_event_send: no task readied 34 24 - rtems_event_receive: available 36 28 - rtems_event_send: task readied -- returns to caller 67 60 - -16 rtems_event_send: task readied -- preempts caller 90 84 - -17 rtems_task_set_priority: preempts caller 110 106 - -18 rtems_task_delete: calling task 175 170 - -19 rtems_signal_catch 23 15 - rtems_signal_send: returns to caller 43 37 - rtems_signal_send: signal to self 52 55 - exit ASR overhead: returns to calling task 37 37 - exit ASR overhead: returns to preempting task 65 54 - -20 rtems_partition_create 77 70 - rtems_region_create 70 63 - rtems_partition_get_buffer: available 42 35 - rtems_partition_get_buffer: not available 40 33 - rtems_partition_return_buffer 50 43 - rtems_partition_delete 47 42 - rtems_region_get_segment: available 58 52 - rtems_region_get_segment: not available -- NO_WAIT 55 49 - rtems_region_return_segment: no waiting tasks 60 54 - rtems_region_get_segment: not available -- caller blocks 126 123 - rtems_region_return_segment: task readied -- preempts caller 143 136 - rtems_region_return_segment: task readied -- returns to caller 120 114 - rtems_region_delete 45 39 - rtems_io_initialize 6 4 - rtems_io_open 2 2 - rtems_io_close 1 1 - rtems_io_read 1 2 - rtems_io_write 1 3 - rtems_io_control 2 2 - -21 rtems_task_ident 353 350 - rtems_message_queue_ident 344 341 - rtems_semaphore_ident 369 367 - rtems_partition_ident 344 341 - rtems_region_ident 350 348 - rtems_port_ident 343 340 - rtems_timer_ident 345 343 - rtems_rate_monotonic_ident 344 341 - -22 rtems_message_queue_broadcast: task readied -- returns to caller 115 111 - rtems_message_queue_broadcast: no waiting tasks 60 53 - rtems_message_queue_broadcast: task readied -- preempts caller 138 133 - -23 rtems_timer_create 37 28 - rtems_timer_fire_after: inactive 66 58 - rtems_timer_fire_after: active 70 61 - rtems_timer_cancel: active 42 34 - rtems_timer_cancel: inactive 39 31 - rtems_timer_reset: inactive 60 54 - rtems_timer_reset: active 65 58 - rtems_timer_fire_when: inactive 96 88 - rtems_timer_fire_when: active 96 88 - rtems_timer_delete: active 55 47 - rtems_timer_delete: inactive 51 47 - rtems_task_wake_when 125 117 - -24 rtems_task_wake_after: yield -- returns to caller 26 16 - rtems_task_wake_after: yields -- preempts caller 65 56 - -25 rtems_clock_tick 14 17 - -26 _ISR_Disable 0 0 - _ISR_Flash 0 0 - _ISR_Enable 0 0 - _Thread_Disable_dispatch 0 0 - _Thread_Enable_dispatch 19 11 - _Thread_Set_state 24 24 - _Thread_Disptach (NO FP) 50 43 - context switch: no floating point contexts 41 35 - context switch: self 9 9 - context switch: to another task 9 10 - context switch: restore 1st FP task 46 39 - fp context switch: save idle, restore idle 75 68 - fp context switch: save idle, restore initialized 66 66 - fp context switch: save initialized, restore initialized 65 66 - _Thread_Resume 18 19 - _Thread_Unblock 18 19 - _Thread_Ready 22 21 - _Thread_Get 12 14 - _Semaphore_Get 10 10 - _Thread_Get: invalid id 2 2 - -27 interrupt entry overhead: returns to interrupted task 9 9 - interrupt exit overhead: returns to interrupted task 8 8 - interrupt entry overhead: returns to nested interrupt 14 12 - interrupt exit overhead: returns to nested interrupt 0 0 - interrupt entry overhead: returns to preempting task 8 9 - interrupt exit overhead: returns to preempting task 62 54 - -28 rtems_port_create 44 35 - rtems_port_external_to_internal 35 27 - rtems_port_internal_to_external 34 26 - rtems_port_delete 46 39 - -29 rtems_rate_monotonic_create 40 32 - rtems_rate_monotonic_period: initiate period -- returns to caller 60 54 - rtems_rate_monotonic_period: obtain status 38 31 - rtems_rate_monotonic_cancel 46 39 - rtems_rate_monotonic_delete: inactive 54 48 - rtems_rate_monotonic_delete: active 57 51 - rtems_rate_monotonic_period: conclude periods -- caller blocks 83 74 -- cgit v1.2.3