mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-22 01:48:52 +09:00
![Scott Wood](/assets/img/avatar_default.png)
Previously, the documentation claimed that NAND boot is not supported. This is no longer true. Signed-off-by: Scott Wood <scottwood@freescale.com>
112 lines
2.8 KiB
Plaintext
112 lines
2.8 KiB
Plaintext
Freescale MPC8313ERDB Board
|
|
-----------------------------------------
|
|
|
|
1. Board Switches and Jumpers
|
|
|
|
S3 is used to set CONFIG_SYS_RESET_SOURCE.
|
|
|
|
To boot the image at 0xFE000000 in NOR flash, use these DIP
|
|
switch settings for S3 S4:
|
|
|
|
+------+ +------+
|
|
| | | **** |
|
|
| **** | | |
|
|
+------+ ON +------+ ON
|
|
4321 4321
|
|
(where the '*' indicates the position of the tab of the switch.)
|
|
|
|
To boot the image at the beginning of NAND flash, use these
|
|
DIP switch settings for S3 S4:
|
|
|
|
+------+ +------+
|
|
| * | | *** |
|
|
| *** | | * |
|
|
+------+ ON +------+ ON
|
|
4321 4321
|
|
(where the '*' indicates the position of the tab of the switch.)
|
|
|
|
When booting from NAND, use u-boot-nand.bin, not u-boot.bin.
|
|
|
|
2. Memory Map
|
|
The memory map looks like this:
|
|
|
|
0x0000_0000 0x07ff_ffff DDR 128M
|
|
0x8000_0000 0x8fff_ffff PCI MEM 256M
|
|
0x9000_0000 0x9fff_ffff PCI_MMIO 256M
|
|
0xe000_0000 0xe00f_ffff IMMR 1M
|
|
0xe200_0000 0xe20f_ffff PCI IO 16M
|
|
0xe280_0000 0xe280_7fff NAND FLASH (CS1) 32K
|
|
0xf000_0000 0xf001_ffff VSC7385 (CS2) 128K
|
|
0xfa00_0000 0xfa00_7fff Board Status/ 32K
|
|
LED Control (CS3)
|
|
0xfe00_0000 0xfe7f_ffff NOR FLASH (CS0) 8M
|
|
|
|
When booting from NAND, NAND flash is CS0 and NOR flash
|
|
is CS1.
|
|
|
|
3. Definitions
|
|
|
|
3.1 Explanation of NEW definitions in:
|
|
|
|
include/configs/MPC8313ERDB.h
|
|
|
|
CONFIG_MPC83xx MPC83xx family
|
|
CONFIG_MPC831x MPC831x specific
|
|
CONFIG_MPC8313ERDB MPC8313ERDB board specific
|
|
|
|
4. Compilation
|
|
|
|
Assuming you're using BASH (or similar) as your shell:
|
|
|
|
export CROSS_COMPILE=your-cross-compiler-prefix-
|
|
make distclean
|
|
make MPC8313ERDB_XXX_config
|
|
(where XXX is:
|
|
33 - 33 MHz oscillator, boot from NOR flash
|
|
66 - 66 MHz oscillator, boot from NOR flash
|
|
NAND_33 - 33 MHz oscillator, boot from NAND flash
|
|
NAND_66 - 66 MHz oscillator, boot from NAND flash)
|
|
make
|
|
|
|
5. Downloading and Flashing Images
|
|
|
|
5.1 Reflash U-boot Image using U-boot
|
|
|
|
NOR flash:
|
|
|
|
=>run tftpflash
|
|
|
|
You may want to try
|
|
=>tftpboot $loadaddr $uboot
|
|
first, to make sure that the TFTP load will succeed before it
|
|
goes ahead and wipes out your current firmware. And of course,
|
|
have an alternate means of programming the flash available
|
|
if the new u-boot doesn't boot.
|
|
|
|
NAND flash:
|
|
|
|
=>tftpboot $loadaddr <filename>
|
|
=>nand erase 0 0x80000
|
|
=>nand write $loadaddr 0 0x80000
|
|
|
|
...where 0x80000 is the filesize rounded up to
|
|
the next 0x20000 increment.
|
|
|
|
5.2 Downloading and Booting Linux Kernel
|
|
|
|
Ensure that all networking-related environment variables are set
|
|
properly (including ipaddr, serverip, gatewayip (if needed),
|
|
netmask, ethaddr, eth1addr, rootpath (if using NFS root),
|
|
fdtfile, and bootfile).
|
|
|
|
Then, do one of the following, depending on whether you
|
|
want an NFS root or a ramdisk root:
|
|
|
|
=>run nfsboot
|
|
or
|
|
=>run ramboot
|
|
|
|
6 Notes
|
|
|
|
The console baudrate for MPC8313ERDB is 115200bps.
|