xref: /openbmc/u-boot/board/freescale/t208xqds/README (revision d29a58316137dfe32d69b4dff52bfe42551dc49f)
1e9caf760SShengzhou LiuThe T2080QDS is a high-performance computing evaluation, development and
2e9caf760SShengzhou Liutest platform supporting the T2080 QorIQ Power Architecture processor.
3e9caf760SShengzhou Liu
4e9caf760SShengzhou LiuT2080 SoC Overview
5e9caf760SShengzhou Liu------------------
6e9caf760SShengzhou LiuThe T2080 QorIQ multicore processor combines four dual-threaded e6500 Power
7e9caf760SShengzhou LiuArchitecture processor cores with high-performance datapath acceleration
8e9caf760SShengzhou Liulogic and network and peripheral bus interfaces required for networking,
9e9caf760SShengzhou Liutelecom/datacom, wireless infrastructure, and mil/aerospace applications.
10e9caf760SShengzhou Liu
11e9caf760SShengzhou LiuT2080 includes the following functions and features:
12e9caf760SShengzhou Liu - Four dual-threads 64-bit Power architecture e6500 cores, up to 1.8GHz
13e9caf760SShengzhou Liu - 2MB L2 cache and 512KB CoreNet platform cache (CPC)
14e9caf760SShengzhou Liu - Hierarchical interconnect fabric
15e9caf760SShengzhou Liu - One 32-/64-bit DDR3/3L SDRAM memory controllers with ECC and interleaving
16e9caf760SShengzhou Liu - Data Path Acceleration Architecture (DPAA) incorporating acceleration
17e9caf760SShengzhou Liu - 16 SerDes lanes up to 10.3125 GHz
18e9caf760SShengzhou Liu - 8 Ethernet interfaces, supporting combinations of the following:
19e9caf760SShengzhou Liu   - Up to four 10 Gbps Ethernet MACs
20e9caf760SShengzhou Liu   - Up to eight 1 Gbps Ethernet MACs
21e9caf760SShengzhou Liu   - Up to four 2.5 Gbps Ethernet MACs
22e9caf760SShengzhou Liu - High-speed peripheral interfaces
23e9caf760SShengzhou Liu   - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0 with SR-IOV)
24e9caf760SShengzhou Liu   - Two Serial RapidIO 2.0 controllers/ports running at up to 5 GHz
25e9caf760SShengzhou Liu - Additional peripheral interfaces
26e9caf760SShengzhou Liu   - Two serial ATA (SATA 2.0) controllers
27e9caf760SShengzhou Liu   - Two high-speed USB 2.0 controllers with integrated PHY
28e9caf760SShengzhou Liu   - Enhanced secure digital host controller (SD/SDHC/SDXC/eMMC)
29e9caf760SShengzhou Liu   - Enhanced serial peripheral interface (eSPI)
30e9caf760SShengzhou Liu   - Four I2C controllers
31e9caf760SShengzhou Liu   - Four 2-pin UARTs or two 4-pin UARTs
32e9caf760SShengzhou Liu   - Integrated Flash Controller supporting NAND and NOR flash
33e9caf760SShengzhou Liu - Three eight-channel DMA engines
34e9caf760SShengzhou Liu - Support for hardware virtualization and partitioning enforcement
35e9caf760SShengzhou Liu - QorIQ Platform's Trust Architecture 2.0
36e9caf760SShengzhou Liu
37e9caf760SShengzhou LiuDifferences between T2080 and T2081
38e9caf760SShengzhou Liu-----------------------------------
39e9caf760SShengzhou Liu  Feature		T2080	 T2081
40e9caf760SShengzhou Liu  1G Ethernet numbers:  8	 6
41e9caf760SShengzhou Liu  10G Ethernet numbers: 4	 2
42e9caf760SShengzhou Liu  SerDes lanes:		16	 8
43e9caf760SShengzhou Liu  Serial RapidIO,RMan:  2	 no
44e9caf760SShengzhou Liu  SATA Controller:	2	 no
45e9caf760SShengzhou Liu  Aurora:		yes	 no
46e9caf760SShengzhou Liu  SoC Package:		896-pins 780-pins
47e9caf760SShengzhou Liu
48e9caf760SShengzhou Liu
49e9caf760SShengzhou LiuT2080QDS feature overview
50e9caf760SShengzhou Liu-------------------------
51e9caf760SShengzhou LiuProcessor:
52e9caf760SShengzhou Liu - T2080 SoC integrating four 64-bit dual-threads e6500 cores up to 1.8GHz
53e9caf760SShengzhou LiuMemory:
54e9caf760SShengzhou Liu - Single memory controller capable of supporting DDR3 and DDR3-LV devices
55e9caf760SShengzhou Liu - Two DDR3 DIMMs up to 4GB, Dual rank @ 2133MT/s and ECC support
56e9caf760SShengzhou LiuEthernet interfaces:
57e9caf760SShengzhou Liu - Two 1Gbps RGMII on-board ports
58e9caf760SShengzhou Liu - Four 10Gbps XFI on-board cages
59e9caf760SShengzhou Liu - 1Gbps/2.5Gbps SGMII Riser card
60e9caf760SShengzhou Liu - 10Gbps XAUI Riser card
61e9caf760SShengzhou LiuAccelerator:
62e9caf760SShengzhou Liu - DPAA components consist of FMan, BMan, QMan, PME, DCE and SEC
63e9caf760SShengzhou LiuSerDes:
64e9caf760SShengzhou Liu - 16 lanes up to 10.3125GHz
65e9caf760SShengzhou Liu - Supports Aurora debug, PEX, SATA, SGMII, sRIO, HiGig, XFI and XAUI
66e9caf760SShengzhou LiuIFC:
67e9caf760SShengzhou Liu - 128MB NOR Flash, 512MB NAND Flash, PromJet debug port and FPGA
68e9caf760SShengzhou LiueSPI:
69e9caf760SShengzhou Liu - Three SPI flash (16MB N25Q128A + 16MB EN25S64 + 512KB SST25WF040)
70e9caf760SShengzhou LiuUSB:
71e9caf760SShengzhou Liu - Two USB2.0 ports with internal PHY (one Type-A + one micro Type-AB)
72e9caf760SShengzhou LiuPCIE:
73e9caf760SShengzhou Liu - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0 with SR-IOV)
74e9caf760SShengzhou LiuSATA:
75e9caf760SShengzhou Liu - Two SATA 2.0 ports on-board
76e9caf760SShengzhou LiuSRIO:
77e9caf760SShengzhou Liu - Two Serial RapidIO 2.0 ports up to 5 GHz
78e9caf760SShengzhou LiueSDHC:
79e9caf760SShengzhou Liu - Supports SD/SDHC/SDXC/eMMC Card
80e9caf760SShengzhou LiuI2C:
81e9caf760SShengzhou Liu - Four I2C controllers.
82e9caf760SShengzhou LiuUART:
83e9caf760SShengzhou Liu - Dual 4-pins UART serial ports
84e9caf760SShengzhou LiuSystem Logic:
85e9caf760SShengzhou Liu - QIXIS-II FPGA system controll
86e9caf760SShengzhou LiuDebug Features:
87e9caf760SShengzhou Liu - Support Legacy, COP/JTAG, Aurora, Event and EVT
88f0644da5Sshaohui xieXFI:
89f0644da5Sshaohui xie - XFI is supported on T2080QDS through Lane A/B/C/D on Serdes 1 routed to
90f0644da5Sshaohui xie a on-board SFP+ cages, which to house optical module (fiber cable) or
91f0644da5Sshaohui xie direct attach cable(copper), the copper cable is used to emulate
92f0644da5Sshaohui xie 10GBASE-KR scenario.
93f0644da5Sshaohui xie So, for XFI usage, there are two scenarios, one will use fiber cable,
94f0644da5Sshaohui xie another will use copper cable. An hwconfig env "fsl_10gkr_copper" is
95a187559eSBin Meng introduced to indicate a XFI port will use copper cable, and U-Boot
96f0644da5Sshaohui xie will fixup the dtb accordingly.
97f0644da5Sshaohui xie It's used as: fsl_10gkr_copper:<10g_mac_name>
98f0644da5Sshaohui xie The <10g_mac_name> can be fm1_10g1, fm1_10g2, fm1_10g3, fm1_10g4, they
99f0644da5Sshaohui xie do not have to be coexist in hwconfig. If a MAC is listed in the env
100f0644da5Sshaohui xie "fsl_10gkr_copper", it will use copper cable, otherwise, fiber cable
101f0644da5Sshaohui xie will be used by default.
102f0644da5Sshaohui xie for ex. set "fsl_10gkr_copper:fm1_10g1,fm1_10g2,fm1_10g3,fm1_10g4" in
103f0644da5Sshaohui xie hwconfig, then both four XFI ports will use copper cable.
104f0644da5Sshaohui xie set "fsl_10gkr_copper:fm1_10g1,fm1_10g2" in hwconfig, then first two
105f0644da5Sshaohui xie XFI ports will use copper cable, the other two XFI ports will use fiber
106f0644da5Sshaohui xie cable.
1073ce21c87SShaohui Xie1000BASE-KX(1G-KX):
1083ce21c87SShaohui Xie - T2080QDS can support 1G-KX by using SGMII protocol, but serdes lane
1093ce21c87SShaohui Xie runs in 1G-KX mode. By default, the lane runs in SGMII mode, to set a lane
1103ce21c87SShaohui Xie in 1G-KX mode, need to set corresponding bit in SerDes Protocol Configuration
111a187559eSBin Meng Register 1 (PCCR1), and U-Boot fixup the dtb for kernel to do proper
1123ce21c87SShaohui Xie initialization.
1133ce21c87SShaohui Xie Hwconfig "fsl_1gkx" is used to indicate a lane runs in 1G-KX mode, MAC
1143ce21c87SShaohui Xie 1/2/5/6/9/10 are available for 1G-KX, MAC 3/4 run in RGMII mode. To set a
1153ce21c87SShaohui Xie MAC to use 1G-KX mode, set its' corresponding env in "fsl_1gkx", 'fm1_1g1'
1163ce21c87SShaohui Xie stands for MAC 1, 'fm1_1g2' stands for MAC 2, etc.
1173ce21c87SShaohui Xie For ex. set "fsl_1gkx:fm1_1g1,fm1_1g2,fm1_1g5,fm1_1g6,fm1_1g9,fm1_1g10" in
1183ce21c87SShaohui Xie hwconfig, MAC 1/2/5/6/9/10 will use 1G-KX mode.
119e9caf760SShengzhou Liu
120e9caf760SShengzhou LiuSystem Memory map
121f0644da5Sshaohui xie----------------
122f0644da5Sshaohui xie
123e9caf760SShengzhou LiuStart Address  End Address      Description			Size
124e9caf760SShengzhou Liu0xF_FFDF_0000  0xF_FFDF_0FFF    IFC - CPLD			4KB
125e9caf760SShengzhou Liu0xF_FF80_0000  0xF_FF80_FFFF    IFC - NAND Flash		64KB
126e9caf760SShengzhou Liu0xF_FE00_0000  0xF_FEFF_FFFF    CCSRBAR				16MB
127e9caf760SShengzhou Liu0xF_F803_0000  0xF_F803_FFFF    PCI Express 4 I/O Space		64KB
128e9caf760SShengzhou Liu0xF_F802_0000  0xF_F802_FFFF    PCI Express 3 I/O Space		64KB
129e9caf760SShengzhou Liu0xF_F801_0000  0xF_F801_FFFF    PCI Express 2 I/O Space		64KB
130e9caf760SShengzhou Liu0xF_F800_0000  0xF_F800_FFFF    PCI Express 1 I/O Space		64KB
131e9caf760SShengzhou Liu0xF_F600_0000  0xF_F7FF_FFFF    Queue manager software portal	32MB
132e9caf760SShengzhou Liu0xF_F400_0000  0xF_F5FF_FFFF    Buffer manager software portal	32MB
133e9caf760SShengzhou Liu0xF_E800_0000  0xF_EFFF_FFFF    IFC - NOR Flash			128MB
134e9caf760SShengzhou Liu0xF_0000_0000  0xF_003F_FFFF    DCSR				4MB
135e9caf760SShengzhou Liu0xC_4000_0000  0xC_4FFF_FFFF    PCI Express 4 Mem Space		256MB
136e9caf760SShengzhou Liu0xC_3000_0000  0xC_3FFF_FFFF    PCI Express 3 Mem Space		256MB
137e9caf760SShengzhou Liu0xC_2000_0000  0xC_2FFF_FFFF    PCI Express 2 Mem Space		256MB
138e9caf760SShengzhou Liu0xC_0000_0000  0xC_1FFF_FFFF    PCI Express 1 Mem Space		512MB
139e9caf760SShengzhou Liu0x0_0000_0000  0x0_ffff_ffff    DDR				4GB
140e9caf760SShengzhou Liu
141e9caf760SShengzhou Liu
142e9caf760SShengzhou Liu128M NOR Flash memory Map
143e9caf760SShengzhou Liu-------------------------
144e9caf760SShengzhou LiuStart Address   End Address	Definition			Max size
145a187559eSBin Meng0xEFF40000	0xEFFFFFFF	U-Boot (current bank)		768KB
146a187559eSBin Meng0xEFF20000	0xEFF3FFFF	U-Boot env (current bank)	128KB
147e9caf760SShengzhou Liu0xEFF00000	0xEFF1FFFF	FMAN Ucode (current bank)	128KB
148e9caf760SShengzhou Liu0xED300000	0xEFEFFFFF	rootfs (alt bank)		44MB
149e9caf760SShengzhou Liu0xEC800000	0xEC8FFFFF	Hardware device tree (alt bank)	1MB
150e9caf760SShengzhou Liu0xEC020000	0xEC7FFFFF	Linux.uImage (alt bank)		7MB + 875KB
151e9caf760SShengzhou Liu0xEC000000	0xEC01FFFF	RCW (alt bank)			128KB
152a187559eSBin Meng0xEBF40000	0xEBFFFFFF	U-Boot (alt bank)		768KB
153a187559eSBin Meng0xEBF20000	0xEBF3FFFF	U-Boot env (alt bank)		128KB
154e9caf760SShengzhou Liu0xEBF00000	0xEBF1FFFF	FMAN ucode (alt bank)		128KB
155e9caf760SShengzhou Liu0xE9300000	0xEBEFFFFF	rootfs (current bank)		44MB
156e9caf760SShengzhou Liu0xE8800000	0xE88FFFFF	Hardware device tree (cur bank)	1MB
157e9caf760SShengzhou Liu0xE8020000	0xE86FFFFF	Linux.uImage (current bank)	7MB + 875KB
158e9caf760SShengzhou Liu0xE8000000	0xE801FFFF	RCW (current bank)		128KB
159e9caf760SShengzhou Liu
160e9caf760SShengzhou Liu
161e9caf760SShengzhou Liu
162e9caf760SShengzhou LiuSoftware configurations and board settings
163e9caf760SShengzhou Liu------------------------------------------
164e9caf760SShengzhou Liu1. NOR boot:
165e9caf760SShengzhou Liu   a. build NOR boot image
166e9caf760SShengzhou Liu	$  make T2080QDS_config
167e9caf760SShengzhou Liu	$  make
168e9caf760SShengzhou Liu   b. program u-boot.bin image to NOR flash
169e9caf760SShengzhou Liu	=> tftp 1000000 u-boot.bin
170e9caf760SShengzhou Liu	=> pro off all;era eff40000 efffffff;cp.b 1000000 eff40000 $filesize
171e9caf760SShengzhou Liu	set SW1[1:8] = '00010011', SW2[1] = '1', SW6[1:4] = '0000' for NOR boot
172e9caf760SShengzhou Liu
173e9caf760SShengzhou Liu   Switching between default bank0 and alternate bank4 on NOR flash
174e9caf760SShengzhou Liu   To change boot source to vbank4:
175a187559eSBin Meng	by software:   run command 'qixis_reset altbank' in U-Boot.
176e9caf760SShengzhou Liu	by DIP-switch: set SW6[1:4] = '0100'
177e9caf760SShengzhou Liu
178e9caf760SShengzhou Liu   To change boot source to vbank0:
179a187559eSBin Meng	by software:   run command 'qixis_reset' in U-Boot.
180e9caf760SShengzhou Liu	by DIP-Switch: set SW6[1:4] = '0000'
181e9caf760SShengzhou Liu
182e9caf760SShengzhou Liu2. NAND Boot:
183e9caf760SShengzhou Liu   a. build PBL image for NAND boot
184e9caf760SShengzhou Liu	$ make T2080QDS_NAND_config
185e9caf760SShengzhou Liu	$ make
186e9caf760SShengzhou Liu   b. program u-boot-with-spl-pbl.bin to NAND flash
187e9caf760SShengzhou Liu	=> tftp 1000000 u-boot-with-spl-pbl.bin
188e9caf760SShengzhou Liu	=> nand erase 0 $filesize
189e9caf760SShengzhou Liu	=> nand write 1000000 0 $filesize
190e9caf760SShengzhou Liu	set SW1[1:8] = '10000010', SW2[1] = '0' and SW6[1:4] = '1001' for NAND boot
191e9caf760SShengzhou Liu
192e9caf760SShengzhou Liu3. SPI Boot:
193e9caf760SShengzhou Liu   a. build PBL image for SPI boot
194e9caf760SShengzhou Liu	$ make T2080QDS_SPIFLASH_config
195e9caf760SShengzhou Liu	$ make
196e9caf760SShengzhou Liu   b. program u-boot-with-spl-pbl.bin to SPI flash
197e9caf760SShengzhou Liu	=> tftp 1000000 u-boot-with-spl-pbl.bin
198e9caf760SShengzhou Liu	=> sf probe 0
199e9caf760SShengzhou Liu	=> sf erase 0 f0000
200e9caf760SShengzhou Liu	=> sf write 1000000 0 $filesize
201e9caf760SShengzhou Liu	set SW1[1:8] = '00100010', SW2[1] ='1' for SPI boot
202e9caf760SShengzhou Liu
203e9caf760SShengzhou Liu4. SD Boot:
204e9caf760SShengzhou Liu   a. build PBL image for SD boot
205e9caf760SShengzhou Liu	$ make T2080QDS_SDCARD_config
206e9caf760SShengzhou Liu	$ make
207e9caf760SShengzhou Liu   b. program u-boot-with-spl-pbl.bin to SD/MMC card
208e9caf760SShengzhou Liu	=> tftp 1000000 u-boot-with-spl-pbl.bin
209e9caf760SShengzhou Liu	=> mmc write 1000000 8 0x800
210e9caf760SShengzhou Liu	=> tftp 1000000 fsl_fman_ucode_T2080_xx.bin
211e9caf760SShengzhou Liu	=> mmc write 1000000 0x820 80
212e9caf760SShengzhou Liu	set SW1[1:8] = '00100000', SW2[1] = '0' for SD boot
213e9caf760SShengzhou Liu
214e9caf760SShengzhou Liu
215e9caf760SShengzhou Liu2-stage NAND/SPI/SD boot loader
216e9caf760SShengzhou Liu-------------------------------
217e9caf760SShengzhou LiuPBL initializes the internal CPC-SRAM and copy SPL(160K) to SRAM.
218e9caf760SShengzhou LiuSPL further initializes DDR using SPD and environment variables
219a187559eSBin Mengand copy U-Boot(768 KB) from NAND/SPI/SD device to DDR.
220a187559eSBin MengFinally SPL transers control to U-Boot for futher booting.
221e9caf760SShengzhou Liu
222e9caf760SShengzhou LiuSPL has following features:
223e9caf760SShengzhou Liu - Executes within 256K
224e9caf760SShengzhou Liu - No relocation required
225e9caf760SShengzhou Liu
226e9caf760SShengzhou LiuRun time view of SPL framework
227e9caf760SShengzhou Liu-------------------------------------------------
228e9caf760SShengzhou Liu|Area		   | Address			|
229e9caf760SShengzhou Liu-------------------------------------------------
230e9caf760SShengzhou Liu|SecureBoot header | 0xFFFC0000 (32KB)		|
231e9caf760SShengzhou Liu-------------------------------------------------
232e9caf760SShengzhou Liu|GD, BD		   | 0xFFFC8000 (4KB)		|
233e9caf760SShengzhou Liu-------------------------------------------------
234e9caf760SShengzhou Liu|ENV		   | 0xFFFC9000 (8KB)		|
235e9caf760SShengzhou Liu-------------------------------------------------
236e9caf760SShengzhou Liu|HEAP		   | 0xFFFCB000 (50KB)		|
237e9caf760SShengzhou Liu-------------------------------------------------
238e9caf760SShengzhou Liu|STACK		   | 0xFFFD8000 (22KB)		|
239e9caf760SShengzhou Liu-------------------------------------------------
240a187559eSBin Meng|U-Boot SPL	   | 0xFFFD8000 (160KB)		|
241e9caf760SShengzhou Liu-------------------------------------------------
242e9caf760SShengzhou Liu
243e9caf760SShengzhou LiuNAND Flash memory Map on T2080QDS
244e9caf760SShengzhou Liu--------------------------------------------------------------
245e9caf760SShengzhou LiuStart		End		Definition	Size
246a187559eSBin Meng0x000000	0x0FFFFF	U-Boot img	1MB  (2 blocks)
247a187559eSBin Meng0x100000	0x17FFFF	U-Boot env	512KB (1 block)
248e9caf760SShengzhou Liu0x180000	0x1FFFFF	FMAN ucode	512KB (1 block)
249e9caf760SShengzhou Liu
250e9caf760SShengzhou Liu
251e9caf760SShengzhou LiuMicro SD Card memory Map on T2080QDS
252e9caf760SShengzhou Liu----------------------------------------------------
253e9caf760SShengzhou LiuBlock		#blocks		Definition	Size
254a187559eSBin Meng0x008		2048		U-Boot img	1MB
255a187559eSBin Meng0x800		0016		U-Boot env	8KB
256e9caf760SShengzhou Liu0x820		0128		FMAN ucode	64KB
257e9caf760SShengzhou Liu
258e9caf760SShengzhou Liu
259e9caf760SShengzhou LiuSPI Flash memory Map on T2080QDS
260e9caf760SShengzhou Liu----------------------------------------------------
261e9caf760SShengzhou LiuStart		End		Definition	Size
262a187559eSBin Meng0x000000	0x0FFFFF	U-Boot img	1MB
263a187559eSBin Meng0x100000	0x101FFF	U-Boot env	8KB
264e9caf760SShengzhou Liu0x110000	0x11FFFF	FMAN ucode	64KB
265e9caf760SShengzhou Liu
266e9caf760SShengzhou Liu
267e9caf760SShengzhou LiuHow to update the ucode of Freescale FMAN
268e9caf760SShengzhou Liu-----------------------------------------
269e9caf760SShengzhou Liu=> tftp 1000000 fsl_fman_ucode_t2080_xx.bin
270e9caf760SShengzhou Liu=> pro off all;erase 0xeff00000 0xeff1ffff;cp 1000000 0xeff00000 $filesize
271e9caf760SShengzhou Liu
272e9caf760SShengzhou Liu
273e9caf760SShengzhou LiuFor more details, please refer to T2080QDS User Guide and access
274e9caf760SShengzhou Liuwebsite www.freescale.com and Freescale QorIQ SDK Infocenter document.
275*432054b9SJagdish Gediya
276*432054b9SJagdish GediyaDevice tree support and how to enable it for different configs
277*432054b9SJagdish Gediya--------------------------------------------------------------
278*432054b9SJagdish GediyaDevice tree support is available for t2080qds for below mentioned boot,
279*432054b9SJagdish Gediya1. NOR Boot
280*432054b9SJagdish Gediya2. NAND Boot
281*432054b9SJagdish Gediya3. SD Boot
282*432054b9SJagdish Gediya4. SPIFLASH Boot
283*432054b9SJagdish Gediya
284*432054b9SJagdish GediyaTo enable device tree support for other boot, below configs need to be
285*432054b9SJagdish Gediyaenabled in relative defconfig file,
286*432054b9SJagdish Gediya1. CONFIG_DEFAULT_DEVICE_TREE="t2080qds" (Change default device tree name if required)
287*432054b9SJagdish Gediya2. CONFIG_OF_CONTROL
288*432054b9SJagdish Gediya3. CONFIG_MPC85XX_HAVE_RESET_VECTOR if reset vector is located at
289*432054b9SJagdish Gediya   CONFIG_RESET_VECTOR_ADDRESS - 0xffc
290*432054b9SJagdish Gediya
291*432054b9SJagdish GediyaIf device tree support is enabled in defconfig,
292*432054b9SJagdish Gediya1. use 'u-boot-with-dtb.bin' for NOR boot.
293*432054b9SJagdish Gediya2. use 'u-boot-with-spl-pbl.bin' for other boot.
294