u-boot/board/freescale/mpc8569mds
Tom Rini 83d290c56f SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and
there weren't a lot of other examples to borrow from.  So we picked the
area of the file that usually had a full license text and replaced it
with an appropriate SPDX-License-Identifier: entry.  Since then, the
Linux Kernel has adopted SPDX tags and they place it as the very first
line in a file (except where shebangs are used, then it's second line)
and with slightly different comment styles than us.

In part due to community overlap, in part due to better tag visibility
and in part for other minor reasons, switch over to that style.

This commit changes all instances where we have a single declared
license in the tag as both the before and after are identical in tag
contents.  There's also a few places where I found we did not have a tag
and have introduced one.

Signed-off-by: Tom Rini <trini@konsulko.com>
2018-05-07 09:34:12 -04:00
..
bcsr.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bcsr.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ddr.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Kconfig kconfig: remove redundant "string" type in arch and board Kconfigs 2014-09-13 16:43:55 -04:00
law.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
MAINTAINERS powerpc: mpc8569mds: Update config and maintainer 2017-06-12 12:18:37 -07:00
Makefile SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mpc8569mds.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
README Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
tlb.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00

Overview
--------
MPC8569MDS is composed of two boards - PB (Processor Board) and PIB (Platform
I/O Board). The mpc8569 PowerTM processor is mounted on PB board.

Building U-Boot
-----------
	make MPC8569MDS_config
	make

Memory Map
----------
0x0000_0000   0x7fff_ffff     DDR                     2G
0xa000_0000   0xbfff_ffff     PCIe MEM                512MB
0xe000_0000   0xe00f_ffff     CCSRBAR                 1M
0xe280_0000   0xe2ff_ffff     PCIe I/O                8M
0xc000_0000   0xdfff_ffff     SRIO                    512MB
0xf000_0000   0xf3ff_ffff     SDRAM                   64MB
0xf800_0000   0xf800_7fff     BCSR                    32KB
0xf800_8000   0xf800_ffff     PIB (CS4)               32KB
0xf801_0000   0xf801_7fff     PIB (CS5)               32KB
0xfe00_0000   0xffff_ffff     Flash                   32MB


Flashing U-Boot Images
---------------

Use the following commands to program U-Boot image into flash:

	=> tftp 1000000 u-boot.bin
	=> protect off all
	=> erase fff80000 ffffffff
	=> cp.b 1000000 fff80000 80000


Setting the correct MAC addresses
-----------------------
The command - "mac", is introduced to set on-board system EEPROM in the format
defined in board/freescale/common/sys_eeprom.c. we must set all 8 MAC
addresses for the MPC8569MDS's 8 Ethernet ports and save it by "mac save" when
we first get the board. The commands are as follows:
	=> mac i NXID	/* Set NXID to this EEPROM */
	=> mac e 01	/* Set Errata, this value is not defined by hardware
			   designer, we can set whatever we want */
	=> mac n a0	/* Set Serial Number. This is not defined by hardware
			   designer, we can set whatever we want */
	=> mac date 090512080000  /* Set the date in YYMMDDhhmmss format */

	=> mac p 8	/* Set the number of mac ports, it should be 8 */
	=> mac 0 xx:xx:xx:xx:xx:xx  /* xx:xx:xx:xx:xx:xx should be the real mac
				       address, you can refer to the value on
				       the sticker of the rear side of the board
				     */
	.....
	=> mac 7 xx:xx:xx:xx:xx:xx
	=> mac read
	=> mac save

After resetting the board, the ethxaddrs will be filled with the mac addresses
if such environment variables are blank(never been set before). If the ethxaddr
has been set but we want to update it, we can use the following commands:
	=> setenv ethxaddr	/* x = "none",1,2,3,4,5,6,7 */
	=> save
	=> reset


Programming the ucode to flash
---------------------------------
MPC8569 doesn't have ROM in QE, so we must upload the microcode(ucode) to QE's
IRAM so that the QE can work. The ucode binary can be downloaded from
http://opensource.freescale.com/firmware/, and it must be programmed to
the address 0xfff0000 in the flash. Otherwise, the QE can't work and uboot
hangs at "Net:"


Please note the above two steps(setting mac addresses and programming ucode) are
very important to get the board booting up and working properly.