summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/mvme2307/NOTES
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mvme2307/NOTES')
-rw-r--r--c/src/lib/libbsp/powerpc/mvme2307/NOTES180
1 files changed, 180 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/powerpc/mvme2307/NOTES b/c/src/lib/libbsp/powerpc/mvme2307/NOTES
new file mode 100644
index 0000000000..4623e80fad
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/mvme2307/NOTES
@@ -0,0 +1,180 @@
+This should run on Motorola MVME230x boards, where x is 5, 6, 7,
+or 8 designating 16, 32, 64, or 128 MB of DRAM. It should also
+work on MVME230x where x is 1, 2, 3, or 4 which is the same board
+using a '603 instead of a '604 processor. RTEMS_CPU_MODEL would
+need to change in make/custom/mvme2307.cfg.
+
+Application is linked to run from RAM. If running from ROM, it
+will copy itself to RAM (0x4000) when it boots. PPCBUG should
+be used to load a binary image from the TFTP host into location
+0x4000, with an entry point at 0x401c. PPCBUG can be set to
+autoboot the application from ROM. PPCBUG does all of the low
+level setup of memory controllers and such on the board before
+jumping into the RTEMS application.
+
+TODO: Data cache is not enabled. This BSP should probably
+be part of the MCP750 BSP as much of the hardware here is
+also on the MCP750 board. The dec21140 driver here is derived
+from an early version from the MCP750 BSP, but has been
+rewritten to use scatter/gather DMA and interrupts rather than
+CPU copies and polling. This should be considered for merging
+into to the MCP750 BSP. The interrupt conroller code needs to
+be better integrated into RTEMS calls like the MCP750. The
+BSP should probably be renamed to mvme230x.
+
+----------------------------------------------------------------------------
+
+Building and loading an application:
+
+=============== (host) =======================================
+% make
+% powerpc-rtems-objcopy --output-target=binary hello.exe /tftpboot/hello.bin
+
+=============== (target - run from RAM) ======================
+PPC1-Bug>niop
+Controller LUN =00?
+Device LUN =00?
+Get/Put =G?
+File Name =? hello.bin
+Memory Address =00004000?
+Length =00000000?
+Byte Offset =00000000?
+
+Bytes Received =&140780, Bytes Loaded =&140780
+Bytes/Second =&140780, Elapsed Time =1 Second(s)
+PPC1-Bug>go 401c
+Effective address: 0000401C
+
+
+*** HELLO WORLD TEST ***
+Hello World
+*** END OF HELLO WORLD TEST ***
+PPC1-Bug>
+
+=============== (target - run from ROM) ======================
+
+PPC1-Bug>niop
+Controller LUN =00?
+Device LUN =00?
+Get/Put =G?
+File Name =? hello.bin
+Memory Address =00004000?
+Length =00000000?
+Byte Offset =00000000?
+
+Bytes Received =&140780, Bytes Loaded =&140780
+Bytes/Second =&140780, Elapsed Time =1 Second(s)
+
+PPC1-Bug>pflash 4000:28000 ff000000
+Source Starting/Ending Addresses =00004000/0002BFFF
+Destination Starting/Ending Addresses =FF000000/FF027FFF
+Number of Effective Bytes =00028000 (&163840)
+
+Program FLASH Memory (Y/N)? y
+FLASH Memory Programming Complete
+
+(reset to boot into application)
+
+----------------------------------------------------------------------------
+
+memory map:
+0x00000000 - 0x03ffffff RAM
+0x80000000 - 0xbf7fffff PCI I/O space
+0xc0000000 - 0xfcffffff PCI memory space
+0xfd000000 - 0xfdffffff PCI memory space
+0xfe000000 - 0xfe7fffff PCI I/O space
+0xfef80000 - 0xfef8ffff Falcon registers
+0xfeff0000 - 0xfeffffff Raven registers
+0xff000000 - 0xff3fffff ROM bank A - application
+0xff800000 - 0xff8fffff ROM bank B - PPCBUG
+0xfff00000 - 0xffffffff ROM bank A or B
+
+----------------------------------------------------------------------------
+Use the PPCBUG "env" command to configure the board:
+
+PPC1-Bug>env
+Bug or System environment [B/S] = B?
+Field Service Menu Enable [Y/N] = N?
+Remote Start Method Switch [G/M/B/N] = B?
+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] = N?
+Negate VMEbus SYSFAIL* Always [Y/N] = N?
+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 Bootlist (GEV.fw-boot-path) Boot Enable [Y/N] = N?
+NVRAM Bootlist (GEV.fw-boot-path) Boot at power-up only [Y/N] = N?
+NVRAM Bootlist (GEV.fw-boot-path) Boot Abort Delay = 5?
+Auto Boot Enable [Y/N] = N?
+Auto Boot at power-up only [Y/N] = N?
+Auto Boot Scan Enable [Y/N] = N?
+Auto Boot Scan Device Type List = FDISK/CDROM/TAPE/HDISK/?
+Auto Boot Controller LUN = 00?
+Auto Boot Device LUN = 00?
+Auto Boot Partition Number = 00?
+Auto Boot Abort Delay = 7?
+Auto Boot Default String [NULL for an empty string] = ?
+ROM Boot Enable [Y/N] = Y?
+ROM Boot at power-up only [Y/N] = N?
+ROM Boot Enable search of VMEbus [Y/N] = N?
+ROM Boot Abort Delay = 5?
+ROM Boot Direct Starting Address = FF000000?
+ROM Boot Direct Ending Address = FF3FFFFF?
+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) = 0A0B0E0F?
+Serial Startup Code Master Enable [Y/N] = N?
+Serial Startup Code LF Enable [Y/N] = N?
+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 = C0820000?
+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 = C0410000?
+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 = C0400000?
+PCI Slave Image 3 Base Address Register = 2FFF0000?
+PCI Slave Image 3 Bound Address Register = 30000000?
+PCI Slave Image 3 Translation Offset = D0000000?
+VMEbus Slave Image 0 Control = E0F20000?
+VMEbus Slave Image 0 Base Address Register = 00000000?
+VMEbus Slave Image 0 Bound Address Register = 02000000?
+VMEbus Slave Image 0 Translation Offset = 80000000?
+VMEbus Slave Image 1 Control = 00000000?
+VMEbus Slave Image 1 Base Address Register = 00000000?
+VMEbus Slave Image 1 Bound Address Register = 00000000?
+VMEbus Slave Image 1 Translation Offset = 00000000?
+VMEbus Slave Image 2 Control = 00000000?
+VMEbus Slave Image 2 Base Address Register = 00000000?
+VMEbus Slave Image 2 Bound Address Register = 00000000?
+VMEbus Slave Image 2 Translation Offset = 00000000?
+VMEbus Slave Image 3 Control = 00000000?
+VMEbus Slave Image 3 Base Address Register = 00000000?
+VMEbus Slave Image 3 Bound Address Register = 00000000?
+VMEbus Slave Image 3 Translation Offset = 00000000?
+PCI Miscellaneous Register = 10000000?
+Special PCI Slave Image Register = 00000000?
+Master Control Register = 80C00000?
+Miscellaneous Control Register = 52060000?
+User AM Codes
+