Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/nathanw_sa]: src/sys/arch/sandpoint Sync with reality. Add NetBSD tag.



details:   https://anonhg.NetBSD.org/src/rev/bcd15c6e802c
branches:  nathanw_sa
changeset: 504567:bcd15c6e802c
user:      briggs <briggs%NetBSD.org@localhost>
date:      Tue Mar 06 20:16:10 2001 +0000

description:
Sync with reality.  Add NetBSD tag.

diffstat:

 sys/arch/sandpoint/README |  146 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 146 insertions(+), 0 deletions(-)

diffs (150 lines):

diff -r 06688c249c1e -r bcd15c6e802c sys/arch/sandpoint/README
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/sandpoint/README Tue Mar 06 20:16:10 2001 +0000
@@ -0,0 +1,146 @@
+/*     $NetBSD: README,v 1.2.8.2 2001/03/06 20:16:10 briggs Exp $      */
+
+Overview
+
+This is a port to the Motorola "SandPoint" evaluation system.  The
+SandPoint is the successor to the "Yellowknife" system.  The system
+can be fitted with different PMCs (Processor Mezzanine Cards).  This
+port is specifically for the rev X2 motherboard system with the PPC
+8240 PMC rev X4 installed.  It also works with the Altimus X2 PMC
+(MPC7400 with MPC107).
+
+All references (cf) listed here are for the MPC8240 Integrated Processor
+User's Manual.
+
+Information on the Sandpoint can be found on Motorola's web site:
+http://www.mot.com/SPS/PowerPC/teksupport/refdesigns/sandpoint.html
+
+
+SandPoint Hardware Configuration
+
+This port was developed on a Sandpoint X2 motherboard with a Unity X4 PMC.
+
+This port assumes that the jumpers are set as follows:
+       S3/S4   - Mode 1: PMC w/o IDE (switches opposite, one nearest PCI
+                 slot toward near edge)
+       S5      - Interrupt to PMC normal (switch toward near edge)
+       S6      - Local I/O shared with slot 2 (switch toward near edge)
+
+Mode 0 (PMC w/ IDE) does not appear to work right with ISA interrupts.  The
+interrupts from the Winbond chip do not appear at the PMC.
+
+On the PPMC, we assume a 100MHz clock.
+on PPMC: (C == closed, or "on")
+    SW2:
+       C       ROM on PCI bus (DINK32 on mainboard)
+       -       Map "B": CHRP
+       C       Motorola PPMC
+       C       Wait for initialization (peripheral mode)
+       -       Program mode: Normal mode
+       -       Select normal ROM
+       -       33 MHz only
+       -       COP only resets local CPU/MPC107
+    SW3:
+       -C--C   PCI 33, Mem 66, PPC 266
+       --      0.5 - 0.9 ns PCI hold time
+       C       25 ohm PCI drive strength
+
+
+Address Map
+
+For this port, we choose the "Address Map B" (CHRP-compatible) for the
+system (see SW2, #2, above):
+
+ (Processor View)
+0000 0000   0009 FFFF  System Memory
+000A 0000   000F FFFF  Compatibility Hole (programmable to go to PCI space
+                       or system memory--programmed for system memory--cf 5.8)
+0010 0000   3FFF FFFF  System memory
+4000 0000   7FFF FFFF  Reserved (programmed to give a memory select
+                       error if accessed--cf 5.7.2)
+8000 0000   FCFF FFFF  PCI memory space
+FD00 0000   FDFF FFFF  PCI/ISA memory space (see 5.8, CPU_FD_ALIAS_EN)
+FE00 0000   FE7F FFFF  PCI/ISA I/O space (Forwarded to PCI address space
+                       with high byte zeroed, but FE01 0000 and up are
+                       reserved)
+FE80 0000   FEBF FFFF  PCI I/O space (Forwarded to PCI I/O space with high
+                       byte zeroed)
+FEC0 0000   FEDF FFFF  PCI configuration address register (Each word in this
+                       range is aliased to the PCI CONFIG_ADDR register)
+FEE0 0000   FEEF FFFF  PCI configuration data register (Each word in this
+                       range is aliased to the PCI CONFIG_DATA register)
+FEF0 0000   FEFF FFFF  PCI interrupt acknowledge
+FF00 0000   FF7F FFFF  32- or 64-bit Flash/ROM space (Can hit either local
+                       memory or PCI bus -- cf. 5.6)
+FF80 0000   FFFF FFFF  8-, 32- or 64-bit Flash/ROM space (Can hit either
+                       local memory or PCI bus -- cf. 5.6)
+
+This is a host-mode port, so the inbound and output translation windows
+are unused.
+
+The Embedded Utilities Memory Block (EUMB) is set to be 1M below the end
+of the PCI memory space: FC00 0000, so EUMBBAR is FC00 0000, giving us
+
+Message unit (I2O) base        : FC00 0000     (cf. 10.2, 10.2.3, 10.3)
+DMA base               : FC00 1000     (cf. 9.2)
+ATU base               : FC00 2000     (cf. 4.3.3)
+I2C base               : FC00 3000     (cf. 11.3)
+EPIC base              : FC04 0000     (cf. 12.2)
+
+
+
+Boot Information
+
+The SandPoint ships with the Motorola DINK32 ROM.  This is a rather
+basic ROM with only serial-download (S-Record) capability for
+loading the kernel.  Basically, the kernel is loaded to a specified
+address and you jump to it.  The ROM takes care of initializing
+the MICRs and MCCRs.  There is really no boot information to pass.
+
+It would be nice to have a much more complete ROM interface, allowing
+settings for, say, bootp/tftp boot, automatic boot, and persistent
+settings (for console rate, auto boot, bootp, etc), and that might
+be provided at some point, but that's not available as of this
+writing.
+
+So, the kernel is hard-coded to boot w/ 32MB for now.
+
+
+
+Interrupt Configuration
+
+The 8240 has the internal EPIC.  For the SandPoint, the EPIC is programmed
+in mixed-mode (GCR) with direct interrupts (EICR).  With this configuration,
+there are 13 available interrupts:
+       4 global timers
+       5 direct IRQs
+               IRQ0 - PCI Slot #0 INTA#
+               IRQ1 - PCI Slot #1 INTA# / shared with WinBond I/O
+               IRQ2 - PCI Slot #2 INTA#
+               IRQ3 - PCI Slot #3 INTA#
+               IRQ4 - On-PPMC 16552 interrupt (Unity X2)
+               IRQ4 - pulled down w/ resistor (Unity X4)
+       4 internal interrupts
+               I2C
+               DMA Ch0
+               DMA Ch1
+               I2O message unit
+
+The SandPoint can run in one of 4 interrupt modes:
+  0 - PMC host with IDE (3.3v PCI slots are unavailable)
+  1 - PMC host w/o IDE (all PCI slots are available)
+  2 - PMC agent, Winbond providing arbitration & interrupt to INTA# on PMC
+  3 - Yellowknife mode--just like #2, except drives INTA# on 4th PCI slot
+
+We choose to run in mode 1 as Motorola recommends modes 0 or 1 for
+all new development.  Unfortunately, mode 0 does not appear to
+work--"ISA" interrupts are lost.  In this mode, with interrupts
+routed to PCI slot 3, we have to check for both a Winbond (ISA)
+interrupt, and a PCI slot interrupt.  So basically, we have a
+two-level interrupt configuration for Winbond interrupts.  The ISA
+bus attachment registers an interrupt for PCI slot 3 with its own
+interrupt handler.  Drivers for ISA devices on the Winbond will
+register interrupts with the ISA interrupt handler.  The sticky
+part of this is how to deal with one global interrupt priority.
+
+



Home | Main Index | Thread Index | Old Index