368 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			368 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Overview
 | 
						|
--------
 | 
						|
The T1040RDB is a Freescale reference board that hosts the T1040 SoC
 | 
						|
(and variants). Variants inclued T1042 presonality of T1040, in which
 | 
						|
case T1040RDB can also be called T1042RDB.
 | 
						|
 | 
						|
The T1042RDB is a Freescale reference board that hosts the T1042 SoC
 | 
						|
(and variants). The board is similar to T1040RDB, T1040 is a reduced
 | 
						|
personality of T1040 SoC without Integrated 8-port Gigabit(L2 Switch).
 | 
						|
 | 
						|
The T1042RDB_PI is a Freescale reference board that hosts the T1042 SoC.
 | 
						|
(a personality of T1040 SoC). The board is similar to T1040RDB but is
 | 
						|
designed specially with low power features targeted for Printing Image Market.
 | 
						|
 | 
						|
The T1040D4RDB is a Freescale reference board that hosts the T1040 SoC.
 | 
						|
The board is re-designed T1040RDB board with following changes :
 | 
						|
    - Support of DDR4 memory and some enhancements
 | 
						|
 | 
						|
The T1042D4RDB is a Freescale reference board that hosts the T1042 SoC.
 | 
						|
The board is re-designed T1040RDB board with following changes :
 | 
						|
    - Support of DDR4 memory
 | 
						|
    - Support for 0x86 serdes protocol which can support following interfaces
 | 
						|
        - 2 RGMII's on DTSEC4, DTSEC5
 | 
						|
        - 3 SGMII on DTSEC1, DTSEC2 & DTSEC3
 | 
						|
 | 
						|
Basic difference's among T1040RDB, T1042RDB_PI, T1042RDB
 | 
						|
-------------------------------------------------------------------------
 | 
						|
Board		Si		Protocol		Targeted Market
 | 
						|
-------------------------------------------------------------------------
 | 
						|
T1040RDB	T1040		0x66                    Networking
 | 
						|
T1040RDB	T1042		0x86                    Networking
 | 
						|
T1042RDB_PI	T1042		0x06                    Printing & Imaging
 | 
						|
T1040D4RDB	T1040		0x66                    Networking
 | 
						|
T1042D4RDB	T1042		0x86                    Networking
 | 
						|
 | 
						|
 | 
						|
T1040 SoC Overview
 | 
						|
------------------
 | 
						|
The QorIQ T1040/T1042 processor support four integrated 64-bit e5500 PA
 | 
						|
processor cores with high-performance data path acceleration architecture
 | 
						|
and network peripheral interfaces required for networking & telecommunications.
 | 
						|
 | 
						|
The T1040/T1042 SoC includes the following function and features:
 | 
						|
 | 
						|
 - Four e5500 cores, each with a private 256 KB L2 cache
 | 
						|
 - 256 KB shared L3 CoreNet platform cache (CPC)
 | 
						|
 - Interconnect CoreNet platform
 | 
						|
 - 32-/64-bit DDR3L/DDR4 SDRAM memory controller with ECC and interleaving
 | 
						|
   support
 | 
						|
 - Data Path Acceleration Architecture (DPAA) incorporating acceleration
 | 
						|
 for the following functions:
 | 
						|
    -  Packet parsing, classification, and distribution
 | 
						|
    -  Queue management for scheduling, packet sequencing, and congestion
 | 
						|
       management
 | 
						|
    -  Cryptography Acceleration (SEC 5.0)
 | 
						|
    - RegEx Pattern Matching Acceleration (PME 2.2)
 | 
						|
    - IEEE Std 1588 support
 | 
						|
    - Hardware buffer management for buffer allocation and deallocation
 | 
						|
 - Ethernet interfaces
 | 
						|
    - Integrated 8-port Gigabit Ethernet switch (T1040 only)
 | 
						|
    - Four 1 Gbps Ethernet controllers
 | 
						|
 - Two RGMII interfaces or one RGMII and one MII interfaces
 | 
						|
 - High speed peripheral interfaces
 | 
						|
   - Four PCI Express 2.0 controllers running at up to 5 GHz
 | 
						|
   - Two SATA controllers supporting 1.5 and 3.0 Gb/s operation
 | 
						|
   - Upto two QSGMII interface
 | 
						|
   - Upto six SGMII interface supporting 1000 Mbps
 | 
						|
   - One SGMII interface supporting upto 2500 Mbps
 | 
						|
 - Additional peripheral interfaces
 | 
						|
   - Two USB 2.0 controllers with integrated PHY
 | 
						|
   - SD/eSDHC/eMMC
 | 
						|
   - eSPI controller
 | 
						|
   - Four I2C controllers
 | 
						|
   - Four UARTs
 | 
						|
   - Four GPIO controllers
 | 
						|
   - Integrated flash controller (IFC)
 | 
						|
   - LCD and HDMI interface (DIU) with 12 bit dual data rate
 | 
						|
   - TDM interface
 | 
						|
 - Multicore programmable interrupt controller (PIC)
 | 
						|
 - Two 8-channel DMA engines
 | 
						|
 - Single source clocking implementation
 | 
						|
 - Deep Sleep power implementaion (wakeup from GPIO/Timer/Ethernet/USB)
 | 
						|
 | 
						|
T1040 SoC Personalities
 | 
						|
-------------------------
 | 
						|
T1022 Personality:
 | 
						|
T1022 is a reduced personality of T1040 with less core/clusters.
 | 
						|
 | 
						|
T1042 Personality:
 | 
						|
T1042 is a reduced personality of T1040 without Integrated 8-port Gigabit
 | 
						|
Ethernet switch. Rest of the blocks are same as T1040
 | 
						|
 | 
						|
 | 
						|
T1040RDB board Overview
 | 
						|
-------------------------
 | 
						|
 - SERDES Connections, 8 lanes information:
 | 
						|
	1: None
 | 
						|
	2: SGMII
 | 
						|
	3: QSGMII
 | 
						|
	4: QSGMII
 | 
						|
	5: PCIe1 x1 slot
 | 
						|
	6: mini PCIe connector
 | 
						|
	7: mini PCIe connector
 | 
						|
	8: SATA connector
 | 
						|
 - DDR Controller
 | 
						|
     - Supports rates of up to 1600 MHz data-rate
 | 
						|
     - Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank types.
 | 
						|
 - IFC/Local Bus
 | 
						|
     - NAND flash: 1GB 8-bit NAND flash
 | 
						|
     - NOR: 128MB 16-bit NOR Flash
 | 
						|
 - Ethernet
 | 
						|
     - Two on-board RGMII 10/100/1G ethernet ports.
 | 
						|
 - CPLD
 | 
						|
 - Clocks
 | 
						|
     - System and DDR clock (SYSCLK, “DDRCLK”)
 | 
						|
     - SERDES clocks
 | 
						|
 - Power Supplies
 | 
						|
 - USB
 | 
						|
     - Supports two USB 2.0 ports with integrated PHYs
 | 
						|
     - Two type A ports with 5V@1.5A per port.
 | 
						|
 - SDHC
 | 
						|
     - SDHC/SDXC connector
 | 
						|
 - SPI
 | 
						|
    -  On-board 64MB SPI flash
 | 
						|
 - Other IO
 | 
						|
    - Two Serial ports
 | 
						|
    - Four I2C ports
 | 
						|
 | 
						|
T1042RDB_PI board Overview
 | 
						|
-------------------------
 | 
						|
 - SERDES Connections, 8 lanes information:
 | 
						|
	1, 2, 3, 4 : PCIe x4 slot
 | 
						|
	5: mini PCIe connector
 | 
						|
	6: mini PCIe connector
 | 
						|
	7: NA
 | 
						|
	8: SATA connector
 | 
						|
 - DDR Controller
 | 
						|
     - Supports rates of up to 1600 MHz data-rate
 | 
						|
     - Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank types.
 | 
						|
 - IFC/Local Bus
 | 
						|
     - NAND flash: 1GB 8-bit NAND flash
 | 
						|
     - NOR: 128MB 16-bit NOR Flash
 | 
						|
 - Ethernet
 | 
						|
     - Two on-board RGMII 10/100/1G ethernet ports.
 | 
						|
 - CPLD
 | 
						|
 - Clocks
 | 
						|
     - System and DDR clock (SYSCLK, “DDRCLK”)
 | 
						|
     - SERDES clocks
 | 
						|
 - Video
 | 
						|
     - DIU supports video at up to 1280x1024x32bpp
 | 
						|
 - Power Supplies
 | 
						|
 - USB
 | 
						|
     - Supports two USB 2.0 ports with integrated PHYs
 | 
						|
     - Two type A ports with 5V@1.5A per port.
 | 
						|
 - SDHC
 | 
						|
     - SDHC/SDXC connector
 | 
						|
 - SPI
 | 
						|
    -  On-board 64MB SPI flash
 | 
						|
 - Other IO
 | 
						|
    - Two Serial ports
 | 
						|
    - Four I2C ports
 | 
						|
 | 
						|
Memory map
 | 
						|
-----------
 | 
						|
The addresses in brackets are physical addresses.
 | 
						|
 | 
						|
Start Address  End Address      Description                     Size
 | 
						|
0xF_FFDF_0000  0xF_FFDF_0FFF    IFC - CPLD                      4KB
 | 
						|
0xF_FF80_0000  0xF_FF80_FFFF    IFC - NAND Flash                64KB
 | 
						|
0xF_FE00_0000  0xF_FEFF_FFFF    CCSRBAR                         16MB
 | 
						|
0xF_F803_0000  0xF_F803_FFFF    PCI Express 4 I/O Space         64KB
 | 
						|
0xF_F802_0000  0xF_F802_FFFF    PCI Express 3 I/O Space	        64KB
 | 
						|
0xF_F801_0000  0xF_F801_FFFF    PCI Express 2 I/O Space         64KB
 | 
						|
0xF_F800_0000  0xF_F800_FFFF    PCI Express 1 I/O Space	        64KB
 | 
						|
0xF_F600_0000  0xF_F7FF_FFFF    Queue manager software portal   32MB
 | 
						|
0xF_F400_0000  0xF_F5FF_FFFF    Buffer manager software portal  32MB
 | 
						|
0xF_E800_0000  0xF_EFFF_FFFF    IFC - NOR Flash                 128MB
 | 
						|
0xF_0000_0000  0xF_003F_FFFF    DCSR                            4MB
 | 
						|
0xC_3000_0000  0xC_3FFF_FFFF    PCI Express 4 Mem Space         256MB
 | 
						|
0xC_2000_0000  0xC_2FFF_FFFF    PCI Express 3 Mem Space         256MB
 | 
						|
0xC_1000_0000  0xC_1FFF_FFFF    PCI Express 2 Mem Space         256MB
 | 
						|
0xC_0000_0000  0xC_0FFF_FFFF    PCI Express 1 Mem Space         256MB
 | 
						|
0x0_0000_0000  0x0_ffff_ffff    DDR                             2GB
 | 
						|
 | 
						|
 | 
						|
NOR Flash memory Map
 | 
						|
---------------------
 | 
						|
 Start          End             Definition                       Size
 | 
						|
0xEFF40000      0xEFFFFFFF      U-Boot (current bank)            768KB
 | 
						|
0xEFF20000      0xEFF3FFFF      U-Boot env (current bank)        128KB
 | 
						|
0xEFF00000      0xEFF1FFFF      FMAN Ucode (current bank)        128KB
 | 
						|
0xED300000      0xEFEFFFFF      rootfs (alt bank)                44MB
 | 
						|
0xEC800000      0xEC8FFFFF      Hardware device tree (alt bank)  1MB
 | 
						|
0xEC020000      0xEC7FFFFF      Linux.uImage (alt bank)          7MB + 875KB
 | 
						|
0xEC000000      0xEC01FFFF      RCW (alt bank)                   128KB
 | 
						|
0xEBF40000      0xEBFFFFFF      U-Boot (alt bank)                768KB
 | 
						|
0xEBF20000      0xEBF3FFFF      U-Boot env (alt bank)            128KB
 | 
						|
0xEBF00000      0xEBF1FFFF      FMAN ucode (alt bank)            128KB
 | 
						|
0xE9300000      0xEBEFFFFF      rootfs (current bank)            44MB
 | 
						|
0xE8800000      0xE88FFFFF      Hardware device tree (cur bank)  11MB + 512KB
 | 
						|
0xE8020000      0xE86FFFFF      Linux.uImage (current bank)      7MB + 875KB
 | 
						|
0xE8000000      0xE801FFFF      RCW (current bank)               128KB
 | 
						|
 | 
						|
 | 
						|
Various Software configurations/environment variables/commands
 | 
						|
--------------------------------------------------------------
 | 
						|
The below commands apply to the board
 | 
						|
 | 
						|
1. U-Boot environment variable hwconfig
 | 
						|
   The default hwconfig is:
 | 
						|
	hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=cs0_cs1;usb1:
 | 
						|
					dr_mode=host,phy_type=utmi
 | 
						|
   Note: For USB gadget set "dr_mode=peripheral"
 | 
						|
 | 
						|
2. FMAN Ucode versions
 | 
						|
   fsl_fman_ucode_t1040.bin
 | 
						|
 | 
						|
3. Switching to alternate bank
 | 
						|
   Commands for switching to alternate bank.
 | 
						|
 | 
						|
	1. To change from vbank0 to vbank4
 | 
						|
		=> cpld reset altbank (it will boot using vbank4)
 | 
						|
 | 
						|
	2.To change from vbank4 to vbank0
 | 
						|
		=> cpld reset (it will boot using vbank0)
 | 
						|
 | 
						|
NAND boot with 2 Stage boot loader
 | 
						|
----------------------------------
 | 
						|
PBL initialise the internal SRAM and copy SPL(160KB) in SRAM.
 | 
						|
SPL further initialise DDR using SPD and environment variables and copy
 | 
						|
U-Boot(768 KB) from flash to DDR.
 | 
						|
Finally SPL transer control to U-Boot for futher booting.
 | 
						|
 | 
						|
SPL has following features:
 | 
						|
 - Executes within 256K
 | 
						|
 - No relocation required
 | 
						|
 | 
						|
 Run time view of SPL framework during  boot :-
 | 
						|
 -----------------------------------------------
 | 
						|
 Area        | Address                         |
 | 
						|
-----------------------------------------------
 | 
						|
 Secure boot | 0xFFFC0000 (32KB)               |
 | 
						|
 headers     |                                 |
 | 
						|
 -----------------------------------------------
 | 
						|
 GD, BD      | 0xFFFC8000 (4KB)                |
 | 
						|
 -----------------------------------------------
 | 
						|
 ENV         | 0xFFFC9000 (8KB)                |
 | 
						|
 -----------------------------------------------
 | 
						|
 HEAP        | 0xFFFCB000 (30KB)               |
 | 
						|
 -----------------------------------------------
 | 
						|
 STACK       | 0xFFFD8000 (22KB)               |
 | 
						|
 -----------------------------------------------
 | 
						|
 U-Boot SPL  | 0xFFFD8000 (160KB)              |
 | 
						|
 -----------------------------------------------
 | 
						|
 | 
						|
NAND Flash memory Map on T104xRDB
 | 
						|
------------------------------------------
 | 
						|
 Start		 End		Definition			Size
 | 
						|
0x000000	0x0FFFFF	U-Boot                          1MB
 | 
						|
0x180000	0x19FFFF	U-Boot env                      128KB
 | 
						|
0x280000	0x29FFFF	FMAN Ucode                      128KB
 | 
						|
0x380000	0x39FFFF	QE Firmware                     128KB
 | 
						|
 | 
						|
SD Card memory Map on T104xRDB
 | 
						|
------------------------------------------
 | 
						|
 Block		#blocks		Definition			Size
 | 
						|
0x008		2048		U-Boot                          1MB
 | 
						|
0x800		0024		U-Boot env                      8KB
 | 
						|
0x820		0256		FMAN Ucode                      128KB
 | 
						|
0x920		0256		QE Firmware                     128KB
 | 
						|
 | 
						|
SPI Flash memory Map on T104xRDB
 | 
						|
------------------------------------------
 | 
						|
 Start		 End		Definition			Size
 | 
						|
0x000000	0x0FFFFF	U-Boot                          1MB
 | 
						|
0x100000	0x101FFF	U-Boot env                      8KB
 | 
						|
0x110000	0x12FFFF	FMAN Ucode                      128KB
 | 
						|
0x130000	0x14FFFF	QE Firmware                     128KB
 | 
						|
 | 
						|
Please note QE Firmware is only valid for T1040RDB
 | 
						|
 | 
						|
 | 
						|
Switch Settings for T104xRDB boards: (ON is 0, OFF is 1)
 | 
						|
==========================================================
 | 
						|
NOR boot SW setting:
 | 
						|
SW1: 00010011
 | 
						|
SW2: 10111011
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
NAND boot SW setting:
 | 
						|
SW1: 10001000
 | 
						|
SW2: 00111011
 | 
						|
SW3: 11110001
 | 
						|
 | 
						|
SPI boot SW setting:
 | 
						|
SW1: 00100010
 | 
						|
SW2: 10111011
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
SD boot SW setting:
 | 
						|
SW1: 00100000
 | 
						|
SW2: 00111011
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
Switch Settings for T104xD4RDB boards: (ON is 0, OFF is 1)
 | 
						|
=============================================================
 | 
						|
NOR boot SW setting:
 | 
						|
SW1: 00010011
 | 
						|
SW2: 10111001
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
NAND boot SW setting:
 | 
						|
SW1: 10001000
 | 
						|
SW2: 00111001
 | 
						|
SW3: 11110001
 | 
						|
 | 
						|
SPI boot SW setting:
 | 
						|
SW1: 00100010
 | 
						|
SW2: 10111001
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
SD boot SW setting:
 | 
						|
SW1: 00100000
 | 
						|
SW2: 00111001
 | 
						|
SW3: 11100001
 | 
						|
 | 
						|
PBL-based image generation
 | 
						|
==========================
 | 
						|
Changes only the required register bit in in PBI commands.
 | 
						|
 | 
						|
Provides reference code which might needs some
 | 
						|
modification as per requirement.
 | 
						|
example:
 | 
						|
By default PBI_SRC=14 (which is for IFC-NAND/NOR) in rcw.cfg file
 | 
						|
which needs to be changed for SPI and SD.
 | 
						|
 | 
						|
For SD-boot
 | 
						|
==============
 | 
						|
1. Set RCW[192:195], PBI_SRC bits as 6 in RCW file (t1040d4_rcw.cfg type files)
 | 
						|
 | 
						|
example:
 | 
						|
 RCW file: board/freescale/t104xrdb/t1040d4_rcw.cfg
 | 
						|
 | 
						|
Change
 | 
						|
66000002 40000002 ec027000 01000000
 | 
						|
to
 | 
						|
66000002 40000002 6c027000 01000000
 | 
						|
 | 
						|
2. SD does not support flush so remove flush from pbl, make changes in
 | 
						|
   tools/pblimage.c file, Update value of pbl_end_cmd[0] = 0x09138000
 | 
						|
   with 0x091380c0
 | 
						|
 | 
						|
For SPI-boot
 | 
						|
==============
 | 
						|
1. Set RCW[192:195], PBI_SRC bits as 5 in RCW file (t1040d4_rcw.cfg type files)
 | 
						|
 | 
						|
example:
 | 
						|
 RCW file: board/freescale/t104xrdb/t1040d4_rcw.cfg
 | 
						|
 | 
						|
Change
 | 
						|
66000002 40000002 ec027000 01000000
 | 
						|
to
 | 
						|
66000002 40000002 5c027000 01000000
 | 
						|
 | 
						|
2. SPI does not support flush so remove flush from pbl, make changes in
 | 
						|
   tools/pblimage.c file, Update value of pbl_end_cmd[0] = 0x09138000
 | 
						|
   with 0x091380c0
 |