summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorwdenk <wdenk>2004-10-28 00:09:35 +0000
committerwdenk <wdenk>2004-10-28 00:09:35 +0000
commit983fda8391fa0ccfd4e0fd0bfb5a5e662e07b222 (patch)
treeb39fd35e9f0bf906338bfce8f83eb7c8ff850428 /doc
parente3c9b9f9287a17c2a20d9b1b77747bd209e8408b (diff)
downloadtalos-obmc-uboot-983fda8391fa0ccfd4e0fd0bfb5a5e662e07b222.tar.gz
talos-obmc-uboot-983fda8391fa0ccfd4e0fd0bfb5a5e662e07b222.zip
Patch by TsiChung Liew, 23 Sep 2004:
- add support for MPC8220 CPU - Add support for Alaska and Yukon boards
Diffstat (limited to 'doc')
-rw-r--r--doc/README.alaska8220482
1 files changed, 482 insertions, 0 deletions
diff --git a/doc/README.alaska8220 b/doc/README.alaska8220
new file mode 100644
index 0000000000..8e659f3dde
--- /dev/null
+++ b/doc/README.alaska8220
@@ -0,0 +1,482 @@
+Freescale Alaska MPC8220 board
+==============================
+
+TsiChung Liew(Tsi-Chung.Liew@freescale.com)
+Created 9/21/04
+===========================================
+
+
+Changed files:
+==============
+
+- Makefile added MPC8220 and Alaska8220_config
+- MAKEALL added MPC8220 and Alaska8220
+- README added CONFIG_MPC8220, Alaska8220_config
+
+- common/cmd_bdinfo.c added board information members for MPC8220
+- common/cmd_bootm.c added clocks for MPC8220 in do_bootm_linux()
+
+- include/common.h added CONFIG_MPC8220
+
+- include/asm-ppc/u-boot.h added board information members for MPC8220
+- include/asm-ppc/global_data.h added global variables - inp_clk, pci_clk,
+ vco_clk, pev_clk, flb_clk, and bExtUart
+
+- lib_ppc/board.c added CONFIG_MPC8220 support
+
+- net/eth.c added FEC support for MPC8220
+
+Added files:
+============
+- board/alaska directory for Alaska MPC8220
+- board/alaska/alaska.c Alaska dram and BATs setup
+- board/alaska/extserial.c external serial (debug card serial) support
+- board/alaska/flash.c Socket (AMD) and Onboard (INTEL) flash support
+- board/alaska/serial.c to determine which int/ext serial to use
+- board/alaska/Makefile Makefile
+- board/alaska/config.mk config make
+- board/alaska/u-boot.lds Linker description
+
+- cpu/mpc8220/dma.h multi-channel dma header file
+- cpu/mpc8220/dramSetup.h dram setup header file
+- cpu/mpc8220/fec.h MPC8220 FEC header file
+- cpu/mpc8220/cpu.c cpu specific code
+- cpu/mpc8220/cpu_init.c Flexbus ChipSelect and Mux pins setup
+- cpu/mpc8220/dramSetup.c MPC8220 DDR SDRAM setup
+- cpu/mpc8220/fec.c MPC8220 FEC driver
+- cpu/mpc8220/i2c.c MPC8220 I2C driver
+- cpu/mpc8220/interrupts.c interrupt support (not enable)
+- cpu/mpc8220/loadtask.c load dma
+- cpu/mpc8220/speed.c system, pci, flexbus, pev, and cpu clock
+- cpu/mpc8220/traps.c exception
+- cpu/mpc8220/uart.c MPC8220 UART driver
+- cpu/mpc8220/Makefile Makefile
+- cpu/mpc8220/config.mk config make
+- cpu/mpc8220/fec_dma_task.S MPC8220 FEC multi-channel dma program
+- cpu/mpc8220/io.S io functions
+- cpu/mpc8220/start.S start up
+
+- include/mpc8220.h
+
+- include/asm-ppc/immap_8220.h
+
+- include/configs/Alaska8220.h
+
+
+1. SWITCH SETTINGS
+==================
+1.1 SW1: 0 - Boot from Socket Flash (AMD) or 1 - Onboard Flash (INTEL)
+ SW2: 0 - Select MPC8220 UART or 1 - Debug Card UART
+ SW3: unsed
+ SW4: 0 - 1284 or 1 - FEC1
+ SW5: 0 - PEV or 1 - FEC2
+
+
+2. MEMORY MAP UNDER U-BOOT AND LINUX KERNEL
+===========================================
+2.1. For the initial bringup, we adopted a consistent memory scheme between u-boot and
+ linux kernel, you can customize it based on your system requirements:
+ DDR: 0x00000000-0x1fffffff (max 512MB)
+ MBAR: 0xf0000000-0xf0027fff (128KB)
+ CPLD: 0xf1000000-0xf103ffff (256KB)
+ FPGA: 0xf2000000-0xf203ffff (256KB)
+ Flash: 0xfe000000-0xffffffff (max 32MB)
+
+3. DEFINITIONS AND COMPILATION
+==============================
+3.1 Explanation on NEW definitions in include/configs/alaska8220.h
+ CONFIG_MPC8220 MPC8220 specific
+ CONFIG_ALASKA8220 Alaska board specific
+ CFG_MPC8220_CLKIN Define Alaska Input Clock
+ CONFIG_PSC_CONSOLE Enable MPC8220 UART
+ CONFIG_EXTUART_CONSOLE Enable External 16552 UART
+ CFG_AMD_BOOT To determine the u-boot is booted from AMD or Intel
+ CFG_MBAR MBAR base address
+ CFG_DEFAULT_MBAR Reset MBAR base address
+
+3.2 Compilation
+ export CROSS_COMPILE=cross-compile-prefix
+ cd u-boot-1-1-x
+ make distclean
+ make Alaska8220_config
+ make
+
+
+4. SCREEN DUMP
+==============
+4.1 Alaska MPC8220 board
+ Boot from AMD (NOTE: May not show exactly the same)
+
+U-Boot 1.1.1 (Sep 22 2004 - 22:14:41)
+
+CPU: MPC8220 (JTAG ID 1640301d) at 300 MHz
+ Bus 120 MHz, CPU 300 MHz, PCI 30 MHz, VCO 480 MHz
+Board: Alaska MPC8220 Evaluation Board
+I2C: 93 kHz, ready
+DRAM: 256 MB
+Reserving 167k for U-Boot at: 0ffd6000
+FLASH: 16.5 MB
+*** Warning - bad CRC, using default environment
+
+In: serial
+Out: serial
+Err: serial
+Net: FEC ETHERNET
+=> flinfo
+
+Bank # 1: INTEL 28F128J3A
+ Size: 8 MB in 64 Sectors
+ Sector Start Addresses:
+ FE000000 FE020000 FE040000 FE060000 FE080000
+ FE0A0000 FE0C0000 FE0E0000 FE100000 FE120000
+ FE140000 FE160000 FE180000 FE1A0000 FE1C0000
+ FE1E0000 FE200000 FE220000 FE240000 FE260000
+ FE280000 FE2A0000 FE2C0000 FE2E0000 FE300000
+ FE320000 FE340000 FE360000 FE380000 FE3A0000
+ FE3C0000 FE3E0000 FE400000 FE420000 FE440000
+ FE460000 FE480000 FE4A0000 FE4C0000 FE4E0000
+ FE500000 FE520000 FE540000 FE560000 FE580000
+ FE5A0000 FE5C0000 FE5E0000 FE600000 FE620000
+ FE640000 FE660000 FE680000 FE6A0000 FE6C0000
+ FE6E0000 FE700000 FE720000 FE740000 FE760000
+ FE780000 FE7A0000 FE7C0000 FE7E0000
+
+Bank # 2: INTEL 28F128J3A
+ Size: 8 MB in 64 Sectors
+ Sector Start Addresses:
+ FE800000 FE820000 FE840000 FE860000 FE880000
+ FE8A0000 FE8C0000 FE8E0000 FE900000 FE920000
+ FE940000 FE960000 FE980000 FE9A0000 FE9C0000
+ FE9E0000 FEA00000 FEA20000 FEA40000 FEA60000
+ FEA80000 FEAA0000 FEAC0000 FEAE0000 FEB00000
+ FEB20000 FEB40000 FEB60000 FEB80000 FEBA0000
+ FEBC0000 FEBE0000 FEC00000 FEC20000 FEC40000
+ FEC60000 FEC80000 FECA0000 FECC0000 FECE0000
+ FED00000 FED20000 FED40000 FED60000 FED80000
+ FEDA0000 FEDC0000 FEDE0000 FEE00000 FEE20000
+ FEE40000 FEE60000 FEE80000 FEEA0000 FEEC0000
+ FEEE0000 FEF00000 (RO) FEF20000 (RO) FEF40000 FEF60000
+ FEF80000 FEFA0000 FEFC0000 FEFE0000 (RO)
+
+Bank # 3: AMD AMD29F040B
+ Size: 0 MB in 7 Sectors
+ Sector Start Addresses:
+ FFF00000 (RO) FFF10000 (RO) FFF20000 (RO) FFF30000 FFF40000
+ FFF50000 FFF60000
+
+Bank # 4: AMD AMD29F040B
+ Size: 0 MB in 1 Sectors
+ Sector Start Addresses:
+ FFF70000 (RO)
+=> bdinfo
+
+memstart = 0xF0009800
+memsize = 0x10000000
+flashstart = 0xFFF00000
+flashsize = 0x01080000
+flashoffset = 0x00025000
+sramstart = 0xF0020000
+sramsize = 0x00008000
+bootflags = 0x00000001
+intfreq = 300 MHz
+busfreq = 120 MHz
+inpfreq = 30 MHz
+flbfreq = 30 MHz
+pcifreq = 30 MHz
+vcofreq = 480 MHz
+pevfreq = 81 MHz
+ethaddr = 00:E0:0C:BC:E0:60
+eth1addr = 00:E0:0C:BC:E0:61
+IP addr = 192.162.1.2
+baudrate = 115200 bps
+=> printenv
+bootargs=root=/dev/ram rw
+bootdelay=5
+baudrate=115200
+ethaddr=00:e0:0c:bc:e0:60
+eth1addr=00:e0:0c:bc:e0:61
+ipaddr=192.162.1.2
+serverip=192.162.1.1
+gatewayip=192.162.1.1
+netmask=255.255.255.0
+hostname=Alaska
+stdin=serial
+stdout=serial
+stderr=serial
+ethact=FEC ETHERNET
+
+Environment size: 268/65532 bytes
+=> setenv ipaddr 192.160.1.2
+=> setenv serverip 192.160.1.1
+=> setenv gatewayip 192.160.1.1
+=> saveenv
+Saving Environment to Flash...
+
+.
+Un-Protected 1 sectors
+Erasing Flash...
+Erasing sector 0 ... done
+Erased 1 sectors
+Writing to Flash... done
+
+.
+Protected 1 sectors
+=> tftp 0x10000 linux.elf
+Using FEC ETHERNET device
+TFTP from server 192.160.1.1; our IP address is 192.160.1.2; sending through gateway 192.160.1.1
+Filename 'linux.elf'.
+Load address: 0x10000
+Loading: invalid RARP header
+#################################################################
+ #################################################################
+ #################################################################
+ #################################################################
+ #################################################################
+ #################################################################
+ #################################################################
+ #################################################################
+ ##################################################
+done
+Bytes transferred = 2917494 (2c8476 hex)
+=> bootelf
+Loading .text @ 0x00a00000 (23820 bytes)
+Loading .data @ 0x00a06000 (2752512 bytes)
+Clearing .bss @ 0x00ca6000 (12764 bytes)
+## Starting application at 0x00a00000 ...
+
+Collect some entropy from RAM........done
+loaded at: 00A00000 00CA91DC
+zimage at: 00A06A93 00AD7756
+initrd at: 00AD8000 00CA5565
+avail ram: 00CAA000 014AA000
+
+Linux/PPC load: ip=off console=ttyS0,115200
+Uncompressing Linux...done.
+Now booting the kernel
+Total memory in system: 256 MB
+Memory BAT mapping: BAT2=256Mb, BAT3=0Mb, residual: 0Mb
+Linux version 2.4.21-rc1 (r61688@bluesocks.sps.mot.com) (gcc version 3.3.1) #17 Wed Sep 8 11:49:16 CDT 2004
+Motorola Alaska port (C) 2003 Motorola, Inc.
+CPLD rev 3
+CPLD switches 0x1b
+Set Pin Mux for FEC1
+Set Pin Mux for FEC2
+Alaska Pin Multiplexing:
+Port Configuration Register 0 = 0
+Port Configuration Register 1 = 0
+Port Configuration Register 2 = 0
+Port Configuration Register 3 = 50000000
+Port Configuration Register 3 - PCI = 51400180
+Setup Alaska FPGA PIC:
+Interrupt Enable Register *(u32) = 0
+Interrupt Status Register = 2f0000
+Interrupt Enable Register in_be32 = 0
+Interrupt Status Register = 2f0000
+Interrupt Enable Register in_le32 = 0
+Interrupt Status Register = 2f00
+Interrupt Enable Register readl = 0
+Interrupt Status Register = 2f00
+Interrupt Enable Register = 0
+Interrupt Status Register = 2f0000
+Setup Alaska PCI Controller:
+On node 0 totalpages: 65536
+zone(0): 65536 pages.
+zone(1): 0 pages.
+zone(2): 0 pages.
+Kernel command line: ip=off console=ttyS0,115200
+Using XLB clock (120.00 MHz) to set up decrementer
+Calibrating delay loop... 199.88 BogoMIPS
+Memory: 254792k available (1476k kernel code, 708k data, 228k init, 0k highmem)
+Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
+Inode cache hash table entries: 16384 (order: 5, 131072 bytes)
+Mount cache hash table entries: 512 (order: 0, 4096 bytes)
+Buffer-cache hash table entries: 16384 (order: 4, 65536 bytes)
+Page-cache hash table entries: 65536 (order: 6, 262144 bytes)
+POSIX conformance testing by UNIFIX
+PCI: Probing PCI hardware
+PCI: (pcibios_init) Global-Hose = 0xc029d000
+Scanning bus 00
+Fixups for bus 00
+Bus scan for 00 returning with max=00
+PCI: (pcibios_init) finished pci_scan_bus(hose->first_busno = 0, hose->ops = c01a1a74, hose = c029d000)
+PCI: (pcibios_init) PCI Bus Count = 0 =?= Next Bus# = 1
+PCI: (pcibios_init@pci_fixup_irqs) finished machine dependent PCI interrupt routing!
+PCI: bridge rsrc 81000000..81ffffff (100), parent c01a7f88
+PCI: bridge rsrc 84000000..87ffffff (200), parent c01a7fa4
+PCI: (pcibios_init) finished allocating and assigning resources!
+initDma!
+Using 90 DMA buffer descriptors
+descUsed f0023600, descriptors f002360c freeSram f0024140
+unmask SDMA tasks: 0xf0008018 = 0x6f000000
+Linux NET4.0 for Linux 2.4
+Based upon Swansea University Computer Society NET3.039
+Initializing RT netlink socket
+Starting kswapd
+Journalled Block Device driver loaded
+JFFS version 1.0, (C) 1999, 2000 Axis Communications AB
+JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB.
+pty: 256 Unix98 ptys configured
+tracek: Copyright (C) Motorola, 2003.
+Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
+ttyS00 at 0xf1001008 (irq = 73) is a ST16650
+ttyS01 at 0xf1001010 (irq = 74) is a ST16650
+elp-fpanel: Copyright (C) Motorola, 2003.
+fpanel: fpanelWait timeout
+elp-engine: Copyright (C) Motorola, 2003.
+Video disabled due to configuration switch 4
+Alpine 1284 driver: Copyright (C) Motorola, 2003.
+1284 disabled due to configuration switch 5
+Alpine USB driver: Copyright (C) Motorola, 2003.
+OK
+USB: Descriptor download completed OK
+enable_irq(41) unbalanced
+enable_irq(75) unbalanced
+elp-dmaram: Copyright (C) Motorola, 2003.
+Total memory in system: 256 MB
+elp_dmaram: offset is 0x10000000, size is 0
+Xicor NVRAM driver: Copyright (C) Motorola, 2003.
+elp-video: Copyright (C) Motorola, 2003.
+Video disabled due to configuration switch 4
+elp-pfm: Copyright (C) Motorola, 2003.
+paddle: Copyright (C) Motorola, 2001, present.
+RAMDISK driver initialized: 16 RAM disks of 12288K size 1024 blocksize
+loop: loaded (max 8 devices)
+PPP generic driver version 2.4.2
+PPP Deflate Compression module registered
+Uniform Multi-Platform E-IDE driver Revision: 7.00beta-2.4
+ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
+init_alaska_mtd: chip probing count 0
+cfi_cmdset_0001: Erase suspend on write enabled
+Using buffer write method
+init_alaska_mtd: bank1, name:ALASKA0, size:16777216bytes
+ALASKA flash0: Using Static image partition definition
+Creating 3 MTD partitions on "ALASKA0":
+0x00000000-0x00280000 : "kernel"
+0x00280000-0x00fe0000 : "user"
+0x00fe0000-0x01000000 : "signature"
+mgt_fec_module_init
+mgt_fec_init()
+mgt_fec_init
+mgt_init_fec_dev(0xc05f6000,0)
+dev c05f6000 fec_priv c05f6160 fec f0009000
+mgt_init_fec_dev(0xc05f6800,1)
+dev c05f6800 fec_priv c05f6960 fec f0009800
+NET4: Linux TCP/IP 1.0 for NET4.0
+IP Protocols: ICMP, UDP, TCP, IGMP
+IP: routing cache hash table of 2048 buckets, 16Kbytes
+TCP: Hash tables configured (established 16384 bind 32768)
+NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
+RAMDISK: Compressed image found at block 0
+Freeing initrd memory: 1845k freed
+JFFS: Trying to mount a non-mtd device.
+VFS: Mounted root (romfs filesystem) readonly.
+Freeing unused kernel memory: 228k init
+INIT: version 2.78 booting
+INIT: Entering runlevel: 1
+"Space, a great big place of unknown stuff." -Dexter, for our MotD.
+[01/Jan/1970:00:00:01 +0000] boa: server version Boa/0.94.8.3
+[01/Jan/1970:00:00:01 +0000] boa: server built Sep 7 2004 at 17:40:55.
+[01/Jan/1970:00:00:01 +0000] boa: starting server pid=28, port 80
+Mounting flash filesystem, will take a minute...
+/etc/rc: line 30: /dev/lp0: No such devish-2.05b#
+sh-2.05b# ifup eth0
+client (v0.9.9-pre) started
+adapter index 2
+adapter hardware address 00:e0:0c:bc:e0:60
+execle'ing /usr/share/udhcpc/default.script
+/sbin/ifconfig eth0
+eth0 Link encap:Ethernet HWaddr 00:E0:0C:BC:E0:60
+ BROADCAST MULTICAST MTU:1500 Metric:1
+ mgt_fec_open
+ Rfec request irq
+X fec_open: rcv_ring_size 8, xmt_ring_size 8
+packmgt_fec_open(): call netif_start_queue()
+ets:0 errors:0 dropped:0 overruns:0 frame:0
+ TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
+ collisions:0 txqueuelen:100
+ RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
+ Base address:0x9000
+
+/sbin/ifconfig eth0 up
+entering raw listen mode
+Opening raw socket on ifindex 2
+adding option 0x35
+adding option 0x3d
+adding option 0x3c
+Sending discover...
+Waiting on select...
+unrelated/bogus packet
+Waiting on select...
+oooooh!!! got some!
+adding option 0x35
+adding option 0x3d
+adding option 0x3c
+adding option 0x32
+adding option 0x36
+Sending select for 163.12.48.146...
+Waiting on select...
+oooooh!!! got some!
+Waiting on select...
+oooooh!!! got some!
+Lease of 163.12.48.146 obtained, lease time 345600
+execle'ing /usr/share/udhcpc/default.script
+/sbin/ifconfig eth0 163.12.48.146 netmask 255.255.254.0
+/sbin/ifconfig eth0 up
+deleting routers
+/sbin/route del default
+/sbin/route add default gw 163.12.49.254 dev eth0
+adding dns 163.12.252.230
+adding dns 192.55.22.4
+adding dns 192.5.249.4
+entering none listen mode
+sh-2.05b#
+
+5. REPROGRAM U-BOOT
+===================
+5.1 Reprogram u-boot (boot from AMD)
+ 1. Unprotect the boot sector
+ => protect off bank 3
+ 2. Download new u-boot binary file
+ => tftp 0x10000 u-boot.bin
+ 3. Erase bootsector (max 7 sectors)
+ => erase 0xfff00000 0xfff6ffff
+ 4. Program the u-boot to flash
+ => cp.b 0x10000 0xfff00000
+ 5. Reset for the new u-boot to take place
+ => reset
+
+5.2 Reprogram u-boot (boot from AMD program at INTEL)
+ 1. Unprotect the boot sector
+ => protect off bank 2
+ 2. Download new u-boot binary file
+ => tftp 0x10000 u-boot.bin
+ 3. Erase bootsector (max 7 sectors)
+ => erase 0xfef00000 0xfefdffff
+ 4. Program the u-boot to flash
+ => cp.b 0x10000 0xfef00000
+ 5. Reset for the new u-boot to take place
+ => reset
+
+5.3 Reprogram u-boot (boot from INTEL)
+ 1. Unprotect the boot sector
+ => protect off bank 4
+ 2. Download new u-boot binary file
+ => tftp 0x10000 u-boot.bin
+ 3. Erase bootsector (max 7 sectors)
+ => erase 0xfff00000 0xfffdffff
+ 4. Program the u-boot to flash
+ => cp.b 0x10000 0xfff00000
+ 5. Reset for the new u-boot to take place
+ => reset
+
+5.4 Reprogram u-boot (boot from INTEL program at AMD)
+ 1. Unprotect the boot sector
+ => protect off bank 1
+ 2. Download new u-boot binary file
+ => tftp 0x10000 u-boot.bin
+ 3. Erase bootsector (max 7 sectors)
+ => erase 0xfe080000 0xfe0effff
+ 4. Program the u-boot to flash
+ => cp.b 0x10000 0xfe080000
+ 5. Reset for the new u-boot to take place
+ => reset
OpenPOWER on IntegriCloud