wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 1 | |
| 2 | U-Boot for MOUSSE/MPC8240 (KAHLUA) |
| 3 | ---------------------------------- |
| 4 | James Dougherty (jfd@broadcom.com), 09/10/01 |
| 5 | |
| 6 | The Broadcom/Vooha Mousse board is a 3U Compact PCI system board |
| 7 | which uses the MPC8240, a 64MB SDRAM SIMM, and has onboard |
| 8 | DEC 21143, NS16550 UART, an SGS M48T59Y TOD, and 4MB FLASH. |
| 9 | See also: http://www.vooha.com/ |
| 10 | |
| 11 | * NVRAM setenv/printenv/savenv supported. |
| 12 | * Date Command |
| 13 | * Serial Console support |
| 14 | * Network support |
| 15 | * FLASH of kernel images is supported. |
| 16 | * FLASH of U-Boot to onboard and PLCC boot region. |
| 17 | * Kernel command line options from NVRAM is supported. |
| 18 | * IP PNP options supported. |
| 19 | |
| 20 | U-Boot Loading... |
| 21 | |
| 22 | |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 23 | U-Boot 1.0.5 (Sep 10 2001 - 00:22:25) |
| 24 | |
| 25 | CPU: MPC8240 Revision 1.1 at 198 MHz: 16 kB I-Cache 16 kB D-Cache |
| 26 | Board: MOUSSE MPC8240/KAHLUA - CHRP (MAP B) |
| 27 | Built: Sep 10 2001 at 01:01:50 |
| 28 | MPLD: Revision 127 |
| 29 | Local Bus: 33 MHz |
| 30 | RTC: M48T589 TOD/NVRAM (8176) bytes |
| 31 | Current date/time: 9/10/2001 0:18:52 |
| 32 | DRAM: 64 MB |
| 33 | FLASH: 1.960 MB |
| 34 | PCI: scanning bus0 ... |
| 35 | bus dev fn venID devID class rev MBAR0 MBAR1 IPIN ILINE |
| 36 | 00 00 00 1057 0003 060000 11 00000008 00000000 01 00 |
| 37 | 00 0d 00 1011 0019 020000 41 80000001 80000000 01 01 |
| 38 | 00 0e 00 105a 4d38 018000 01 a0000001 a0001001 01 03 |
| 39 | In: serial |
| 40 | Out: serial |
| 41 | Err: serial |
| 42 | |
| 43 | Hit any key to stop autoboot: 0 |
| 44 | => |
| 45 | |
| 46 | I. Root FileSystem/IP Configuration |
| 47 | |
| 48 | bootcmd=tftp 100000 vmlinux.img;bootm |
| 49 | bootdelay=3 |
| 50 | baudrate=9600 |
| 51 | ipaddr=<IP ADDRESS> |
| 52 | netmask=<NETMASK> |
| 53 | hostname=<NAME> |
| 54 | serverip=<NFS SERVER IP ADDRESS> |
| 55 | ethaddr=00:00:10:20:30:44 |
| 56 | nfsroot=<NFS SERVER IP ADDRESS>:/boot/root-fs |
| 57 | gateway=<IP ADDRESS> |
| 58 | root=/dev/nfs |
| 59 | stdin=serial |
| 60 | stdout=serial |
| 61 | stderr=serial |
| 62 | |
| 63 | NVRAM environment variables. |
| 64 | |
| 65 | use the command: |
| 66 | |
| 67 | setenv <attribute> <value> |
| 68 | |
| 69 | type "saveenv" to write to NVRAM. |
| 70 | |
| 71 | |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 72 | II. To boot from a hard drive: |
| 73 | |
| 74 | setenv root /dev/hda1 |
| 75 | |
| 76 | |
| 77 | III. IP options which configure the network: |
| 78 | |
| 79 | ipaddr=<IP ADDRESS OF MACHINE> |
| 80 | netmask=<NETMASK> |
| 81 | hostname=mousse |
| 82 | ethaddr=00:00:10:20:30:44 |
| 83 | gateway=<IP ADDRESS OF GATEWAY/ROUTER> |
| 84 | |
| 85 | |
| 86 | IV. IP Options which configure NFS Root/Boot Support |
| 87 | |
| 88 | root=/dev/nfs |
| 89 | serverip=<NFS SERVER IP ADDRESS> |
| 90 | nfsroot=<NFS SERVER IP ADDRESS>:/boot/root-fs |
| 91 | |
| 92 | V. U-Boot Image Support |
| 93 | |
| 94 | The U-Boot boot loader assumes that after you build |
| 95 | your kernel (vmlinux), you will create a U-Boot image |
| 96 | using the following commands or script: |
| 97 | |
| 98 | #!/bin/csh |
| 99 | /bin/touch vmlinux.img |
| 100 | /bin/rm vmlinux.img |
| 101 | set path=($TOOLBASE/bin $path) |
| 102 | set path=($U_BOOT/tools $path) |
| 103 | powerpc-linux-objcopy -S -O binary vmlinux vmlinux.bin |
| 104 | gzip -vf vmlinux.bin |
| 105 | mkimage -A ppc -O linux -T kernel -C gzip -a 0 -e 0 -n vmlinux.bin.gz -d vmlinux.bin.gz vmlinux.img |
| 106 | ls -l vmlinux.img |
| 107 | |
| 108 | |
| 109 | VI. ONBOARD FLASH Support |
| 110 | |
| 111 | FLASH support is provided for the onboard FLASH chip Bootrom area. |
| 112 | U-Boot is loaded into either the ROM boot region of the FLASH chip, |
| 113 | after first being boot-strapped from a pre-progammed AMD29F040 PLCC |
| 114 | bootrom. The PLCC needs to be programmed with a ROM burner using |
| 115 | AMD 29F040 ROM parts and the u-boot.bin or u-boot.hex (S-Record) |
| 116 | images. |
| 117 | |
| 118 | The PLCC overlays this same region of flash as the onboard FLASH, |
| 119 | the jumper J100 is a chip-select for which flash chip you want to |
| 120 | progam. When jumper J100 is connected to pins 2-3, you boot from |
| 121 | PLCC FLASH. |
| 122 | |
| 123 | To bringup a system, simply flash a flash an AMD29F040 PLCC |
| 124 | bootrom, and put this in the PLCC socket. Move jumper J100 to |
| 125 | pins 2-3 and boot from the PLCC. |
| 126 | |
| 127 | |
| 128 | Now, while the system is running, move Jumper J100 to |
| 129 | pins 1-2 and follow the procedure below to FLASH a bootrom |
| 130 | (u-boot.bin) image into the onboard bootrom region (AMD29LV160DB): |
| 131 | |
| 132 | tftp 100000 u-boot.bin |
| 133 | protect off FFF00000 FFF7FFFF |
| 134 | erase FFF00000 FFF7FFFF |
Wolfgang Denk | 86eb3b7 | 2005-11-20 21:40:11 +0100 | [diff] [blame] | 135 | cp.b 100000 FFF00000 \${filesize}\ |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 136 | |
| 137 | |
| 138 | Here is an example: |
| 139 | |
| 140 | =>tftp 100000 u-boot.bin |
| 141 | eth_halt |
| 142 | eth0: DC21143 Ethernet adapter(bus=0, device=13, func=0) |
| 143 | DEC Ethernet iobase=0x80000000 |
| 144 | ARP broadcast 1 |
| 145 | Filename 'u-boot.bin'. |
| 146 | Load address: 0x100000 |
| 147 | Loading: ######################### |
| 148 | done |
| 149 | Bytes transferred = 123220 (1e154 hex) |
| 150 | eth_halt |
| 151 | =>protect off FFF00000 FFF7FFFF |
| 152 | Un-Protected 8 sectors |
| 153 | =>erase FFF00000 FFF7FFFF |
| 154 | Erase Flash from 0xfff00000 to 0xfff7ffff |
| 155 | Erase FLASH[PLCC_BOOT] -8 sectors:........ done |
| 156 | Erased 8 sectors |
| 157 | =>cp.b 100000 FFF00000 1e154 |
| 158 | Copy to Flash... FLASH[PLCC_BOOT]:..done |
| 159 | => |
| 160 | |
| 161 | |
| 162 | B. FLASH RAMDISK REGION |
| 163 | |
| 164 | FLASH support is provided for an Onboard 512K RAMDISK region. |
| 165 | |
| 166 | TThe following commands will FLASH a bootrom (u-boot.bin) image |
| 167 | into the onboard FLASH region (AMD29LV160DB 2MB FLASH): |
| 168 | |
| 169 | tftp 100000 u-boot.bin |
| 170 | protect off FFF80000 FFFFFFFF |
| 171 | erase FFF80000 FFFFFFFF |
Wolfgang Denk | 86eb3b7 | 2005-11-20 21:40:11 +0100 | [diff] [blame] | 172 | cp.b 100000 FFF80000 \${filesize}\ |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 173 | |
| 174 | |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 175 | C. FLASH KERNEL REGION (960KB) |
| 176 | |
| 177 | FLASH support is provided for the 960KB onboard FLASH1 segment. |
| 178 | This allows flashing of kernel images which U-Boot can load |
| 179 | and run (standalone) from the onboard FLASH chip. It also assumes |
| 180 | |
| 181 | The following commands will FLASH a kernel image to 0xffe10000 |
| 182 | |
| 183 | tftp 100000 vmlinux.img |
| 184 | protect off FFE10000 FFEFFFFF |
| 185 | erase FFE10000 FFEFFFFF |
Wolfgang Denk | 86eb3b7 | 2005-11-20 21:40:11 +0100 | [diff] [blame] | 186 | cp.b 100000 FFE10000 \${filesize}\ |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 187 | reset |
| 188 | |
| 189 | Here is an example: |
| 190 | |
| 191 | |
| 192 | =>tftp 100000 vmlinux.img |
| 193 | eth_halt |
| 194 | eth0: DC21143 Ethernet adapter(bus=0, device=13, func=0) |
| 195 | DEC Ethernet iobase=0x80000000 |
| 196 | ARP broadcast 1 |
| 197 | TFTP from server 209.128.93.133; our IP address is 209.128.93.138 |
| 198 | Filename 'vmlinux.img'. |
| 199 | Load address: 0x100000 |
| 200 | Loading: ##################################################################################################################################################### |
| 201 | done |
| 202 | Bytes transferred = 760231 (b99a7 hex) |
| 203 | eth_halt |
| 204 | =>protect off FFE10000 FFEFFFFF |
| 205 | Un-Protected 15 sectors |
| 206 | =>erase FFE10000 FFEFFFFF |
| 207 | Erase Flash from 0xffe10000 to 0xffefffff |
| 208 | Erase FLASH[F0_SA3(KERNEL)] -15 sectors:............... done |
| 209 | Erased 15 sectors |
| 210 | =>cp.b 100000 FFE10000 b99a7 |
| 211 | Copy to Flash... FLASH[F0_SA3(KERNEL)]:............done |
| 212 | => |
| 213 | |
| 214 | |
wdenk | fe8c280 | 2002-11-03 00:38:21 +0000 | [diff] [blame] | 215 | When finished, use the command: |
| 216 | |
| 217 | bootm ffe10000 |
| 218 | |
| 219 | to start the kernel. |
| 220 | |
| 221 | Finally, to make this the default boot command, use |
| 222 | the following commands: |
| 223 | |
| 224 | setenv bootcmd bootm ffe10000 |
| 225 | savenv |
| 226 | |
| 227 | to make it automatically boot the kernel from FLASH. |
| 228 | |
| 229 | |
| 230 | To go back to development mode (NFS boot) |
| 231 | |
| 232 | setenv bootcmd tftp 100000 vmlinux.img\;bootm |
| 233 | savenv |
| 234 | |
| 235 | |
| 236 | =>tftp 100000 vmlinux.img |
| 237 | eth0: DC21143 Ethernet adapter(bus=0, device=13, func=0) |
| 238 | DEC Ethernet iobase=0x80000000 |
| 239 | ARP broadcast 1 |
| 240 | Filename 'vmlinux.img'. |
| 241 | Load address: 0x100000 |
| 242 | Loading: #################################################################################################################################################### |
| 243 | done |
| 244 | Bytes transferred = 752717 (b7c4d hex) |
| 245 | eth_halt |
| 246 | =>protect off FFE10000 FFEFFFFF |
| 247 | Un-Protected 15 sectors |
| 248 | =>erase FFE10000 FFEFFFFF |
| 249 | Erase Flash from 0xffe10000 to 0xffefffff |
| 250 | Erase FLASH[F0_SA3(KERNEL)] -15 sectors:............... done |
| 251 | Erased 15 sectors |
| 252 | =>cp.b 100000 FFE10000 b7c4d |
| 253 | Copy to Flash... FLASH[F0_SA3(KERNEL)]:............done |
| 254 | =>bootm ffe10000 |
| 255 | ## Booting image at ffe10000 ... |
| 256 | Image Name: vmlinux.bin.gz |
| 257 | Image Type: PowerPC Linux Kernel Image (gzip compressed) |
| 258 | Data Size: 752653 Bytes = 735 kB = 0 MB |
| 259 | Load Address: 00000000 |
| 260 | Entry Point: 00000000 |
| 261 | Verifying Checksum ... OK |
| 262 | Uncompressing Kernel Image ... OK |
| 263 | Total memory = 64MB; using 0kB for hash table (at 00000000) |
| 264 | Linux version 2.4.2_hhl20 (jfd@atlantis) (gcc version 2.95.2 19991024 (release)) #597 Wed Sep 5 23:23:23 PDT 2001 |
| 265 | cpu0: MPC8240/KAHLUA : MOUSSE Platform : 64MB RAM: MPLD Rev. 7f |
| 266 | Sandpoint port (C) 2000, 2001 MontaVista Software, Inc. (source@mvista.com) |
| 267 | IP PNP: 802.3 Ethernet Address=<0:0:10:20:30:44> |
| 268 | NOTICE: mounting root file system via NFS |
| 269 | On node 0 totalpages: 16384 |
| 270 | zone(0): 16384 pages. |
| 271 | zone(1): 0 pages. |
| 272 | zone(2): 0 pages. |
| 273 | time_init: decrementer frequency = 16.665914 MHz |
| 274 | time_init: MPC8240 PCI Bus frequency = 33.331828 MHz |
| 275 | Calibrating delay loop... 133.12 BogoMIPS |
| 276 | Memory: 62436k available (1336k kernel code, 500k data, 88k init, 0k highmem) |
| 277 | Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) |
| 278 | Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes) |
| 279 | Page-cache hash table entries: 16384 (order: 4, 65536 bytes) |
| 280 | Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) |
| 281 | POSIX conformance testing by UNIFIX |
| 282 | PCI: Probing PCI hardware |
| 283 | Linux NET4.0 for Linux 2.4 |
| 284 | Based upon Swansea University Computer Society NET3.039 |
| 285 | Initializing RT netlink socket |
| 286 | Starting kswapd v1.8 |
| 287 | pty: 256 Unix98 ptys configured |
| 288 | block: queued sectors max/low 41394kB/13798kB, 128 slots per queue |
| 289 | Uniform Multi-Platform E-IDE driver Revision: 6.31 |
| 290 | ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx |
| 291 | PDC20262: IDE controller on PCI bus 00 dev 70 |
| 292 | PDC20262: chipset revision 1 |
| 293 | PDC20262: not 100% native mode: will probe irqs later |
| 294 | PDC20262: ROM enabled at 0x000d0000 |
| 295 | PDC20262: (U)DMA Burst Bit DISABLED Primary PCI Mode Secondary PCI Mode. |
| 296 | PDC20262: FORCING BURST BIT 0x00 -> 0x01 ACTIVE |
| 297 | PDC20262: irq=3 dev->irq=3 |
| 298 | ide0: BM-DMA at 0xbfff00-0xbfff07, BIOS settings: hda:DMA, hdb:DMA |
| 299 | ide1: BM-DMA at 0xbfff08-0xbfff0f, BIOS settings: hdc:pio, hdd:pio |
| 300 | hda: WDC WD300AB-00BVA0, ATA DISK drive |
| 301 | hdc: SONY CD-RW CRX160E, ATAPI CD/DVD-ROM drive |
| 302 | ide0 at 0xbfff78-0xbfff7f,0xbfff76 on irq 3 |
| 303 | ide1 at 0xbfff68-0xbfff6f,0xbfff66 on irq 3 |
| 304 | hda: 58633344 sectors (30020 MB) w/2048KiB Cache, CHS=58168/16/63, UDMA(66) |
| 305 | hdc: ATAPI 32X CD-ROM CD-R/RW drive, 4096kB Cache |
| 306 | Uniform CD-ROM driver Revision: 3.12 |
| 307 | Partition check: |
| 308 | /dev/ide/host0/bus0/target0/lun0: p1 p2 |
| 309 | hd: unable to get major 3 for hard disk |
| 310 | udf: registering filesystem |
| 311 | loop: loaded (max 8 devices) |
| 312 | Serial driver version 5.02 (2000-08-09) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled |
| 313 | ttyS00 at 0xffe08080 (irq = 4) is a ST16650 |
| 314 | Linux Tulip driver version 0.9.13a (January 20, 2001) |
| 315 | eth0: Digital DS21143 Tulip rev 65 at 0xbfff80, EEPROM not present, 00:00:10:20:30:44, IRQ 1. |
| 316 | eth0: MII transceiver #0 config 3000 status 7829 advertising 01e1. |
| 317 | NET4: Linux TCP/IP 1.0 for NET4.0 |
| 318 | IP Protocols: ICMP, UDP, TCP |
| 319 | IP: routing cache hash table of 512 buckets, 4Kbytes |
| 320 | TCP: Hash tables configured (established 4096 bind 4096) |
| 321 | NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. |
| 322 | devfs: v0.102 (20000622) Richard Gooch (rgooch@atnf.csiro.au) |
| 323 | devfs: boot_options: 0x0 |
| 324 | VFS: Mounted root (nfs filesystem). |
| 325 | Mounted devfs on /dev |
| 326 | Freeing unused kernel memory: 88k init 4k openfirmware |
| 327 | eth0: Setting full-duplex based on MII#0 link partner capability of 45e1. |
| 328 | INIT: version 2.78 booting |
| 329 | INIT: Entering runlevel: 2 |
| 330 | |
| 331 | |
| 332 | Welcome to Linux/PPC |
| 333 | MPC8240/MOUSSE |
| 334 | |
| 335 | |
| 336 | mousse login: root |
| 337 | Password: |
| 338 | PAM_unix[13]: (login) session opened for user root by LOGIN(uid=0) |
| 339 | Last login: Thu Sep 6 00:16:51 2001 on console |
| 340 | |
| 341 | |
| 342 | Welcome to Linux/PPC |
| 343 | MPC8240/MOUSSE |
| 344 | |
| 345 | |
| 346 | mousse# |