1*4882a593SmuzhiyunThe T2080QDS is a high-performance computing evaluation, development and 2*4882a593Smuzhiyuntest platform supporting the T2080 QorIQ Power Architecture processor. 3*4882a593Smuzhiyun 4*4882a593SmuzhiyunT2080 SoC Overview 5*4882a593Smuzhiyun------------------ 6*4882a593SmuzhiyunThe T2080 QorIQ multicore processor combines four dual-threaded e6500 Power 7*4882a593SmuzhiyunArchitecture processor cores with high-performance datapath acceleration 8*4882a593Smuzhiyunlogic and network and peripheral bus interfaces required for networking, 9*4882a593Smuzhiyuntelecom/datacom, wireless infrastructure, and mil/aerospace applications. 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunT2080 includes the following functions and features: 12*4882a593Smuzhiyun - Four dual-threads 64-bit Power architecture e6500 cores, up to 1.8GHz 13*4882a593Smuzhiyun - 2MB L2 cache and 512KB CoreNet platform cache (CPC) 14*4882a593Smuzhiyun - Hierarchical interconnect fabric 15*4882a593Smuzhiyun - One 32-/64-bit DDR3/3L SDRAM memory controllers with ECC and interleaving 16*4882a593Smuzhiyun - Data Path Acceleration Architecture (DPAA) incorporating acceleration 17*4882a593Smuzhiyun - 16 SerDes lanes up to 10.3125 GHz 18*4882a593Smuzhiyun - 8 Ethernet interfaces, supporting combinations of the following: 19*4882a593Smuzhiyun - Up to four 10 Gbps Ethernet MACs 20*4882a593Smuzhiyun - Up to eight 1 Gbps Ethernet MACs 21*4882a593Smuzhiyun - Up to four 2.5 Gbps Ethernet MACs 22*4882a593Smuzhiyun - High-speed peripheral interfaces 23*4882a593Smuzhiyun - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0 with SR-IOV) 24*4882a593Smuzhiyun - Two Serial RapidIO 2.0 controllers/ports running at up to 5 GHz 25*4882a593Smuzhiyun - Additional peripheral interfaces 26*4882a593Smuzhiyun - Two serial ATA (SATA 2.0) controllers 27*4882a593Smuzhiyun - Two high-speed USB 2.0 controllers with integrated PHY 28*4882a593Smuzhiyun - Enhanced secure digital host controller (SD/SDHC/SDXC/eMMC) 29*4882a593Smuzhiyun - Enhanced serial peripheral interface (eSPI) 30*4882a593Smuzhiyun - Four I2C controllers 31*4882a593Smuzhiyun - Four 2-pin UARTs or two 4-pin UARTs 32*4882a593Smuzhiyun - Integrated Flash Controller supporting NAND and NOR flash 33*4882a593Smuzhiyun - Three eight-channel DMA engines 34*4882a593Smuzhiyun - Support for hardware virtualization and partitioning enforcement 35*4882a593Smuzhiyun - QorIQ Platform's Trust Architecture 2.0 36*4882a593Smuzhiyun 37*4882a593SmuzhiyunDifferences between T2080 and T2081 38*4882a593Smuzhiyun----------------------------------- 39*4882a593Smuzhiyun Feature T2080 T2081 40*4882a593Smuzhiyun 1G Ethernet numbers: 8 6 41*4882a593Smuzhiyun 10G Ethernet numbers: 4 2 42*4882a593Smuzhiyun SerDes lanes: 16 8 43*4882a593Smuzhiyun Serial RapidIO,RMan: 2 no 44*4882a593Smuzhiyun SATA Controller: 2 no 45*4882a593Smuzhiyun Aurora: yes no 46*4882a593Smuzhiyun SoC Package: 896-pins 780-pins 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun 49*4882a593SmuzhiyunT2080QDS feature overview 50*4882a593Smuzhiyun------------------------- 51*4882a593SmuzhiyunProcessor: 52*4882a593Smuzhiyun - T2080 SoC integrating four 64-bit dual-threads e6500 cores up to 1.8GHz 53*4882a593SmuzhiyunMemory: 54*4882a593Smuzhiyun - Single memory controller capable of supporting DDR3 and DDR3-LV devices 55*4882a593Smuzhiyun - Two DDR3 DIMMs up to 4GB, Dual rank @ 2133MT/s and ECC support 56*4882a593SmuzhiyunEthernet interfaces: 57*4882a593Smuzhiyun - Two 1Gbps RGMII on-board ports 58*4882a593Smuzhiyun - Four 10Gbps XFI on-board cages 59*4882a593Smuzhiyun - 1Gbps/2.5Gbps SGMII Riser card 60*4882a593Smuzhiyun - 10Gbps XAUI Riser card 61*4882a593SmuzhiyunAccelerator: 62*4882a593Smuzhiyun - DPAA components consist of FMan, BMan, QMan, PME, DCE and SEC 63*4882a593SmuzhiyunSerDes: 64*4882a593Smuzhiyun - 16 lanes up to 10.3125GHz 65*4882a593Smuzhiyun - Supports Aurora debug, PEX, SATA, SGMII, sRIO, HiGig, XFI and XAUI 66*4882a593SmuzhiyunIFC: 67*4882a593Smuzhiyun - 128MB NOR Flash, 512MB NAND Flash, PromJet debug port and FPGA 68*4882a593SmuzhiyuneSPI: 69*4882a593Smuzhiyun - Three SPI flash (16MB N25Q128A + 16MB EN25S64 + 512KB SST25WF040) 70*4882a593SmuzhiyunUSB: 71*4882a593Smuzhiyun - Two USB2.0 ports with internal PHY (one Type-A + one micro Type-AB) 72*4882a593SmuzhiyunPCIE: 73*4882a593Smuzhiyun - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0 with SR-IOV) 74*4882a593SmuzhiyunSATA: 75*4882a593Smuzhiyun - Two SATA 2.0 ports on-board 76*4882a593SmuzhiyunSRIO: 77*4882a593Smuzhiyun - Two Serial RapidIO 2.0 ports up to 5 GHz 78*4882a593SmuzhiyuneSDHC: 79*4882a593Smuzhiyun - Supports SD/SDHC/SDXC/eMMC Card 80*4882a593SmuzhiyunI2C: 81*4882a593Smuzhiyun - Four I2C controllers. 82*4882a593SmuzhiyunUART: 83*4882a593Smuzhiyun - Dual 4-pins UART serial ports 84*4882a593SmuzhiyunSystem Logic: 85*4882a593Smuzhiyun - QIXIS-II FPGA system controll 86*4882a593SmuzhiyunDebug Features: 87*4882a593Smuzhiyun - Support Legacy, COP/JTAG, Aurora, Event and EVT 88*4882a593SmuzhiyunXFI: 89*4882a593Smuzhiyun - XFI is supported on T2080QDS through Lane A/B/C/D on Serdes 1 routed to 90*4882a593Smuzhiyun a on-board SFP+ cages, which to house optical module (fiber cable) or 91*4882a593Smuzhiyun direct attach cable(copper), the copper cable is used to emulate 92*4882a593Smuzhiyun 10GBASE-KR scenario. 93*4882a593Smuzhiyun So, for XFI usage, there are two scenarios, one will use fiber cable, 94*4882a593Smuzhiyun another will use copper cable. An hwconfig env "fsl_10gkr_copper" is 95*4882a593Smuzhiyun introduced to indicate a XFI port will use copper cable, and U-Boot 96*4882a593Smuzhiyun will fixup the dtb accordingly. 97*4882a593Smuzhiyun It's used as: fsl_10gkr_copper:<10g_mac_name> 98*4882a593Smuzhiyun The <10g_mac_name> can be fm1_10g1, fm1_10g2, fm1_10g3, fm1_10g4, they 99*4882a593Smuzhiyun do not have to be coexist in hwconfig. If a MAC is listed in the env 100*4882a593Smuzhiyun "fsl_10gkr_copper", it will use copper cable, otherwise, fiber cable 101*4882a593Smuzhiyun will be used by default. 102*4882a593Smuzhiyun for ex. set "fsl_10gkr_copper:fm1_10g1,fm1_10g2,fm1_10g3,fm1_10g4" in 103*4882a593Smuzhiyun hwconfig, then both four XFI ports will use copper cable. 104*4882a593Smuzhiyun set "fsl_10gkr_copper:fm1_10g1,fm1_10g2" in hwconfig, then first two 105*4882a593Smuzhiyun XFI ports will use copper cable, the other two XFI ports will use fiber 106*4882a593Smuzhiyun cable. 107*4882a593Smuzhiyun1000BASE-KX(1G-KX): 108*4882a593Smuzhiyun - T2080QDS can support 1G-KX by using SGMII protocol, but serdes lane 109*4882a593Smuzhiyun runs in 1G-KX mode. By default, the lane runs in SGMII mode, to set a lane 110*4882a593Smuzhiyun in 1G-KX mode, need to set corresponding bit in SerDes Protocol Configuration 111*4882a593Smuzhiyun Register 1 (PCCR1), and U-Boot fixup the dtb for kernel to do proper 112*4882a593Smuzhiyun initialization. 113*4882a593Smuzhiyun Hwconfig "fsl_1gkx" is used to indicate a lane runs in 1G-KX mode, MAC 114*4882a593Smuzhiyun 1/2/5/6/9/10 are available for 1G-KX, MAC 3/4 run in RGMII mode. To set a 115*4882a593Smuzhiyun MAC to use 1G-KX mode, set its' corresponding env in "fsl_1gkx", 'fm1_1g1' 116*4882a593Smuzhiyun stands for MAC 1, 'fm1_1g2' stands for MAC 2, etc. 117*4882a593Smuzhiyun For ex. set "fsl_1gkx:fm1_1g1,fm1_1g2,fm1_1g5,fm1_1g6,fm1_1g9,fm1_1g10" in 118*4882a593Smuzhiyun hwconfig, MAC 1/2/5/6/9/10 will use 1G-KX mode. 119*4882a593Smuzhiyun 120*4882a593SmuzhiyunSystem Memory map 121*4882a593Smuzhiyun---------------- 122*4882a593Smuzhiyun 123*4882a593SmuzhiyunStart Address End Address Description Size 124*4882a593Smuzhiyun0xF_FFDF_0000 0xF_FFDF_0FFF IFC - CPLD 4KB 125*4882a593Smuzhiyun0xF_FF80_0000 0xF_FF80_FFFF IFC - NAND Flash 64KB 126*4882a593Smuzhiyun0xF_FE00_0000 0xF_FEFF_FFFF CCSRBAR 16MB 127*4882a593Smuzhiyun0xF_F803_0000 0xF_F803_FFFF PCI Express 4 I/O Space 64KB 128*4882a593Smuzhiyun0xF_F802_0000 0xF_F802_FFFF PCI Express 3 I/O Space 64KB 129*4882a593Smuzhiyun0xF_F801_0000 0xF_F801_FFFF PCI Express 2 I/O Space 64KB 130*4882a593Smuzhiyun0xF_F800_0000 0xF_F800_FFFF PCI Express 1 I/O Space 64KB 131*4882a593Smuzhiyun0xF_F600_0000 0xF_F7FF_FFFF Queue manager software portal 32MB 132*4882a593Smuzhiyun0xF_F400_0000 0xF_F5FF_FFFF Buffer manager software portal 32MB 133*4882a593Smuzhiyun0xF_E800_0000 0xF_EFFF_FFFF IFC - NOR Flash 128MB 134*4882a593Smuzhiyun0xF_0000_0000 0xF_003F_FFFF DCSR 4MB 135*4882a593Smuzhiyun0xC_4000_0000 0xC_4FFF_FFFF PCI Express 4 Mem Space 256MB 136*4882a593Smuzhiyun0xC_3000_0000 0xC_3FFF_FFFF PCI Express 3 Mem Space 256MB 137*4882a593Smuzhiyun0xC_2000_0000 0xC_2FFF_FFFF PCI Express 2 Mem Space 256MB 138*4882a593Smuzhiyun0xC_0000_0000 0xC_1FFF_FFFF PCI Express 1 Mem Space 512MB 139*4882a593Smuzhiyun0x0_0000_0000 0x0_ffff_ffff DDR 4GB 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun 142*4882a593Smuzhiyun128M NOR Flash memory Map 143*4882a593Smuzhiyun------------------------- 144*4882a593SmuzhiyunStart Address End Address Definition Max size 145*4882a593Smuzhiyun0xEFF40000 0xEFFFFFFF U-Boot (current bank) 768KB 146*4882a593Smuzhiyun0xEFF20000 0xEFF3FFFF U-Boot env (current bank) 128KB 147*4882a593Smuzhiyun0xEFF00000 0xEFF1FFFF FMAN Ucode (current bank) 128KB 148*4882a593Smuzhiyun0xED300000 0xEFEFFFFF rootfs (alt bank) 44MB 149*4882a593Smuzhiyun0xEC800000 0xEC8FFFFF Hardware device tree (alt bank) 1MB 150*4882a593Smuzhiyun0xEC020000 0xEC7FFFFF Linux.uImage (alt bank) 7MB + 875KB 151*4882a593Smuzhiyun0xEC000000 0xEC01FFFF RCW (alt bank) 128KB 152*4882a593Smuzhiyun0xEBF40000 0xEBFFFFFF U-Boot (alt bank) 768KB 153*4882a593Smuzhiyun0xEBF20000 0xEBF3FFFF U-Boot env (alt bank) 128KB 154*4882a593Smuzhiyun0xEBF00000 0xEBF1FFFF FMAN ucode (alt bank) 128KB 155*4882a593Smuzhiyun0xE9300000 0xEBEFFFFF rootfs (current bank) 44MB 156*4882a593Smuzhiyun0xE8800000 0xE88FFFFF Hardware device tree (cur bank) 1MB 157*4882a593Smuzhiyun0xE8020000 0xE86FFFFF Linux.uImage (current bank) 7MB + 875KB 158*4882a593Smuzhiyun0xE8000000 0xE801FFFF RCW (current bank) 128KB 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun 162*4882a593SmuzhiyunSoftware configurations and board settings 163*4882a593Smuzhiyun------------------------------------------ 164*4882a593Smuzhiyun1. NOR boot: 165*4882a593Smuzhiyun a. build NOR boot image 166*4882a593Smuzhiyun $ make T2080QDS_config 167*4882a593Smuzhiyun $ make 168*4882a593Smuzhiyun b. program u-boot.bin image to NOR flash 169*4882a593Smuzhiyun => tftp 1000000 u-boot.bin 170*4882a593Smuzhiyun => pro off all;era eff40000 efffffff;cp.b 1000000 eff40000 $filesize 171*4882a593Smuzhiyun set SW1[1:8] = '00010011', SW2[1] = '1', SW6[1:4] = '0000' for NOR boot 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun Switching between default bank0 and alternate bank4 on NOR flash 174*4882a593Smuzhiyun To change boot source to vbank4: 175*4882a593Smuzhiyun by software: run command 'qixis_reset altbank' in U-Boot. 176*4882a593Smuzhiyun by DIP-switch: set SW6[1:4] = '0100' 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun To change boot source to vbank0: 179*4882a593Smuzhiyun by software: run command 'qixis_reset' in U-Boot. 180*4882a593Smuzhiyun by DIP-Switch: set SW6[1:4] = '0000' 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun2. NAND Boot: 183*4882a593Smuzhiyun a. build PBL image for NAND boot 184*4882a593Smuzhiyun $ make T2080QDS_NAND_config 185*4882a593Smuzhiyun $ make 186*4882a593Smuzhiyun b. program u-boot-with-spl-pbl.bin to NAND flash 187*4882a593Smuzhiyun => tftp 1000000 u-boot-with-spl-pbl.bin 188*4882a593Smuzhiyun => nand erase 0 $filesize 189*4882a593Smuzhiyun => nand write 1000000 0 $filesize 190*4882a593Smuzhiyun set SW1[1:8] = '10000010', SW2[1] = '0' and SW6[1:4] = '1001' for NAND boot 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun3. SPI Boot: 193*4882a593Smuzhiyun a. build PBL image for SPI boot 194*4882a593Smuzhiyun $ make T2080QDS_SPIFLASH_config 195*4882a593Smuzhiyun $ make 196*4882a593Smuzhiyun b. program u-boot-with-spl-pbl.bin to SPI flash 197*4882a593Smuzhiyun => tftp 1000000 u-boot-with-spl-pbl.bin 198*4882a593Smuzhiyun => sf probe 0 199*4882a593Smuzhiyun => sf erase 0 f0000 200*4882a593Smuzhiyun => sf write 1000000 0 $filesize 201*4882a593Smuzhiyun set SW1[1:8] = '00100010', SW2[1] ='1' for SPI boot 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun4. SD Boot: 204*4882a593Smuzhiyun a. build PBL image for SD boot 205*4882a593Smuzhiyun $ make T2080QDS_SDCARD_config 206*4882a593Smuzhiyun $ make 207*4882a593Smuzhiyun b. program u-boot-with-spl-pbl.bin to SD/MMC card 208*4882a593Smuzhiyun => tftp 1000000 u-boot-with-spl-pbl.bin 209*4882a593Smuzhiyun => mmc write 1000000 8 0x800 210*4882a593Smuzhiyun => tftp 1000000 fsl_fman_ucode_T2080_xx.bin 211*4882a593Smuzhiyun => mmc write 1000000 0x820 80 212*4882a593Smuzhiyun set SW1[1:8] = '00100000', SW2[1] = '0' for SD boot 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun2-stage NAND/SPI/SD boot loader 216*4882a593Smuzhiyun------------------------------- 217*4882a593SmuzhiyunPBL initializes the internal CPC-SRAM and copy SPL(160K) to SRAM. 218*4882a593SmuzhiyunSPL further initializes DDR using SPD and environment variables 219*4882a593Smuzhiyunand copy U-Boot(768 KB) from NAND/SPI/SD device to DDR. 220*4882a593SmuzhiyunFinally SPL transers control to U-Boot for futher booting. 221*4882a593Smuzhiyun 222*4882a593SmuzhiyunSPL has following features: 223*4882a593Smuzhiyun - Executes within 256K 224*4882a593Smuzhiyun - No relocation required 225*4882a593Smuzhiyun 226*4882a593SmuzhiyunRun time view of SPL framework 227*4882a593Smuzhiyun------------------------------------------------- 228*4882a593Smuzhiyun|Area | Address | 229*4882a593Smuzhiyun------------------------------------------------- 230*4882a593Smuzhiyun|SecureBoot header | 0xFFFC0000 (32KB) | 231*4882a593Smuzhiyun------------------------------------------------- 232*4882a593Smuzhiyun|GD, BD | 0xFFFC8000 (4KB) | 233*4882a593Smuzhiyun------------------------------------------------- 234*4882a593Smuzhiyun|ENV | 0xFFFC9000 (8KB) | 235*4882a593Smuzhiyun------------------------------------------------- 236*4882a593Smuzhiyun|HEAP | 0xFFFCB000 (50KB) | 237*4882a593Smuzhiyun------------------------------------------------- 238*4882a593Smuzhiyun|STACK | 0xFFFD8000 (22KB) | 239*4882a593Smuzhiyun------------------------------------------------- 240*4882a593Smuzhiyun|U-Boot SPL | 0xFFFD8000 (160KB) | 241*4882a593Smuzhiyun------------------------------------------------- 242*4882a593Smuzhiyun 243*4882a593SmuzhiyunNAND Flash memory Map on T2080QDS 244*4882a593Smuzhiyun-------------------------------------------------------------- 245*4882a593SmuzhiyunStart End Definition Size 246*4882a593Smuzhiyun0x000000 0x0FFFFF U-Boot img 1MB (2 blocks) 247*4882a593Smuzhiyun0x100000 0x17FFFF U-Boot env 512KB (1 block) 248*4882a593Smuzhiyun0x180000 0x1FFFFF FMAN ucode 512KB (1 block) 249*4882a593Smuzhiyun 250*4882a593Smuzhiyun 251*4882a593SmuzhiyunMicro SD Card memory Map on T2080QDS 252*4882a593Smuzhiyun---------------------------------------------------- 253*4882a593SmuzhiyunBlock #blocks Definition Size 254*4882a593Smuzhiyun0x008 2048 U-Boot img 1MB 255*4882a593Smuzhiyun0x800 0016 U-Boot env 8KB 256*4882a593Smuzhiyun0x820 0128 FMAN ucode 64KB 257*4882a593Smuzhiyun 258*4882a593Smuzhiyun 259*4882a593SmuzhiyunSPI Flash memory Map on T2080QDS 260*4882a593Smuzhiyun---------------------------------------------------- 261*4882a593SmuzhiyunStart End Definition Size 262*4882a593Smuzhiyun0x000000 0x0FFFFF U-Boot img 1MB 263*4882a593Smuzhiyun0x100000 0x101FFF U-Boot env 8KB 264*4882a593Smuzhiyun0x110000 0x11FFFF FMAN ucode 64KB 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun 267*4882a593SmuzhiyunHow to update the ucode of Freescale FMAN 268*4882a593Smuzhiyun----------------------------------------- 269*4882a593Smuzhiyun=> tftp 1000000 fsl_fman_ucode_t2080_xx.bin 270*4882a593Smuzhiyun=> pro off all;erase 0xeff00000 0xeff1ffff;cp 1000000 0xeff00000 $filesize 271*4882a593Smuzhiyun 272*4882a593Smuzhiyun 273*4882a593SmuzhiyunFor more details, please refer to T2080QDS User Guide and access 274*4882a593Smuzhiyunwebsite www.freescale.com and Freescale QorIQ SDK Infocenter document. 275