|  | Motorola MPC85xxCDS boards | 
|  | -------------------------- | 
|  |  | 
|  | The CDS family of boards consists of a PCI backplane called the | 
|  | "Arcadia", a PCI-form-factor carrier card that plugs into a PCI slot, | 
|  | and a CPU daughter card that bolts onto the daughter card. | 
|  |  | 
|  | Much of the content of the README.mpc85xxads for the 85xx ADS boards | 
|  | applies to the 85xx CDS boards as well.	 In particular the toolchain, | 
|  | the switch nomenclature, and the basis for the memory map.  There are | 
|  | some differences, though. | 
|  |  | 
|  |  | 
|  | Building U-Boot | 
|  | --------------- | 
|  |  | 
|  | The Binutils in current ELDK toolchain will not support MPC85xx | 
|  | chip.  You need to use binutils-2.14.tar.bz2 (or newer) from | 
|  | http://ftp.gnu.org/gnu/binutils. | 
|  |  | 
|  | The 85xx CDS code base is known to compile using: | 
|  | gcc (GCC) 3.2.2 20030217 (Yellow Dog Linux 3.0 3.2.2-2a) | 
|  |  | 
|  |  | 
|  | Memory Map | 
|  | ---------- | 
|  |  | 
|  | The memory map for u-boot and linux has been extended w.r.t. the ADS | 
|  | platform to allow for utilization of all 85xx CDS devices.  The memory | 
|  | map is setup for linux to operate properly.  The linux source when | 
|  | configured for MPC85xx CDS has been updated to reflect the new memory | 
|  | map. | 
|  |  | 
|  | The mapping is: | 
|  |  | 
|  | 0x0000_0000	   0x7fff_ffff	   DDR			   2G | 
|  | 0x8000_0000	   0x9fff_ffff	   PCI1 MEM		   512M | 
|  | 0xa000_0000	   0xbfff_ffff	   PCI2 MEM		   512M | 
|  | 0xe000_0000	   0xe00f_ffff	   CCSR			   1M | 
|  | 0xe200_0000	   0xe2ff_ffff	   PCI1 IO		   16M | 
|  | 0xe300_0000	   0xe3ff_ffff	   PCI2 IO		   16M | 
|  | 0xf000_0000	   0xf7ff_ffff	   SDRAM		   128M | 
|  | 0xf800_0000	   0xf80f_ffff	   NVRAM/CADMUS (*)	   1M | 
|  | 0xff00_0000	   0xff7f_ffff	   FLASH (2nd bank)	   8M | 
|  | 0xff80_0000	   0xffff_ffff	   FLASH (boot bank)	   8M | 
|  |  | 
|  | (*) The system control registers (CADMUS) start at offset 0xfdb0_4000 | 
|  | within the NVRAM/CADMUS region of memory. | 
|  |  | 
|  |  | 
|  | Using Flash | 
|  | ----------- | 
|  |  | 
|  | The CDS board  has two flash banks, each 8MB in size (2^23 = 0x00800000). | 
|  | There is a switch which allows the boot-bank to be selected.  The switch | 
|  | settings for updating flash are given below. | 
|  |  | 
|  | The u-boot commands for copying the boot-bank into the secondary bank are | 
|  | as follows: | 
|  |  | 
|  | erase ff780000 ff7fffff | 
|  | cp.b fff80000 ff780000 80000 | 
|  |  | 
|  |  | 
|  | U-boot/kermit commands for downloading an image, then copying | 
|  | it into the secondary bank: | 
|  |  | 
|  | loadb | 
|  | [Drop to kermit: | 
|  | ^\c | 
|  | send <u-boot-bin-image> | 
|  | c | 
|  | ] | 
|  |  | 
|  | erase ff780000 ff7fffff | 
|  | cp.b $loadaddr ff780000 80000 | 
|  |  | 
|  |  | 
|  | U-boot commands for downloading an image via tftp and flashing | 
|  | it into the second bank: | 
|  |  | 
|  | tftp 10000 <u-boot.bin.image> | 
|  | erase ff780000 ff7fffff | 
|  | cp.b 10000 ff780000 80000 | 
|  |  | 
|  |  | 
|  | After copying the image into the second bank of flash, be sure to toggle | 
|  | SW2[2] on the carrier card before resetting the board in order to set the | 
|  | secondary bank as the boot-bank. | 
|  |  | 
|  |  | 
|  | Carrier Board Switches | 
|  | ---------------------- | 
|  |  | 
|  | As a reminder, you should read the README.mpc85xxads too. | 
|  |  | 
|  | Most switches on the carrier board should not be changed.  The only | 
|  | user-settable switches on the carrier board are used to configure | 
|  | the flash banks and determining the PCI slot. | 
|  |  | 
|  | The first two bits of SW2 control how flash is used on the board: | 
|  |  | 
|  | 12345678 | 
|  | -------- | 
|  | SW2=00XXXXXX	   FLASH:  Boot bank 1, bank 2 available. | 
|  | 01XXXXXX	   FLASH:  Boot bank 2, bank 1 available (swapped). | 
|  | 10XXXXXX	   FLASH:  Boot promjet, bank 1 available | 
|  | 11XXXXXX	   FLASH:  Boot promjet, bank 2 available | 
|  |  | 
|  | The boot bank is always mapped to FF80_0000 and listed first by | 
|  | the "flinfo" command.  The secondary bank is always FF00_0000. | 
|  |  | 
|  | When using PCI, linux needs to know to which slot the CDS carrier is | 
|  | connected..  By convention, the user-specific bits of SW2 are used to | 
|  | convey this information: | 
|  |  | 
|  | 12345678 | 
|  | -------- | 
|  | SW2=xxxxxx00	   PCI SLOT INFORM: The CDS carrier is in slot0 of the Arcadia | 
|  | xxxxxx01	   PCI SLOT INFORM: The CDS carrier is in slot1 of the Arcadia | 
|  | xxxxxx10	   PCI SLOT INFORM: The CDS carrier is in slot2 of the Arcadia | 
|  | xxxxxx11	   PCI SLOT INFORM: The CDS carrier is in slot3 of the Arcadia | 
|  |  | 
|  | These are cleverly, er, clearly silkscreened as Slot 1 through 4, | 
|  | respectively, on the Arcadia near the support posts. | 
|  |  | 
|  |  | 
|  | The default setting of all switches on the carrier board is: | 
|  |  | 
|  | 12345678 | 
|  | -------- | 
|  | SW1=01101100 | 
|  | SW2=0x1111yy	   x=Flash bank, yy=PCI slot | 
|  | SW3=11101111 | 
|  | SW4=10001000 | 
|  |  | 
|  |  | 
|  | 8555/41 CPU Card Switches | 
|  | ------------------------- | 
|  |  | 
|  | Most switches on the CPU Card should not be changed.  However, the | 
|  | frequency can be changed by setting SW3: | 
|  |  | 
|  | 12345678 | 
|  | -------- | 
|  | SW3=XX00XXXX == CORE:CCB 2:1 | 
|  | XX01XXXX == CORE:CCB 5:2 | 
|  | XX10XXXX == CORE:CCB 3:1 | 
|  | XX11XXXX == CORE:CCB 7:2 | 
|  | XXXX1000 == CCB:SYSCLK 8:1 | 
|  | XXXX1010 == CCB:SYSCLK 10:1 | 
|  |  | 
|  | A safe default setting for all switches on the CPU board is: | 
|  |  | 
|  | 12345678 | 
|  | -------- | 
|  | SW1=10001111 | 
|  | SW2=01000111 | 
|  | SW3=00001000 | 
|  | SW4=11111110 | 
|  |  | 
|  |  | 
|  | 8548 CPU Card Switches | 
|  | ---------------------- | 
|  | And, just to be confusing, in this set of switches: | 
|  |  | 
|  | ON  = 1 | 
|  | OFF = 0 | 
|  |  | 
|  | Default | 
|  | SW1=11111101 | 
|  | SW2=10011111 | 
|  | SW3=11001000    (8X) (2:1) | 
|  | SW4=11110011 | 
|  |  | 
|  | SW3=X000XXXX  == CORE:CCB    4:1 | 
|  | X001XXXX  == CORE:CCB    9:2 | 
|  | X010XXXX  == CORE:CCB    1:1 | 
|  | X011XXXX  == CORE:CCB    3:2 | 
|  | X100XXXX  == CORE:CCB    2:1 | 
|  | X101XXXX  == CORE:CCB    5:2 | 
|  | X110XXXX  == CORE:CCB    3:1 | 
|  | X111XXXX  == CORE:CCB    7:2 | 
|  | XXXX0000  == CCB:SYSCLK 16:1 | 
|  | XXXX0001  == RESERVED | 
|  | XXXX0010  == CCB:SYSCLK  2:1 | 
|  | XXXX0011  == CCB:SYSCLK  3:1 | 
|  | XXXX0100  == CCB:SYSCLK  4:1 | 
|  | XXXX0101  == CCB:SYSCLK  5:1 | 
|  | XXXX0110  == CCB:SYSCLK  6:1 | 
|  | XXXX0111  == RESERVED | 
|  | XXXX1000  == CCB:SYSCLK  8:1 | 
|  | XXXX1001  == CCB:SYSCLK  9:1 | 
|  | XXXX1010  == CCB:SYSCLK 10:1 | 
|  | XXXX1011  == RESERVED | 
|  | XXXX1100  == CCB:SYSCLK 12:1 | 
|  | XXXX1101  == CCB:SYSCLK 20:1 | 
|  | XXXX1110  == RESERVED | 
|  | XXXX1111  == RESERVED | 
|  |  | 
|  |  | 
|  | eDINK Info | 
|  | ---------- | 
|  |  | 
|  | One bank of flash may contain an eDINK image. | 
|  |  | 
|  | Memory Map: | 
|  |  | 
|  | CCSRBAR @ 0xe0000000 | 
|  | Flash Bank 1 @ 0xfe000000 | 
|  | Flash Bank 2 @ 0xff000000 | 
|  | Ram @ 0 | 
|  |  | 
|  | Commands for downloading a u-boot image to memory from edink: | 
|  |  | 
|  | env -c | 
|  | time -s 4/8/2004 4:30p | 
|  | dl -k -b -o 100000 | 
|  | [Drop to kermit: | 
|  | ^\c | 
|  | transmit /binary <u-boot-bin-image> | 
|  | c | 
|  | ] | 
|  |  | 
|  | fu -l 100000 fe780000 80000 |