mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 15:15:44 +00:00
2004-11-10 Richard Campbell <richard.campbell@oarcorp.com>
* Makefile.am, configure.ac, bootloader/Makefile.am, include/Makefile.am, wrapup/Makefile.am: Add MVME2100 BSP. * README.MVME2100, tod/.cvsignore, tod/Makefile.am: New files.
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
2004-11-10 Richard Campbell <richard.campbell@oarcorp.com>
|
||||
|
||||
* Makefile.am, configure.ac, bootloader/Makefile.am,
|
||||
include/Makefile.am, wrapup/Makefile.am: Add MVME2100 BSP.
|
||||
* README.MVME2100, tod/.cvsignore, tod/Makefile.am: New files.
|
||||
|
||||
2003-12-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
PR 533/bsps
|
||||
|
||||
@@ -7,12 +7,12 @@ ACLOCAL_AMFLAGS = -I ../../../../../../aclocal
|
||||
# wrapup is the one that actually builds and installs the library
|
||||
# from the individual .rel files built in other directories
|
||||
SUBDIRS = include clock console pci residual openpic irq vectors start \
|
||||
startup bootloader motorola @exceptions@ vme wrapup
|
||||
startup bootloader motorola @exceptions@ tod vme wrapup
|
||||
|
||||
include $(top_srcdir)/../../bsp.am
|
||||
|
||||
EXTRA_DIST = BOOTING README.MVME2300 README.OTHERBOARDS README.dec21140 \
|
||||
bsp_specs times.mcp750 times.mvme2307
|
||||
EXTRA_DIST = BOOTING README.MVME2100 README.MVME2300 README.OTHERBOARDS \
|
||||
README.dec21140 bsp_specs times.mcp750 times.mvme2307
|
||||
|
||||
include $(top_srcdir)/../../../../../../automake/subdirs.am
|
||||
include $(top_srcdir)/../../../../../../automake/local.am
|
||||
|
||||
123
c/src/lib/libbsp/powerpc/motorola_powerpc/README.MVME2100
Normal file
123
c/src/lib/libbsp/powerpc/motorola_powerpc/README.MVME2100
Normal file
@@ -0,0 +1,123 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
The MVME2100 is a Motorola VMEbus board which is similar to the other
|
||||
Motorola PowerPC boards supported by this BSP. But it does not support
|
||||
the Motorola CPU Configuration Register. This makes it impossible to
|
||||
dynamically probe and determine that you are executing on this board
|
||||
variant. So this BSP variant must be explicitly built to only support
|
||||
the MVME2100. The complete list of differences found so far is:
|
||||
|
||||
* No CPU Configuration Register
|
||||
* one COM port
|
||||
* COM port is on PCI IRQ not ISA IRQ
|
||||
* limited on RAM (32 or 64 MB)
|
||||
* uses the EPIC interrupt controller on the MPC8240
|
||||
* does not have an ISA bus but has an ISA I/O address space
|
||||
* cannot set DBAT2 in bspstart like other variants because
|
||||
there are PCI/ISA Interrupt Acknowledge registers at this space
|
||||
This BSP may have left some PCI memory uncovered
|
||||
* PPCBug starts programs with vectors still in ROM
|
||||
|
||||
Supported Features:
|
||||
- Interrupt driven console using termios
|
||||
- Network device driver
|
||||
- Real-Time Clock driver
|
||||
- Clock Tick Device Driver
|
||||
|
||||
Things to address:
|
||||
- Does not return to monitor
|
||||
- Level 1 cache is disabled for now
|
||||
- Check on trying to read CPU Configuration Register for CHRP/Prep for PCI
|
||||
and report a failure if in the wrong mode. May be able to set the model
|
||||
but it may be hard to test if we break PPCBug.
|
||||
- Use NVRAM for network configuration information
|
||||
|
||||
BSP Features Not Implemented:
|
||||
- VMEbus mapped in but untested
|
||||
- OpenPIC features not required for BSP are not supported
|
||||
|
||||
Memory Map
|
||||
==========
|
||||
BAT Mapping
|
||||
|
||||
ffff ffff |------------------------------------| ----- ffff ffff
|
||||
| ROM/FLASH Bank 0 | |
|
||||
fff0 0000 |------------------------------------| |
|
||||
| System I/O | |
|
||||
ffe0 0000 |------------------------------------| |
|
||||
| Replicated ROM/FLASH Bank 0 | |
|
||||
| Replicated System I/O | |
|
||||
ff80 0000 |------------------------------------| |
|
||||
| ROM/FLASH Bank 1 | DBAT3
|
||||
ff00 0000 |------------------------------------| - Supervisor R/W
|
||||
| PCI Interrupt Acknowledge | - Cache Inhibited
|
||||
fef0 0000 |------------------------------------| - Guarded
|
||||
| PCI Configuration Data Register | |
|
||||
fee0 0000 |------------------------------------| |
|
||||
| PCI Configuration Address Register | |
|
||||
fec0 0000 |------------------------------------| |
|
||||
| PCI I/O Space | |
|
||||
fe80 0000 |------------------------------------| |
|
||||
| PCI/ISA I/O Space | |
|
||||
fe00 0000 |------------------------------------| |
|
||||
| PCI/ISA Memory Space | |
|
||||
fd00 0000 |------------------------------------| |
|
||||
| | |
|
||||
| xxxxxxxxxxxxxx| ----- f000 0000
|
||||
| x not mapped |
|
||||
| xxxxxxxxxxxxxx| ----- 9000 0000
|
||||
| | |
|
||||
| | |
|
||||
| PCI Memory Space | DBAT2
|
||||
| | - Supervisor R/W
|
||||
| | - Cache Inhibited
|
||||
| | - Guarded
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
8000 0000 |------------------------------------| ----- 8000 0000
|
||||
| x |
|
||||
| x not mapped |
|
||||
| Reserved xxxxxxxxxxxxxx| ----- 1000 0000
|
||||
| | |
|
||||
| | |
|
||||
0200 0000 |------------------------------------| |
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
| DRAM (32MB) | DBAT1/IBAT1
|
||||
| | - Supervisor R/W
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
| | |
|
||||
0000 0000 |------------------------------------| ----- 0000 0000
|
||||
|
||||
|
||||
TTCP Performance on First Day Run
|
||||
=================================
|
||||
Fedora Core 1 on (according to /proc/cpuinfo) a 300 Mhz P3 using Netgear
|
||||
10/100 CardBus NIC on a dedicated 10BaseT LAN.
|
||||
|
||||
ON MVME2100: ttcp -t -s 192.168.2.107
|
||||
REPORTED ON MVME2100:
|
||||
ttcp-t: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp -> 192.168.2.107
|
||||
ttcp-t: socket
|
||||
ttcp-t: connect
|
||||
ttcp-t: 16777216 bytes in 20.80 real seconds = 787.69 KB/sec +++
|
||||
ttcp-t: 2048 I/O calls, msec/call = 10.40, calls/sec = 98.46
|
||||
ttcp-t: 0.0user 20.8sys 0:20real 100% 0i+0d 0maxrss 0+0pf 0+0csw
|
||||
|
||||
ON MVME2100: ttcp -t -s 192.168.2.107
|
||||
REPORTED ON MVME2100:
|
||||
ttcp -r -s
|
||||
ttcp-r: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp
|
||||
ttcp-r: socket
|
||||
ttcp-r: accept from 192.168.2.107
|
||||
ttcp-r: 16777216 bytes in 15.41 real seconds = 1063.21 KB/sec +++
|
||||
ttcp-r: 11588 I/O calls, msec/call = 1.36, calls/sec = 751.98
|
||||
ttcp-r: 0.0user 15.4sys 0:15real 100% 0i+0d 0maxrss 0+0pf 0+0csw
|
||||
|
||||
@@ -25,7 +25,7 @@ DEFAULT_INCLUDES =
|
||||
|
||||
# Remove references to EABI when compiling bootloader
|
||||
BOOTLOADER_CPU_FLAGS=$(subst -msdata=eabi,,$(subst -meabi,,$(CPU_CFLAGS)))
|
||||
AM_CPPFLAGS = -D__BOOT__ -DDEBUG
|
||||
AM_CPPFLAGS = -D__BOOT__
|
||||
AM_CFLAGS = \
|
||||
$(GCC_SPECS) -specs bsp_specs -qrtems -mrelocatable \
|
||||
-msoft-float -mstrict-align -fno-builtin -Wall -mmultiple \
|
||||
|
||||
@@ -20,6 +20,16 @@ AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
|
||||
AS=$CC
|
||||
AM_PROG_AS
|
||||
|
||||
RTEMS_BSPOPTS_SET([mvme2100],[mvme2100],[1])
|
||||
RTEMS_BSPOPTS_SET([mvme2100],[*],[])
|
||||
RTEMS_BSPOPTS_HELP([mvme2100],
|
||||
[Defined for MVME2100 -- undefined for others])
|
||||
|
||||
RTEMS_BSPOPTS_SET([mpc8240],[mvme2100],[1])
|
||||
RTEMS_BSPOPTS_SET([mpc8240],[*],[])
|
||||
RTEMS_BSPOPTS_HELP([mpc8240],
|
||||
[Defined for boards with MPC8240 -- undefined for others])
|
||||
|
||||
RTEMS_BSPOPTS_SET([PPC_USE_DATA_CACHE],[*],[1])
|
||||
RTEMS_BSPOPTS_HELP([PPC_USE_DATA_CACHE],
|
||||
[If defined, then the PowerPC specific code in RTEMS will use
|
||||
@@ -43,6 +53,7 @@ pci/Makefile
|
||||
residual/Makefile
|
||||
start/Makefile
|
||||
startup/Makefile
|
||||
tod/Makefile
|
||||
vectors/Makefile
|
||||
vme/Makefile
|
||||
wrapup/Makefile])
|
||||
|
||||
@@ -5,11 +5,12 @@
|
||||
include_HEADERS = bspopts.h
|
||||
|
||||
include_HEADERS += ../../shared/include/nvram.h ../../shared/include/bsp.h \
|
||||
../../../shared/include/coverhd.h
|
||||
../../../shared/include/coverhd.h ../../../shared/tod.h
|
||||
|
||||
include_bspdir = $(includedir)/bsp
|
||||
include_bsp_HEADERS = ../../shared/console/consoleIo.h ../../shared/console/uart.h \
|
||||
../../shared/irq/irq.h ../../shared/motorola/motorola.h
|
||||
include_bsp_HEADERS = ../../shared/console/consoleIo.h \
|
||||
../../shared/console/uart.h ../../shared/irq/irq.h \
|
||||
../../shared/motorola/motorola.h
|
||||
|
||||
$(PROJECT_INCLUDE):
|
||||
$(mkinstalldirs) $@
|
||||
@@ -29,6 +30,9 @@ $(PROJECT_INCLUDE)/bsp.h: ../../shared/include/bsp.h
|
||||
$(PROJECT_INCLUDE)/coverhd.h: ../../../shared/include/coverhd.h
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
$(PROJECT_INCLUDE)/tod.h: ../../../shared/tod.h
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
$(PROJECT_INCLUDE)/bsp/consoleIo.h: ../../shared/console/consoleIo.h
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
@@ -46,6 +50,7 @@ TMPINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/bsp.h
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/nvram.h
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/tod.h
|
||||
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/bsp
|
||||
TMPINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/motorola.h
|
||||
|
||||
2
c/src/lib/libbsp/powerpc/motorola_powerpc/tod/.cvsignore
Normal file
2
c/src/lib/libbsp/powerpc/motorola_powerpc/tod/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
Makefile
|
||||
Makefile.in
|
||||
22
c/src/lib/libbsp/powerpc/motorola_powerpc/tod/Makefile.am
Normal file
22
c/src/lib/libbsp/powerpc/motorola_powerpc/tod/Makefile.am
Normal file
@@ -0,0 +1,22 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
|
||||
VPATH = @srcdir@:@srcdir@/../../shared/tod:@srcdir@/../../../shared
|
||||
|
||||
C_FILES = todcfg.c tod.c
|
||||
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))
|
||||
|
||||
OBJS = $(C_O_FILES)
|
||||
|
||||
include $(top_srcdir)/../../../../../../automake/compile.am
|
||||
include $(top_srcdir)/../../../../../../automake/lib.am
|
||||
|
||||
#
|
||||
# (OPTIONAL) Add local stuff here using +=
|
||||
#
|
||||
|
||||
all-local: $(ARCH) $(OBJS)
|
||||
|
||||
include $(top_srcdir)/../../../../../../automake/local.am
|
||||
@@ -2,7 +2,8 @@
|
||||
## $Id$
|
||||
##
|
||||
|
||||
BSP_PIECES = clock console irq openpic pci residual startup vectors motorola vme
|
||||
BSP_PIECES = clock console irq openpic pci residual startup \
|
||||
tod vectors motorola vme
|
||||
|
||||
# bummer; have to use $foreach since % pattern subst rules only replace 1x
|
||||
OBJS = $(foreach piece, $(BSP_PIECES), ../$(piece)/$(ARCH)/*.$(OBJEXT)) \
|
||||
|
||||
Reference in New Issue
Block a user