xref: /openbmc/u-boot/board/freescale/t4qds/README (revision 57dc53a72460e8e301fa1cc7951b41db8e731485)
18af353bbSYork SunOverview
28af353bbSYork Sun--------
38af353bbSYork SunThe T4240QDS is a high-performance computing evaluation, development and test
48af353bbSYork Sunplatform supporting the T4240 QorIQ™ Power Architecture™ processor. T4240QDS is
58af353bbSYork Sunoptimized to support the high-bandwidth DDR3 memory ports, as well as the
68af353bbSYork Sunhighly-configurable SerDes ports. The system is lead-free and RoHS-compliant.
78af353bbSYork Sun
88af353bbSYork SunBoard Features
98af353bbSYork Sun  SERDES Connections
108af353bbSYork Sun	32 lanes grouped into four 8-lane banks
118af353bbSYork Sun	Two “front side” banks dedicated to Ethernet
128af353bbSYork Sun		- High-speed crosspoint switch fabric on selected lanes
138af353bbSYork Sun		- Two PCI Express slots with side-band connector supporting
148af353bbSYork Sun		- SGMII
158af353bbSYork Sun		- XAUI
168af353bbSYork Sun		- HiGig
178af353bbSYork Sun		- I-pass connectors allow board-to-board and loopback support
188af353bbSYork Sun	Two “back side” banks dedicated to other protocols
198af353bbSYork Sun		- High-speed crosspoint switch fabric on all lanes
208af353bbSYork Sun		- Four PCI Express slots with side-band connector supporting
218af353bbSYork Sun		- PCI Express 3.0
228af353bbSYork Sun		- SATA 2.0
238af353bbSYork Sun		- SRIO 2.0
248af353bbSYork Sun		- Supports 4X Aurora debug with two connectors
258af353bbSYork Sun  DDR Controllers
268af353bbSYork Sun	Three independant 64-bit DDR3 controllers
278af353bbSYork Sun	Supports rates of 1866 up to 2133 MHz data-rate
288af353bbSYork Sun	Supports two DDR3/DDR3LP UDIMM/RDIMMs per controller
298af353bbSYork Sun	DDR power supplies 1.5V to all devices with automatic tracking of VTT.
308af353bbSYork Sun	Power software-switchable to 1.35V if software detects all DDR3LP devices.
318af353bbSYork Sun	MT9JSF25672AZ-2G1KZESZF has been tested at 1333, 1600, 1867, 2000 and
328af353bbSYork Sun	2133MT/s speeds. For 1867MT/s and above, read-to-write turnaround time
338af353bbSYork Sun	increases by 1 clock.
348af353bbSYork Sun
358af353bbSYork Sun  IFC/Local Bus
368af353bbSYork Sun	NAND flash: 8-bit, async or sync, up to 2GB.
378af353bbSYork Sun	NOR: 16-bit, Address/Data Multiplexed (ADM), up to 128 MB
388af353bbSYork Sun	NOR: 8-bit or 16-bit, non-multiplexed, up to 512MB
398af353bbSYork Sun		- NOR devices support 16 virtual banks
408af353bbSYork Sun	GASIC: Minimal target within Qixis FPGA
418af353bbSYork Sun	PromJET rapid memory download support
428af353bbSYork Sun	Address demultiplexing handled within FPGA.
438af353bbSYork Sun		- Flexible demux allows 8 or 16 bit evaluation.
448af353bbSYork Sun	IFC Debug/Development card
458af353bbSYork Sun		- Support for 32-bit devices
468af353bbSYork Sun  Ethernet
478af353bbSYork Sun	Support two on-board RGMII 10/100/1G ethernet ports.
488af353bbSYork Sun	SGMII and XAUI support via SERDES block (see above).
498af353bbSYork Sun	1588 support via Symmetricom board.
508af353bbSYork Sun  QIXIS System Logic FPGA
518af353bbSYork Sun	Manages system power and reset sequencing
528af353bbSYork Sun	Manages DUT, board, clock, etc. configuration for dynamic shmoo
538af353bbSYork Sun	Collects V-I-T data in background for code/power profiling.
548af353bbSYork Sun	Supports legacy TMT test features (POSt, IRS, SYSCLK-synchronous assertion)
558af353bbSYork Sun	General fault monitoring and logging
568af353bbSYork Sun	Runs from ATX “hot” power rails allowing operation while system is off.
578af353bbSYork Sun  Clocks
588af353bbSYork Sun	System and DDR clock (SYSCLK, “DDRCLK”)
598af353bbSYork Sun		- Switch selectable to one of 16 common settings in the interval 33MHz-166MHz.
608af353bbSYork Sun		- Software selectable in 1MHz increments from 1-200MHz.
618af353bbSYork Sun	SERDES clocks
628af353bbSYork Sun		- Provides clocks to all SerDes blocks and slots
638af353bbSYork Sun		- 100, 125 and 156.25 MHz
648af353bbSYork Sun  Power Supplies
658af353bbSYork Sun	Dedicated regulators for VDD
668af353bbSYork Sun		- Adjustable from (0.7V to 1.3V at 80A
678af353bbSYork Sun		- Regulators can be controlled by VID and/or software
688af353bbSYork Sun	Dedicated regulator for GVDD_PL: 1.35/1.5V at 22A
698af353bbSYork Sun		- VTT/MVREF automatically track operating voltage
708af353bbSYork Sun	Dedicated regulators/filters for AVDD supplies
718af353bbSYork Sun	Dedicated regulators for other supplies: OVDD, BVDD, DVDD, LVDD, POVDD, etc.
728af353bbSYork Sun  USB
738af353bbSYork Sun	Supports two USB 2.0 ports with integrated PHYs
748af353bbSYork Sun		- One type A, one type micro-AB with 1.0A power per port.
758af353bbSYork Sun  Other IO
768af353bbSYork Sun	eSDHC/MMC
778af353bbSYork Sun		- SDHC card slot
788af353bbSYork Sun	eSPI port
798af353bbSYork Sun		- High-speed serial flash
808af353bbSYork Sun	Two Serial port
818af353bbSYork Sun	Four I2C ports
828af353bbSYork Sun  XFI
838af353bbSYork Sun	XFI is supported on T4QDS-XFI board which removed slot3 and routed
848af353bbSYork Sun	four Lanes A/B/C/D to a SFP+ cages, which to house fiber cable or
858af353bbSYork Sun	direct attach cable(copper), the copper cable is used to emulate
868af353bbSYork Sun	10GBASE-KR scenario.
878af353bbSYork Sun	So, for XFI usage, there are two scenarios, one will use fiber cable,
888af353bbSYork Sun	another will use copper cable. An hwconfig env "fsl_10gkr_copper" is
89*a187559eSBin Meng	introduced to indicate a XFI port will use copper cable, and U-Boot
908af353bbSYork Sun	will fixup the dtb accordingly.
918af353bbSYork Sun	It's used as: fsl_10gkr_copper:<10g_mac_name>
928af353bbSYork Sun	The <10g_mac_name> can be fm1_10g1, fm1_10g2, fm2_10g1, fm2_10g2, they
938af353bbSYork Sun	do not have to be coexist in hwconfig. If a MAC is listed in the env
948af353bbSYork Sun	"fsl_10gkr_copper", it will use copper cable, otherwise, fiber cable
958af353bbSYork Sun	will be used by default.
968af353bbSYork Sun	for ex. set "fsl_10gkr_copper:fm1_10g1,fm1_10g2,fm2_10g1,fm2_10g2" in
978af353bbSYork Sun	hwconfig, then both four XFI ports will use copper cable.
988af353bbSYork Sun	set "fsl_10gkr_copper:fm1_10g1,fm1_10g2" in hwconfig, then first two
998af353bbSYork Sun	XFI ports will use copper cable, the other two XFI ports will use fiber
1008af353bbSYork Sun	cable.
1018af353bbSYork Sun
1028af353bbSYork SunMemory map
1038af353bbSYork Sun----------
1048af353bbSYork SunThe addresses in brackets are physical addresses.
1058af353bbSYork Sun
1068af353bbSYork Sun0x0_0000_0000 (0x0_0000_0000) - 0x0_7fff_ffff   2GB DDR (more than 2GB is initialized but not mapped under with TLB)
1078af353bbSYork Sun0x0_8000_0000 (0xc_0000_0000) - 0x0_dfff_ffff 1.5GB PCIE memory
1088af353bbSYork Sun0x0_f000_0000 (0xf_0000_0000) - 0x0_f1ff_ffff  32MB DCSR (includes trace buffers)
1098af353bbSYork Sun0x0_f400_0000 (0xf_f400_0000) - 0x0_f5ff_ffff  32MB BMan
1108af353bbSYork Sun0x0_f600_0000 (0xf_f600_0000) - 0x0_f7ff_ffff  32MB QMan
1118af353bbSYork Sun0x0_f800_0000 (0xf_f800_0000) - 0x0_f803_ffff 256KB PCIE IO
1128af353bbSYork Sun0x0_e000_0000 (0xf_e000_0000) - 0x0_efff_ffff 256MB NOR flash
1138af353bbSYork Sun0x0_fe00_0000 (0xf_fe00_0000) - 0x0_feff_ffff  16MB CCSR
1148af353bbSYork Sun0x0_ffdf_0000 (0xf_ffdf_0000) - 0x0_ffdf_03ff   4KB QIXIS
1158af353bbSYork Sun0x0_ffff_f000 (0x0_7fff_fff0) - 0x0_ffff_ffff   4KB Boot page translation for secondary cores
1168af353bbSYork Sun
1178af353bbSYork SunThe physical address of the last (boot page translation) varies with the actual DDR size.
1188af353bbSYork Sun
1198af353bbSYork SunVoltage ID and VDD override
1208af353bbSYork Sun--------------------
121*a187559eSBin MengT4240 has a VID feature. U-Boot reads the VID efuses and adjust the voltage
1228af353bbSYork Sunaccordingly. The voltage can also be override by command vdd_override. The
1238af353bbSYork Sunsyntax is
1248af353bbSYork Sun
1258af353bbSYork Sunvdd_override <voltage in mV>, eg. 1050 is for 1.050v.
1268af353bbSYork Sun
1278af353bbSYork SunUpon success, the actual voltage will be read back. The value is checked
1288af353bbSYork Sunfor safety and any invalid value will not adjust the voltage.
1298af353bbSYork Sun
1308af353bbSYork SunAnother way to override VDD is to use environmental variable, in case of using
1318af353bbSYork Suncommand is too late for some debugging. The syntax is
1328af353bbSYork Sun
1338af353bbSYork Sunsetenv t4240qds_vdd_mv <voltage in mV>
1348af353bbSYork Sunsaveenv
1358af353bbSYork Sunreset
1368af353bbSYork Sun
1378af353bbSYork SunThe override voltage takes effect when booting.
1388af353bbSYork Sun
1398af353bbSYork SunNote: voltage adjustment needs to be done step by step. Changing voltage too
1408af353bbSYork Sunrapidly may cause current surge. The voltage stepping is done by software.
1418af353bbSYork SunUsers can set the final voltage directly.
1428af353bbSYork Sun
1438af353bbSYork Sun2-stage NAND/SD boot loader
1448af353bbSYork Sun-------------------------------
1458af353bbSYork SunPBL initializes the internal SRAM and copy SPL(160K) in SRAM.
1468af353bbSYork SunSPL further initialise DDR using SPD and environment variables
147*a187559eSBin Mengand copy U-Boot(768 KB) from NAND/SD device to DDR.
148*a187559eSBin MengFinally SPL transers control to U-Boot for futher booting.
1498af353bbSYork Sun
1508af353bbSYork SunSPL has following features:
1518af353bbSYork Sun - Executes within 256K
1528af353bbSYork Sun - No relocation required
1538af353bbSYork Sun
1548af353bbSYork SunRun time view of SPL framework
1558af353bbSYork Sun-------------------------------------------------
1568af353bbSYork Sun|Area		| Address			|
1578af353bbSYork Sun-------------------------------------------------
1588af353bbSYork Sun|SecureBoot header | 0xFFFC0000	(32KB)		|
1598af353bbSYork Sun-------------------------------------------------
1608af353bbSYork Sun|GD, BD		| 0xFFFC8000	(4KB)		|
1618af353bbSYork Sun-------------------------------------------------
1628af353bbSYork Sun|ENV		| 0xFFFC9000	(8KB)		|
1638af353bbSYork Sun-------------------------------------------------
1648af353bbSYork Sun|HEAP		| 0xFFFCB000	(50KB)		|
1658af353bbSYork Sun-------------------------------------------------
1668af353bbSYork Sun|STACK		| 0xFFFD8000	(22KB)		|
1678af353bbSYork Sun-------------------------------------------------
168*a187559eSBin Meng|U-Boot SPL	| 0xFFFD8000 	(160KB)		|
1698af353bbSYork Sun-------------------------------------------------
1708af353bbSYork Sun
1718af353bbSYork SunNAND Flash memory Map on T4QDS
1728af353bbSYork Sun--------------------------------------------------------------
1738af353bbSYork SunStart		End		Definition	Size
174*a187559eSBin Meng0x000000	0x0FFFFF	U-Boot img	1MB
175*a187559eSBin Meng0x140000	0x15FFFF	U-Boot env      128KB
1768af353bbSYork Sun0x160000	0x17FFFF	FMAN Ucode      128KB
1778af353bbSYork Sun
1788af353bbSYork SunMicro SD Card memory Map on T4QDS
1798af353bbSYork Sun----------------------------------------------------
1808af353bbSYork SunBlock		#blocks		Definition	Size
181*a187559eSBin Meng0x008		2048		U-Boot img	1MB
182*a187559eSBin Meng0x800		0016		U-Boot env	8KB
1838af353bbSYork Sun0x820		0128		FMAN ucode	64KB
1848af353bbSYork Sun
1858af353bbSYork SunSwitch Settings: (ON is 1, OFF is 0)
1868af353bbSYork Sun===============
1878af353bbSYork SunNAND boot SW setting:
1888af353bbSYork SunSW1[1:8] = 10000010
1898af353bbSYork SunSW2[1.1] = 0
1908af353bbSYork SunSW6[1:4] = 1001
1918af353bbSYork Sun
1928af353bbSYork SunSD boot SW setting:
1938af353bbSYork SunSW1[1:8] = 00100000
1948af353bbSYork SunSW2[1.1] = 0
195