Renaming mcp750 to motorola_shared since that is the basis for both

the mvme2307 and mcp750 BSPs.  In addition, it can support many
Motorola PowerPC based VME and PCI boards.
This commit is contained in:
Joel Sherrill
2000-01-07 20:39:45 +00:00
parent 35d9acb36e
commit 1d54d3b5af
23 changed files with 0 additions and 1776 deletions

View File

@@ -1,78 +0,0 @@
#
# $Id$
#
This file documents the on board monitor (PPCBUG) configuration used
to be able to boot the archives located in powerpc-rtems/c/mcp750/bin.
This information was provided by Eric Valette <valette@crf.canon.fr>
----------------------- ENV command--------------
PPC1-Bug>env
Bug or System environment [B/S] = B?
Field Service Menu Enable [Y/N] = N?
Probe System for Supported I/O Controllers [Y/N] = Y?
Auto-Initialize of NVRAM Header Enable [Y/N] = Y?
Network PReP-Boot Mode Enable [Y/N] = Y? <====================
SCSI Bus Reset on Debugger Startup [Y/N] = N?
Primary SCSI Bus Negotiations Type [A/S/N] = A?
Primary SCSI Data Bus Width [W/N] = N?
Secondary SCSI Identifier = "07"?
NVRAM Boot List (GEV.fw-boot-path) Boot Enable [Y/N] = Y?
NVRAM Boot List (GEV.fw-boot-path) Boot at power-up only [Y/N] = Y?
NVRAM Boot List (GEV.fw-boot-path) Boot Abort Delay = 5?
Auto Boot Enable [Y/N] = Y?
Auto Boot at power-up only [Y/N] = Y?
Auto Boot Scan Enable [Y/N] = Y?
Auto Boot Scan Device Type List = FDISK/CDROM/TAPE/HDISK/?
Auto Boot Controller LUN = 14?
Auto Boot Device LUN = 40?
Auto Boot Partition Number = 03?
Auto Boot Abort Delay = 7?
Auto Boot Default String [NULL for an empty string] = ?
ROM Boot Enable [Y/N] = N?
ROM Boot at power-up only [Y/N] = Y?
ROM Boot Abort Delay = 5?
ROM Boot Direct Starting Address = FFF00000?
ROM Boot Direct Ending Address = FFFFFFFC?
Network Auto Boot Enable [Y/N] = N?
Network Auto Boot at power-up only [Y/N] = N?
Network Auto Boot Controller LUN = 00?
Network Auto Boot Device LUN = 00?
Network Auto Boot Abort Delay = 5?
Network Auto Boot Configuration Parameters Offset (NVRAM) = 00001000?
Memory Size Enable [Y/N] = Y?
Memory Size Starting Address = 00000000?
Memory Size Ending Address = 02000000?
DRAM Speed in NANO Seconds = 60?
ROM First Access Length (0 - 31) = 10?
ROM Next Access Length (0 - 15) = 0?
DRAM Parity Enable [On-Detection/Always/Never - O/A/N] = O?
L2Cache Parity Enable [On-Detection/Always/Never - O/A/N] = O?
PCI Interrupts Route Control Registers (PIRQ0/1/2/3) = 0A050000?
Serial Startup Code Master Enable [Y/N] = N?
Serial Startup Code LF Enable [Y/N] = N?
---------------------NIOT ---------------------------
PPC1-Bug>niot
Controller LUN =00?
Device LUN =00?
Node Control Memory Address =03F9E000?
Client IP Address =194.2.81.157?
Server IP Address =194.2.81.241?
Subnet IP Address Mask =255.255.255.0?
Broadcast IP Address =255.255.255.255?
Gateway IP Address =194.2.81.254?
Boot File Name ("NULL" for None) =debug-ppc?
Argument File Name ("NULL" for None) =?
Boot File Load Address =001F0000?
Boot File Execution Address =001F0000?
Boot File Execution Delay =00000000?
Boot File Length =00000000?
Boot File Byte Offset =00000000?
BOOTP/RARP Request Retry =05?
TFTP/ARP Request Retry =05?
Trace Character Buffer Address =00000000?
BOOTP/RARP Request Control: Always/When-Needed (A/W)=W?
BOOTP/RARP Reply Update Control: Yes/No (Y/N) =Y?
--------------------------------------------------------

View File

@@ -1,32 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../..
subdir = powerpc/mcp750
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/directory.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
SRCS = README
all: $(SRCS)
# wrapup is the one that actually builds and installs the library
# from the individual .rel files built in other directories
SUBDIRS = clock console include pci residual openpic irq vectors start \
startup bootloader motorola wrapup
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,48 +0,0 @@
#
# $Id$
#
BSP NAME: MCP750
BOARD: MCP750 from motorola
BUS: PCI
CPU FAMILY: ppc
CPU: PowerPC 750
COPROCESSORS: N/A
MODE: 32 bit mode
DEBUG MONITOR: PPCBUG mode
PERIPHERALS
===========
TIMERS: PPC internal Timebase register
RESOLUTION: ???
SERIAL PORTS: simulated via bug
REAL-TIME CLOCK: PPC internal Decrementer register
DMA: none
VIDEO: none
SCSI: none
NETWORKING: DEC21140
DRIVER INFORMATION
==================
CLOCK DRIVER: PPC internal
IOSUPP DRIVER: N/A
SHMSUPP: N/A
TIMER DRIVER: PPC internal
TTY DRIVER: PPC internal
STDIO
=====
PORT: Console port 0
ELECTRICAL: na
BAUD: na
BITS PER CHARACTER: na
PARITY: na
STOP BITS: na
Notes
=====
Based on papyrus bsp which only really supports
the PowerOpen ABI with an ELF assembler.

View File

@@ -1,39 +0,0 @@
This BSP was adapted from Eric Valette MCP750 Generic motorola
port to MVME2300 by Jay Kulpinski <jskulpin@eng01.gdds.com>.
In other to work correctly, the Tundra Universe chip must
be turned off using PPCBug as explained below.
The Tundra Universe chip is a bridge between the PCI and VME buses.
It has four programmable mapping windows in each direction, much like
the Raven. PPCBUG lets you specify the mappings if you don't want
to do it in your application. The mappings on our board, which may
or not be the default Motorola mappings, had one window appearing
at 0x01000000 in PCI space. This is the same place the bootloader
code remapped the Raven registers. The windows' mappings are
very likely to be application specific, so I wouldn't worry too
much about setting them in the BSP, but it would be nice to have
a standard interface to do so. Whoever needs that first can
incorporate the ppcn_60x BSP code for the Universe chip. :-)
These options in PPCBUG's ENV command did the job:
VME3PCI Master Master Enable [Y/N] = Y?
PCI Slave Image 0 Control = 00000000? <-----
PCI Slave Image 0 Base Address Register = 00000000?
PCI Slave Image 0 Bound Address Register = 00000000?
PCI Slave Image 0 Translation Offset = 00000000?
PCI Slave Image 1 Control = 00000000? <-----
PCI Slave Image 1 Base Address Register = 01000000?
PCI Slave Image 1 Bound Address Register = 20000000?
PCI Slave Image 1 Translation Offset = 00000000?
PCI Slave Image 2 Control = 00000000? <-----
PCI Slave Image 2 Base Address Register = 20000000?
PCI Slave Image 2 Bound Address Register = 22000000?
PCI Slave Image 2 Translation Offset = D0000000?
PCI Slave Image 3 Control = 00000000? <-----
PCI Slave Image 3 Base Address Register = 2FFF0000?
PCI Slave Image 3 Bound Address Register = 30000000?
PCI Slave Image 3 Translation Offset = D0000000?

View File

@@ -1,97 +0,0 @@
#
# $Id$
#
This BSP is designed to support multiple Motorola PowerPC boards. The
following extract from some email from Eric Valette should provide
the basic information required to use this BSP on other models.
Joel> + I am sure there are other Motorola boards which this BSP should
Joel> support. If you know of other models that should work, list
Joel> them off to me. I will make them aliases and note them as
Joel> untested in the status.
Extract of motorola.c :
static const mot_info_t mot_boards[] = {
{0x300, 0x00, "MVME 2400"},
{0x010, 0x00, "Genesis"},
{0x020, 0x00, "Powerstack (Series E)"},
{0x040, 0x00, "Blackhawk (Powerstack)"},
{0x050, 0x00, "Omaha (PowerStack II Pro3000)"},
{0x060, 0x00, "Utah (Powerstack II Pro4000)"},
{0x0A0, 0x00, "Powerstack (Series EX)"},
{0x1E0, 0xE0, "Mesquite cPCI (MCP750)"},
{0x1E0, 0xE1, "Sitka cPCI (MCPN750)"},
{0x1E0, 0xE2, "Mesquite cPCI (MCP750) w/ HAC"},
{0x1E0, 0xF6, "MTX Plus"},
{0x1E0, 0xF7, "MTX wo/ Parallel Port"},
{0x1E0, 0xF8, "MTX w/ Parallel Port"},
{0x1E0, 0xF9, "MVME 2300"},
{0x1E0, 0xFA, "MVME 2300SC/2600"},
{0x1E0, 0xFB, "MVME 2600 with MVME712M"},
{0x1E0, 0xFC, "MVME 2600/2700 with MVME761"},
{0x1E0, 0xFD, "MVME 3600 with MVME712M"},
{0x1E0, 0xFE, "MVME 3600 with MVME761"},
{0x1E0, 0xFF, "MVME 1600-001 or 1600-011"},
{0x000, 0x00, ""}
};
In theory, each board starting with 0x1E0 should be really straighforward
to port (604 proc or above and raven host bridge...).
Joel> Then we just have to add README.BOARD_MODEL and TIMES.BOARD_MODEL
I should also make a README to explain that some file containing
switch statement should be completed (e.g libbsp/powerpc/shared/irq_init.c
[NOTE: This is that README. :) ]
------------------------------
if ( (currentBoard == MESQUITE) ) {
VIA_isa_bridge_interrupts_setup();
known_cpi_isa_bridge = 1;
}
if (!known_cpi_isa_bridge) {
printk("Please add code for PCI/ISA bridge init to libbsp/shared/irq/irq_init.c\n");
printk("If your card works correctly please add a test and set known_cpi_isa_bridge to true\n");
}
------------------------------
and libbsp/powerpc/mpc6xx/execeptions/raw_exception.c
-------------------------------
int mpc604_vector_is_valid(rtems_vector vector)
{
/*
* Please fill this for MVME2307
*/
printk("Please complete libcpu/powerpc/XXX/raw_exception.c\n");
return 0;
}
int mpc60x_set_exception (const rtems_raw_except_connect_data* except)
{
unsigned int level;
if (current_ppc_cpu == PPC_750) {
if (!mpc750_vector_is_valid(except->exceptIndex)){
return 0;
}
goto exception_ok;
}
if (current_ppc_cpu == PPC_604) {
if (!mpc604_vector_is_valid(except->exceptIndex)){
return 0;
}
goto exception_ok;
}
printk("Please complete libcpu/powerpc/XXX/raw_exception.c\n");
return 0;
-----------------------------------
NB : re readding the code I should have done a switch... TSSSS.A future patche
I think.

View File

@@ -1,5 +0,0 @@
#
# $Id$
#
The dec21140 network driver is found in libchip/networking.

View File

@@ -1,97 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/bootloader
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../../shared:@srcdir@/../../shared/console:@srcdir@/../../shared/bootloader
# C source names, if any, go here -- minus the .c
C_PIECES = misc pci zlib mm em86 polled_io lib
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = bootldr.h zlib.h pci.h
# Assembly source names, if any, go here -- minus the .s
S_PIECES = head exception em86real
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(S_O_FILES) $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
CC_PIECES =
CC_FILES = $(CC_PIECES:%=%.cc)
CC_O_FILES = $(CC_PIECES:%=${ARCH}/%.o)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS += -D__BOOT__ -DDEBUG
CFLAGS += -msoft-float -mstrict-align -fno-builtin -Wall -mmultiple -mstring \
-O2 -fomit-frame-pointer -mrelocatable -ffixed-r13 -mno-sdata -D__BOOT__ \
-DDEBUG
ASFLAGS += -mrelocatable
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
IMAGES = rtems.gz
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS += bootloader reloc.O
CLOBBER_ADDITIONS += $(IMAGES)
#
# CAUTION :
#
# As we use very specific compilation options in this directory
# we shall not use any other code. This includes the newlib libc.a
# as well as other code located in .o files in mcp750 directory.
#
# NEVER remove lib.c. You have been warned...
#
bootloader : ${OBJS} $(IMAGES) $(BINARY_LOADED) ppcboot.lds
$(LD) -o bootloader $(OBJS) --just-symbols=$(BINARY_LOADED) \
-b binary $(IMAGES) -T @srcdir@/../../shared/bootloader/ppcboot.lds \
-Map bootloader.map
check_unresolved : ${OBJS}
$(LD) -r -o reloc.O ${OBJS}
$(NM) reloc.O |grep ' U '
echo "Every symbol listed should be defined in @srcdir@/ppcboot.lds"
rtems.gz: $(BINARY_LOADED)
$(OBJCOPY) $(BINARY_LOADED) rtems -O binary -R .comment -S
gzip -vf9 rtems
rm -f rtems
all: ${ARCH} $(SRCS) ${OBJ}
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,23 +0,0 @@
%rename cpp old_cpp
%rename lib old_lib
%rename endfile old_endfile
%rename startfile old_startfile
%rename link old_link
*cpp:
%(old_cpp) %{qrtems: -D__embedded__} -Asystem(embedded)
*lib:
%{!qrtems: %(old_lib)} %{qrtems: --start-group \
%{!qrtems_debug: -lrtemsall} %{qrtems_debug: -lrtemsall_g} \
-lc -lgcc --end-group ecrtn%O%s \
%{!qnolinkcmds: -T linkcmds%s}}
*startfile:
%{!qrtems: %(old_startfile)} %{qrtems: ecrti%O%s \
%{!qrtems_debug: start.o%s} \
%{qrtems_debug: start_g.o%s}}
*link:
%{!qrtems: %(old_link)} %{qrtems: -Qy -dp -Bstatic -T linkcmds%s -e __rtems_entry_point -u __vectors}

View File

@@ -1,66 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/clock
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/clock
# C source names, if any, go here -- minus the .c
C_PIECES = p_clock
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES =
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) $(OBJS)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,66 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/console
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/console:@srcdir@/../../../shared
# C source names, if any, go here -- minus the .c
C_PIECES = polled_io uart console inch
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/console/consoleIo.h \
$(srcdir)/../../shared/console/keyboard.h \
$(srcdir)/../../shared/console/uart.h
# Assembly source names, if any, go here -- minus the .s
S_PIECES =
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(S_O_FILES) $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
CC_PIECES =
CC_FILES = $(CC_PIECES:%=%.cc)
CC_O_FILES = $(CC_PIECES:%=${ARCH}/%.o)
#
# (OPTIONAL) Add local stuff here using +=
#
CPPFLAGS += -DSTATIC_LOG_ALLOC
CFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
all: ${ARCH} $(SRCS) ${OBJS}
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,60 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/include
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@
H_FILES = $(srcdir)/../../shared/include/nvram.h \
$(srcdir)/../../shared/include/bsp.h \
$(srcdir)/../../../shared/include/coverhd.h
BSP_H_FILES = $(srcdir)/../../shared/console/consoleIo.h \
$(srcdir)/../../shared/console/uart.h $(srcdir)/../../shared/irq/irq.h \
$(srcdir)/../../shared/motorola/motorola.h
#
# Equate files are for including from assembly preprocessed by
# gm4 or gasp. No examples are provided except for those for
# other CPUs. The best way to generate them would be to
# provide a program which generates the constants used based
# on the C equivalents.
#
EQ_FILES =
SRCS = $(H_FILES) $(EQ_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE) $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
preinstall:
$(mkinstalldirs) $(PROJECT_INCLUDE)
$(mkinstalldirs) $(PROJECT_INCLUDE)/bsp
@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)
@$(INSTALL_CHANGE) -m 644 $(BSP_H_FILES) $(PROJECT_INCLUDE)/bsp
all: $(SRCS) preinstall
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,70 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/irq
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/irq
# C source names, if any, go here -- minus the .c
C_PIECES = irq_init i8259 irq
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/irq/irq.h
# Assembly source names, if any, go here -- minus the .s
S_PIECES = irq_asm
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(S_O_FILES) $(C_O_FILES) $(CC_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) ${OBJS}
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,66 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/motorola
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/motorola
# C source names, if any, go here -- minus the .c
C_PIECES = motorola
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/motorola/motorola.h
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) $(OBJS)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,72 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/openpic
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/openpic
# C source names, if any, go here -- minus the .c
C_PIECES = $(OPENPIC_C_PIECES)
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/openpic/openpic.h
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
OPENPIC_C_PIECES = openpic
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
preinstall:
@$(mkinstalldirs) $(PROJECT_INCLUDE)/bsp
@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)/bsp
all: ${ARCH} $(SRCS) preinstall $(OBJS)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,70 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/pci
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/pci
# C source names, if any, go here -- minus the .c
C_PIECES = pci
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/pci/pci.h
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
preinstall:
@$(mkinstalldirs) $(PROJECT_INCLUDE)/bsp
@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)/bsp
all: ${ARCH} $(SRCS) preinstall $(OBJS)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,73 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/residual
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/residual
# C source names, if any, go here -- minus the .c
C_PIECES = $(RESIDUAL_C_PIECES)
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/residual/pnp.h \
$(srcdir)/../../shared/residual/residual.h
SRCS = $(C_FILES) $(H_FILES)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
RESIDUAL_C_PIECES = residual
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
preinstall:
@$(mkinstalldirs) $(PROJECT_INCLUDE)/bsp
@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)/bsp
all: ${ARCH} $(SRCS) preinstall $(OBJS)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,65 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/start
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../../shared/start
PGM = ${ARCH}/start.o
# C source names, if any, go here -- minus the .c
C_PIECES =
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES =
# Assembly source names, if any, go here -- minus the .S
S_PIECES = start
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(C_O_FILES) $(CC_O_FILES) $(S_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) $(OBJS) $(PGM)
$(INSTALL_VARIANT) -m 755 ${PGM} $(PROJECT_RELEASE)/lib
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,74 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/startup
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../console:@srcdir@/../../../shared:@srcdir@/../../shared/startup
# C source names, if any, go here -- minus the .c
C_PIECES = bootcard main bspstart bsppost bsplibc sbrk bspclean \
gnatinstallhandler
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES =
# Assembly source names, if any, go here -- minus the .s
S_PIECES =
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(S_O_FILES) $(C_O_FILES) $(CC_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_RELEASE)/lib
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) $(OBJS)
$(INSTALL_VARIANT) -m 755 ${PGM} $(PROJECT_RELEASE)/lib
$(INSTALL_CHANGE) -m 644 $(srcdir)/linkcmds $(PROJECT_RELEASE)/lib
$(PROJECT_RELEASE)/lib/libbsp.a:
cd ../wrapup; $(MAKE) $(AM_MAKEFLAGS)
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,147 +0,0 @@
OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc",
"elf32-powerpc")
OUTPUT_ARCH(powerpc)
ENTRY(_start)
/* Do we need any of these for elf?
__DYNAMIC = 0; */
PROVIDE (__stack = 0);
MEMORY {
VECTORS : ORIGIN = 0x0 , LENGTH = 0x3000
CODE : ORIGIN = 0x3000 , LENGTH = 0x100000
}
SECTIONS
{
.entry_point_section :
{
*(.entry_point_section)
} > VECTORS
/*
* This section is used only if NO_DYNAMIC_EXCEPTION_VECTOR_INSTALL
* is defined in vectors/vectors.S
*/
.vectors :
{
*(.vectors)
} > VECTORS
/* Read-only sections, merged into text segment: */
.interp : { *(.interp) } > CODE
.hash : { *(.hash) } > CODE
.dynsym : { *(.dynsym) } > CODE
.dynstr : { *(.dynstr) } > CODE
.gnu.version : { *(.gnu.version) } > CODE
.gnu.version_d : { *(.gnu.version_d) } > CODE
.gnu.version_r : { *(.gnu.version_r) } > CODE
.rela.text :
{ *(.rela.text) *(.rela.gnu.linkonce.t*) } > CODE
.rela.data :
{ *(.rela.data) *(.rela.gnu.linkonce.d*) } > CODE
.rela.rodata :
{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) } > CODE
.rela.got : { *(.rela.got) } > CODE
.rela.got1 : { *(.rela.got1) } > CODE
.rela.got2 : { *(.rela.got2) } > CODE
.rela.ctors : { *(.rela.ctors) } > CODE
.rela.dtors : { *(.rela.dtors) } > CODE
.rela.init : { *(.rela.init) } > CODE
.rela.fini : { *(.rela.fini) } > CODE
.rela.bss : { *(.rela.bss) } > CODE
.rela.plt : { *(.rela.plt) } > CODE
.rela.sdata : { *(.rela.sdata) } > CODE
.rela.sbss : { *(.rela.sbss) } > CODE
.rela.sdata2 : { *(.rela.sdata2) } > CODE
.rela.sbss2 : { *(.rela.sbss2) } > CODE
.text :
{
*(.text)
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
*(.gnu.linkonce.t*)
} > CODE
.init : { *(.init) } > CODE
.fini : { *(.fini) } > CODE
.rodata : { *(.rodata) *(.gnu.linkonce.r*) } > CODE
.rodata1 : { *(.rodata1) } > CODE
_etext = .;
PROVIDE (etext = .);
.sdata2 : { *(.sdata2) } > CODE
.sbss2 : { *(.sbss2) } > CODE
/* Adjust the address for the data segment. We want to adjust up to
the same address within the page on the next page up. It would
be more correct to do this:
. = ALIGN(0x40000) + (ALIGN(8) & (0x40000 - 1));
The current expression does not correctly handle the case of a
text segment ending precisely at the end of a page; it causes the
data segment to skip a page. The above expression does not have
this problem, but it will currently (2/95) cause BFD to allocate
a single segment, combining both text and data, for this case.
This will prevent the text segment from being shared among
multiple executions of the program; I think that is more
important than losing a page of the virtual address space (note
that no actual memory is lost; the page which is skipped can not
be referenced). */
. = ALIGN(0x1000);
.data :
{
*(.data)
*(.gnu.linkonce.d*)
CONSTRUCTORS
} > CODE
.data1 : { *(.data1) } > CODE
PROVIDE (__EXCEPT_START__ = .);
.gcc_except_table : { *(.gcc_except_table) } > CODE
PROVIDE (__EXCEPT_END__ = .);
.got1 : { *(.got1) } > CODE
.dynamic : { *(.dynamic) } > CODE
/* Put .ctors and .dtors next to the .got2 section, so that the pointers
get relocated with -mrelocatable. Also put in the .fixup pointers.
The current compiler no longer needs this, but keep it around for 2.7.2 */
PROVIDE (_GOT2_START_ = .);
.got2 : { *(.got2) } > CODE
PROVIDE (__CTOR_LIST__ = .);
.ctors : { *(.ctors) } > CODE
PROVIDE (__CTOR_END__ = .);
PROVIDE (__DTOR_LIST__ = .);
.dtors : { *(.dtors) } > CODE
PROVIDE (__DTOR_END__ = .);
PROVIDE (_FIXUP_START_ = .);
.fixup : { *(.fixup) } > CODE
PROVIDE (_FIXUP_END_ = .);
PROVIDE (_GOT2_END_ = .);
PROVIDE (_GOT_START_ = .);
.got : { *(.got) } > CODE
.got.plt : { *(.got.plt) } > CODE
PROVIDE (_GOT_END_ = .);
/* We want the small data sections together, so single-instruction offsets
can access them all, and initialized data all before uninitialized, so
we can shorten the on-disk segment size. */
.sdata : { *(.sdata) } > CODE
_edata = .;
PROVIDE (edata = .);
.sbss :
{
PROVIDE (__sbss_start = .);
*(.sbss)
*(.scommon)
*(.dynsbss)
PROVIDE (__sbss_end = .);
} > CODE
.plt : { *(.plt) } > CODE
.bss :
{
PROVIDE (__bss_start = .);
*(.dynbss)
*(.bss)
*(COMMON)
. = ALIGN(16);
} > CODE
. = ALIGN(16);
_end = . ;
__rtems_end = . ;
PROVIDE (end = .);
/DISCARD/ :
{
*(.comment)
}
}

View File

@@ -1,189 +0,0 @@
#
# Timing Test Suite Results for this BSP on the MCP750
#
# $Id$
#
Thanks to Eric Valette <valette@crf.canon.fr> for running the timing
tests and reporting this information.
Target: 300 Mhz MCP750
CPU: MPC750
Clock Speed: 300 Mhz
Times are reported in nanoseconds.
Context Switch
context switch: self_______________________________________________0.708
context switch: to another task____________________________________0.649
context switch: no floating point contexts_________________________2.360
fp context switch: restore 1st FP task_____________________________6.490
fp context switch: save initialized, restore initialized___________0.767
fp context switch: save idle, restore initialized__________________0.885
fp context switch: save idle, restore idle_________________________6.195
Task Manager
rtems_task_create__________________________________________________4.003
rtems_task_ident___________________________________________________4.995
rtems_task_start___________________________________________________1.587
rtems_task_restart: calling task___________________________________1.788
rtems_task_restart: suspended task -- returns to caller____________1.849
rtems_task_restart: blocked task -- returns to caller______________2.082
rtems_task_restart: ready task -- returns to caller________________1.863
rtems_task_restart: suspended task -- preempts caller______________3.102
rtems_task_restart: blocked task -- preempts caller_______________12.744
rtems_task_restart: ready task -- preempts caller__________________3.009
rtems_task_delete: calling task____________________________________6.592
rtems_task_delete: suspended task__________________________________3.460
rtems_task_delete: blocked task____________________________________3.555
rtems_task_delete: ready task______________________________________3.797
rtems_task_suspend: calling task___________________________________3.066
rtems_task_suspend: returns to caller______________________________0.774
rtems_task_resume: task readied -- returns to caller_______________0.733
rtems_task_resume: task readied -- preempts caller_________________1.634
rtems_task_set_priority: obtain current priority___________________0.524
rtems_task_set_priority: returns to caller_________________________0.970
rtems_task_set_priority: preempts caller___________________________3.686
rtems_task_mode: obtain current mode_______________________________0.233
rtems_task_mode: no reschedule_____________________________________0.231
rtems_task_mode: reschedule -- returns to caller___________________1.711
rtems_task_mode: reschedule -- preempts caller_____________________3.304
rtems_task_get_note________________________________________________0.549
rtems_task_set_note________________________________________________0.548
rtems_task_wake_after: yield -- returns to caller__________________3.063
rtems_task_wake_after: yields -- preempts caller___________________3.063
rtems_task_wake_when_______________________________________________3.906
Interrupt Manager
interrupt entry overhead: returns to nested interrupt______________1.947
interrupt entry overhead: returns to interrupted task______________2.891
interrupt entry overhead: returns to preempting task_______________0.767
interrupt exit overhead: returns to nested interrupt_______________0.177
interrupt exit overhead: returns to interrupted task_______________0.885
interrupt exit overhead: returns to preempting task________________2.950
Clock Manager
rtems_clock_set____________________________________________________1.380
rtems_clock_get____________________________________________________0.164
rtems_clock_tick___________________________________________________5.487
Timer Manager
rtems_timer_create_________________________________________________0.959
rtems_timer_ident__________________________________________________4.822
rtems_timer_delete: inactive_______________________________________0.749
rtems_timer_delete: active_________________________________________0.815
rtems_timer_fire_after: inactive___________________________________1.047
rtems_timer_fire_after: active_____________________________________0.951
rtems_timer_fire_when: inactive____________________________________1.145
rtems_timer_fire_when: active______________________________________1.133
rtems_timer_reset: inactive________________________________________0.848
rtems_timer_reset: active__________________________________________0.892
rtems_timer_cancel: inactive_______________________________________0.500
rtems_timer_cancel: active_________________________________________0.552
Semaphore Manager
rtems_semaphore_create 4.248
rtems_semaphore_ident______________________________________________5.614
rtems_semaphore_delete_____________________________________________3.953
rtems_semaphore_obtain: available__________________________________0.639
rtems_semaphore_obtain: not available -- NO_WAIT___________________0.638
rtems_semaphore_obtain: not available -- caller blocks_____________3.914
rtems_semaphore_release: no waiting tasks__________________________0.825
rtems_semaphore_release: task readied -- returns to caller_________1.175
rtems_semaphore_release: task readied -- preempts caller___________2.789
Message Queue Manager
rtems_message_queue_create________________________________________48.380
rtems_message_queue_ident__________________________________________4.936
rtems_message_queue_delete_________________________________________2.891
rtems_message_queue_send: no waiting tasks_________________________1.149
rtems_message_queue_send: task readied -- returns to caller________1.489
rtems_message_queue_send: task readied -- preempts caller__________3.000
rtems_message_queue_urgent: no waiting tasks_______________________1.145
rtems_message_queue_urgent: task readied -- returns to caller______1.508
rtems_message_queue_urgent: task readied -- preempts caller________2.961
rtems_message_queue_broadcast: no waiting tasks____________________0.866
rtems_message_queue_broadcast: task readied -- returns to caller___9.735
rtems_message_queue_broadcast: task readied -- preempts caller_____2.891
rtems_message_queue_receive: available_____________________________0.874
rtems_message_queue_receive: not available -- NO_WAIT______________0.757
rtems_message_queue_receive: not available -- caller blocks________4.091
rtems_message_queue_flush: no messages flushed_____________________0.554
rtems_message_queue_flush: messages flushed________________________0.605
Event Manager
rtems_event_send: no task readied__________________________________0.542
rtems_event_send: task readied -- returns to caller________________1.196
rtems_event_send: task readied -- preempts caller__________________2.558
rtems_event_receive: obtain current events_________________________0.082
rtems_event_receive: available_____________________________________0.590
rtems_event_receive: not available -- NO_WAIT______________________0.551
rtems_event_receive: not available -- caller blocks________________3.545
Signal Manager
rtems_signal_catch_________________________________________________0.944
rtems_signal_send: returns to caller_______________________________3.186
rtems_signal_send: signal to self__________________________________5.959
exit ASR overhead: returns to calling task_________________________2.950
exit ASR overhead: returns to preempting task______________________1.180
Partition Manager
rtems_partition_create____________________________________________17.464
rtems_partition_ident______________________________________________4.810
rtems_partition_delete_____________________________________________1.475
rtems_partition_get_buffer: available______________________________3.304
rtems_partition_get_buffer: not available__________________________0.472
rtems_partition_return_buffer______________________________________1.947
Region Manager
rtems_region_create________________________________________________4.425
rtems_region_ident_________________________________________________4.917
rtems_region_delete________________________________________________1.829
rtems_region_get_segment: available________________________________1.121
rtems_region_get_segment: not available -- NO_WAIT_________________1.770
rtems_region_get_segment: not available -- caller blocks___________6.667
rtems_region_return_segment: no waiting tasks______________________0.944
rtems_region_return_segment: task readied -- returns to caller_____1.298
rtems_region_return_segment: task readied -- preempts caller_______9.322
Dual-Ported Memory Manager
rtems_port_create__________________________________________________6.372
rtems_port_ident___________________________________________________4.803
rtems_port_delete__________________________________________________3.245
rtems_port_internal_to_external____________________________________0.490
rtems_port_external_to_internal____________________________________0.502
IO Manager
rtems_io_initialize________________________________________________0.090
rtems_io_open______________________________________________________0.075
rtems_io_close_____________________________________________________0.086
rtems_io_read______________________________________________________0.069
rtems_io_write_____________________________________________________0.082
rtems_io_control___________________________________________________0.081
Rate Monotonic Manager
rtems_rate_monotonic_create________________________________________7.080
rtems_rate_monotonic_ident_________________________________________4.814
rtems_rate_monotonic_cancel________________________________________5.369
rtems_rate_monotonic_delete: active________________________________1.121
rtems_rate_monotonic_delete: inactive______________________________4.248
rtems_rate_monotonic_period: obtain status_________________________2.419
rtems_rate_monotonic_period: initiate period -- returns to caller__9.204
rtems_rate_monotonic_period: conclude periods -- caller blocks_____2.131

View File

@@ -1,205 +0,0 @@
#
# Timing Test Suite Results for this BSP on the MVME2307
#
# $Id$
#
Thanks to Jay Kulpinski (jskulpin@eng01.gdds.com) for providing these
times.
Board: Motorola MVME2307
CPU: MPC604
Clock Speed: 300MHz
Memory Configuration: 64MB, ECC Enabled (ECC-Memory Detected)
L2Cache: NONE
Wait States:
Times Reported in: microseconds
Timer Source: on-CPU cycle counter
Column X:
Column Y:
# DESCRIPTION A
== ================================================================= =========
1 rtems_semaphore_create 16.493
rtems_semaphore_delete 16.673
rtems_semaphore_obtain: available 10.381
rtems_semaphore_obtain: not available -- NO_WAIT 10.383
rtems_semaphore_release: no waiting tasks 12.071
2 rtems_semaphore_obtain: not available -- caller blocks 31.929
3 rtems_semaphore_release: task readied -- preempts caller 26.442
4 rtems_task_restart: blocked task -- preempts caller 46.073
rtems_task_restart: ready task -- preempts caller 41.153
rtems_semaphore_release: task readied -- returns to caller 16.709
rtems_task_create 50.860
rtems_task_start 20.581
rtems_task_restart: suspended task -- returns to caller 23.807
rtems_task_delete: suspended task 39.714
rtems_task_restart: ready task -- returns to caller 24.737
rtems_task_restart: blocked task -- returns to caller 28.471
rtems_task_delete: blocked task 41.008
5 rtems_task_suspend: calling task 25.204
rtems_task_resume: task readied -- preempts caller 22.296
6 rtems_task_restart: calling task 30.990
rtems_task_suspend: returns to caller 11.582
rtems_task_resume: task readied -- returns to caller 12.620
rtems_task_delete: ready task 40.913
7 rtems_task_restart: suspended task -- preempts caller 38.087
8 rtems_task_set_priority: obtain current priority 9.727
rtems_task_set_priority: returns to caller 17.030
rtems_task_mode: obtain current mode 3.768
rtems_task_mode: no reschedule 3.766
rtems_task_mode: reschedule -- returns to caller 5.933
rtems_task_mode: reschedule -- preempts caller 22.613
rtems_task_set_note 10.115
rtems_task_get_note 10.236
rtems_clock_set 21.466
rtems_clock_get 2.286
9 rtems_message_queue_create 40.373
rtems_message_queue_send: no waiting tasks 20.370
rtems_message_queue_urgent: no waiting tasks 20.397
rtems_message_queue_receive: available 17.799
rtems_message_queue_flush: no messages flushed 9.405
rtems_message_queue_flush: messages flushed 10.945
rtems_message_queue_delete 19.673
10 rtems_message_queue_receive: not available -- NO_WAIT 11.778
rtems_message_queue_receive: not available -- caller blocks 32.770
11 rtems_message_queue_send: task readied -- preempts caller 33.719
12 rtems_message_queue_send: task readied -- returns to caller 23.653
13 rtems_message_queue_urgent: task readied -- preempts caller 33.713
14 rtems_message_queue_urgent: task readied -- returns to caller 23.651
15 rtems_event_receive: obtain current events 1.275
rtems_event_receive: not available -- NO_WAIT 9.193
rtems_event_receive: not available -- caller blocks 27.196
rtems_event_send: no task readied 9.437
rtems_event_receive: available 9.653
rtems_event_send: task readied -- returns to caller 15.845
16 rtems_event_send: task readied -- preempts caller 26.008
17 rtems_task_set_priority: preempts caller 30.872
18 rtems_task_delete: calling task 53.748
19 rtems_signal_catch 7.253
rtems_signal_send: returns to caller 11.993
rtems_signal_send: signal to self 17.633
exit ASR overhead: returns to calling task 14.933
exit ASR overhead: returns to preempting task 18.413
20 rtems_partition_create 18.473
rtems_region_create 14.573
rtems_partition_get_buffer: available 11.153
rtems_partition_get_buffer: not available 9.593
rtems_partition_return_buffer 12.233
rtems_partition_delete 11.633
rtems_region_get_segment: available 12.533
rtems_region_get_segment: not available -- NO_WAIT 11.633
rtems_region_return_segment: no waiting tasks 13.613
rtems_region_get_segment: not available -- caller blocks 37.673
rtems_region_return_segment: task readied -- preempts caller 36.233
rtems_region_return_segment: task readied -- returns to caller 23.153
rtems_region_delete 12.353
rtems_io_initialize 1.255
rtems_io_open 1.096
rtems_io_close 1.095
rtems_io_read 1.097
rtems_io_write 1.096
rtems_io_control 1.097
21 rtems_task_ident 47.737
rtems_message_queue_ident 46.548
rtems_semaphore_ident 53.196
rtems_partition_ident 46.545
rtems_region_ident 47.380
rtems_port_ident 46.540
rtems_timer_ident 46.548
rtems_rate_monotonic_ident 46.545
22 rtems_message_queue_broadcast: task readied -- returns to caller 31.193
rtems_message_queue_broadcast: no waiting tasks 13.872
rtems_message_queue_broadcast: task readied -- preempts caller 37.853
23 rtems_timer_create 9.353
rtems_timer_fire_after: inactive 14.732
rtems_timer_fire_after: active 15.913
rtems_timer_cancel: active 9.855
rtems_timer_cancel: inactive 8.692
rtems_timer_reset: inactive 13.533
rtems_timer_reset: active 14.703
rtems_timer_fire_when: inactive 19.015
rtems_timer_fire_when: active 18.997
rtems_timer_delete: active 12.040
rtems_timer_delete: inactive 10.825
rtems_task_wake_when 32.645
24 rtems_task_wake_after: yield -- returns to caller 6.760
rtems_task_wake_after: yields -- preempts caller 22.005
25 rtems_clock_tick 6.533
26 _ISR_Disable 0.353
_ISR_Flash 0.053
_ISR_Enable 0.000
_Thread_Disable_dispatch 0.353
_Thread_Enable_dispatch 5.513
_Thread_Set_state 5.513
_Thread_Disptach (NO FP) 19.073
context switch: no floating point contexts 16.253
context switch: self 6.953
context switch: to another task 7.013
context switch: restore 1st FP task 22.673
fp context switch: save idle, restore idle 25.733
fp context switch: save idle, restore initialized 16.253
fp context switch: save initialized, restore initialized 16.673
_Thread_Resume 6.833
_Thread_Unblock 4.733
_Thread_Ready 4.793
_Thread_Get 2.273
_Semaphore_Get 2.073
_Thread_Get: invalid id 0.274
27 interrupt entry overhead: returns to interrupted task 7.013
interrupt exit overhead: returns to interrupted task 8.393
interrupt entry overhead: returns to nested interrupt 4.733
interrupt exit overhead: returns to nested interrupt 7.073
interrupt entry overhead: returns to preempting task 5.093
interrupt exit overhead: returns to preempting task 23.513
28 rtems_port_create 12.473
rtems_port_external_to_internal 9.130
rtems_port_internal_to_external 9.130
rtems_port_delete 11.873
29 rtems_rate_monotonic_create 11.813
rtems_rate_monotonic_period: initiate period -- returns to caller 17.753
rtems_rate_monotonic_period: obtain status 9.533
rtems_rate_monotonic_cancel 13.313
rtems_rate_monotonic_delete: inactive 12.473
rtems_rate_monotonic_delete: active 13.193
rtems_rate_monotonic_period: conclude periods -- caller blocks 23.236
@
1.1
log
@Motorola MVME2307 BSP submitted by Jay Kulpinski <jskulpin@@eng01.gdds.com>.
No modifications made.
@
text

View File

@@ -1,75 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/vectors
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@:@srcdir@/../console:@srcdir@/../../shared/vectors
# C source names, if any, go here -- minus the .c
C_PIECES = vectors_init
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
H_FILES = $(srcdir)/../../shared/vectors/vectors.h
# Assembly source names, if any, go here -- minus the .s
S_PIECES = vectors
S_FILES = $(S_PIECES:%=%.S)
S_O_FILES = $(S_FILES:%.S=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
OBJS = $(S_O_FILES) $(C_O_FILES) $(CC_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/bsp
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
$(PGM): ${OBJS}
$(make-rel)
preinstall:
@$(mkinstalldirs) $(PROJECT_INCLUDE)/bsp
@$(INSTALL_CHANGE) -m 644 $(H_FILES) $(PROJECT_INCLUDE)/bsp
all: ${ARCH} $(SRCS) preinstall $(OBJS) $(PGM)
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

View File

@@ -1,59 +0,0 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../..
subdir = powerpc/mcp750/wrapup
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@
BSP_PIECES = clock console irq openpic pci residual startup vectors motorola
GENERIC_PIECES =
# bummer; have to use $foreach since % pattern subst rules only replace 1x
OBJS = $(foreach piece, $(BSP_PIECES), ../$(piece)/$(ARCH)/*.o) \
$(foreach piece, $(GENERIC_PIECES), ../../../$(piece)/$(ARCH)/*.o)
LIB = $(ARCH)/libbsp.a
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/lib.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
$(LIB): ${OBJS}
$(make-library)
all: ${ARCH} $(SRCS) $(LIB)
$(INSTALL_VARIANT) -m 644 $(LIB) $(PROJECT_RELEASE)/lib
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status