1*4882a593SmuzhiyunOverview 2*4882a593Smuzhiyun-------- 3*4882a593SmuzhiyunThe LS2080A Development System (QDS) is a high-performance computing, 4*4882a593Smuzhiyunevaluation, and development platform that supports the QorIQ LS2080A 5*4882a593Smuzhiyunand LS2088A Layerscape Architecture processor. The LS2080AQDS provides 6*4882a593Smuzhiyunvalidation and SW development platform for the Freescale LS2080A, LS2088A 7*4882a593Smuzhiyunprocessor series, with a complete debugging environment. 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunLS2080A, LS2088A SoC Overview 10*4882a593Smuzhiyun-------------------- 11*4882a593SmuzhiyunPlease refer arch/arm/cpu/armv8/fsl-layerscape/doc/README.soc for LS2080A, 12*4882a593SmuzhiyunLS2088A SoC overview. 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun LS2080AQDS board Overview 15*4882a593Smuzhiyun ----------------------- 16*4882a593Smuzhiyun - SERDES Connections, 16 lanes supporting: 17*4882a593Smuzhiyun - PCI Express - 3.0 18*4882a593Smuzhiyun - SGMII, SGMII 2.5 19*4882a593Smuzhiyun - QSGMII 20*4882a593Smuzhiyun - SATA 3.0 21*4882a593Smuzhiyun - XAUI 22*4882a593Smuzhiyun - XFI 23*4882a593Smuzhiyun - DDR Controller 24*4882a593Smuzhiyun - Two ports of 72-bits (8-bits ECC) DDR4. Each port supports four 25*4882a593Smuzhiyun chip-selects and two DIMM connectors. Support is up to 2133MT/s. 26*4882a593Smuzhiyun - One port of 40-bits (8-bits ECC) DDR4 which supports four chip-selects 27*4882a593Smuzhiyun and two DIMM connectors. Support is up to 1600MT/s. 28*4882a593Smuzhiyun -IFC/Local Bus 29*4882a593Smuzhiyun - IFC rev. 2.0 implementation supporting Little Endian connection scheme. 30*4882a593Smuzhiyun - One in-socket 128 MB NOR flash 16-bit data bus 31*4882a593Smuzhiyun - One 512 MB NAND flash with ECC support 32*4882a593Smuzhiyun - IFC Test Port 33*4882a593Smuzhiyun - PromJet Port 34*4882a593Smuzhiyun - FPGA connection 35*4882a593Smuzhiyun - USB 3.0 36*4882a593Smuzhiyun - Two high speed USB 3.0 ports 37*4882a593Smuzhiyun - First USB 3.0 port configured as Host with Type-A connector 38*4882a593Smuzhiyun - Second USB 3.0 port configured as OTG with micro-AB connector 39*4882a593Smuzhiyun - SDHC: PCIe x1 Right Angle connector for supporting following cards 40*4882a593Smuzhiyun - 1/4-/8-bit SD/MMC Legacy CARD supporting 3.3V devices only 41*4882a593Smuzhiyun - 1-/4-/8-bit SD/MMC Card supporting 1.8V devices only 42*4882a593Smuzhiyun - 4-bit eMMC Card Rev 4.4 (1.8V only) 43*4882a593Smuzhiyun - 8-bit eMMC Card Rev 4.5 (1.8V only) 44*4882a593Smuzhiyun - SD Card Rev 2.0 and Rev 3.0 45*4882a593Smuzhiyun - DSPI: 3 high-speed flash Memory for storage 46*4882a593Smuzhiyun - 16 MB high-speed flash Memory for boot code and storage (up to 108MHz) 47*4882a593Smuzhiyun - 8 MB high-speed flash Memory (up to 104 MHz) 48*4882a593Smuzhiyun - 512 MB low-speed flash Memory (up to 40 MHz) 49*4882a593Smuzhiyun - QSPI: via NAND/QSPI Card 50*4882a593Smuzhiyun - 4 I2C controllers 51*4882a593Smuzhiyun - Two SATA onboard connectors 52*4882a593Smuzhiyun - UART 53*4882a593Smuzhiyun - Two 4-pin (HW control) or four 2-pin (SW control) serial ports at up to 115.2 Kbit/s 54*4882a593Smuzhiyun - Two DB9 D-Type connectors supporting one Serial port each 55*4882a593Smuzhiyun - ARM JTAG support 56*4882a593Smuzhiyun 57*4882a593SmuzhiyunMemory map from core's view 58*4882a593Smuzhiyun---------------------------- 59*4882a593Smuzhiyun0x00_0000_0000 .. 0x00_000F_FFFF Boot Rom 60*4882a593Smuzhiyun0x00_0100_0000 .. 0x00_0FFF_FFFF CCSR 61*4882a593Smuzhiyun0x00_1800_0000 .. 0x00_181F_FFFF OCRAM 62*4882a593Smuzhiyun0x00_3000_0000 .. 0x00_3FFF_FFFF IFC region #1 63*4882a593Smuzhiyun0x00_8000_0000 .. 0x00_FFFF_FFFF DDR region #1 64*4882a593Smuzhiyun0x05_1000_0000 .. 0x05_FFFF_FFFF IFC region #2 65*4882a593Smuzhiyun0x80_8000_0000 .. 0xFF_FFFF_FFFF DDR region #2 66*4882a593Smuzhiyun 67*4882a593SmuzhiyunOther addresses are either reserved, or not used directly by U-Boot. 68*4882a593SmuzhiyunThis list should be updated when more addresses are used. 69*4882a593Smuzhiyun 70*4882a593SmuzhiyunIFC region map from core's view 71*4882a593Smuzhiyun------------------------------- 72*4882a593SmuzhiyunDuring boot i.e. IFC Region #1:- 73*4882a593Smuzhiyun 0x30000000 - 0x37ffffff : 128MB : NOR flash 74*4882a593Smuzhiyun 0x38000000 - 0x3BFFFFFF : 64MB : Promjet 75*4882a593Smuzhiyun 0x3C000000 - 0x40000000 : 64MB : FPGA etc 76*4882a593Smuzhiyun 77*4882a593SmuzhiyunAfter relocate to DDR i.e. IFC Region #2:- 78*4882a593Smuzhiyun 0x5_1000_0000..0x5_1fff_ffff Memory Hole 79*4882a593Smuzhiyun 0x5_2000_0000..0x5_3fff_ffff IFC CSx (FPGA, NAND and others 512MB) 80*4882a593Smuzhiyun 0x5_4000_0000..0x5_7fff_ffff ASIC or others 1GB 81*4882a593Smuzhiyun 0x5_8000_0000..0x5_bfff_ffff IFC CS0 1GB (NOR/Promjet) 82*4882a593Smuzhiyun 0x5_C000_0000..0x5_ffff_ffff IFC CS1 1GB (NOR/Promjet) 83*4882a593Smuzhiyun 84*4882a593SmuzhiyunBooting Options 85*4882a593Smuzhiyun--------------- 86*4882a593Smuzhiyuna) Promjet Boot 87*4882a593Smuzhiyunb) NOR boot 88*4882a593Smuzhiyunc) NAND boot 89*4882a593Smuzhiyund) SD boot 90*4882a593Smuzhiyune) QSPI boot 91*4882a593Smuzhiyun 92*4882a593SmuzhiyunMemory map for NOR boot 93*4882a593Smuzhiyun------------------------- 94*4882a593SmuzhiyunImage Flash Offset 95*4882a593SmuzhiyunRCW+PBI 0x00000000 96*4882a593SmuzhiyunBoot firmware (U-Boot) 0x00100000 97*4882a593SmuzhiyunBoot firmware Environment 0x00300000 98*4882a593SmuzhiyunPPA firmware 0x00400000 99*4882a593SmuzhiyunSecure Headers 0x00600000 100*4882a593SmuzhiyunDPAA2 MC 0x00A00000 101*4882a593SmuzhiyunDPAA2 DPL 0x00D00000 102*4882a593SmuzhiyunDPAA2 DPC 0x00E00000 103*4882a593SmuzhiyunKernel.itb 0x01000000 104*4882a593Smuzhiyun 105*4882a593SmuzhiyunMemory map for SD boot 106*4882a593Smuzhiyun------------------------- 107*4882a593SmuzhiyunImage Flash Offset SD Card 108*4882a593Smuzhiyun Start Block No. 109*4882a593SmuzhiyunRCW+PBI 0x00000000 0x00008 110*4882a593SmuzhiyunBoot firmware (U-Boot) 0x00100000 0x00800 111*4882a593SmuzhiyunBoot firmware Environment 0x00300000 0x01800 112*4882a593SmuzhiyunPPA firmware 0x00400000 0x02000 113*4882a593SmuzhiyunDPAA2 MC 0x00A00000 0x05000 114*4882a593SmuzhiyunDPAA2 DPL 0x00D00000 0x06800 115*4882a593SmuzhiyunDPAA2 DPC 0x00E00000 0x07000 116*4882a593SmuzhiyunKernel.itb 0x01000000 0x08000 117*4882a593Smuzhiyun 118*4882a593SmuzhiyunEnvironment Variables 119*4882a593Smuzhiyun--------------------- 120*4882a593Smuzhiyun- mcboottimeout: MC boot timeout in milliseconds. If this variable is not defined 121*4882a593Smuzhiyun the value CONFIG_SYS_LS_MC_BOOT_TIMEOUT_MS will be assumed. 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun- mcmemsize: MC DRAM block size. If this variable is not defined 124*4882a593Smuzhiyun the value CONFIG_SYS_LS_MC_DRAM_BLOCK_MIN_SIZE will be assumed. 125*4882a593Smuzhiyun 126*4882a593SmuzhiyunBooting Linux flavors which do not support 48-bit VA (< Linux 3.18) 127*4882a593Smuzhiyun------------------------------------------------------------------- 128*4882a593SmuzhiyunOne needs to use appropriate bootargs to boot Linux flavors which do 129*4882a593Smuzhiyunnot support 48-bit VA (for e.g. < Linux 3.18) by appending mem=2048M, as shown 130*4882a593Smuzhiyunbelow: 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun=> setenv bootargs 'console=ttyS1,115200 root=/dev/ram 133*4882a593Smuzhiyun earlycon=uart8250,mmio,0x21c0600,115200 default_hugepagesz=2m hugepagesz=2m 134*4882a593Smuzhiyun hugepages=16 mem=2048M' 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun 137*4882a593SmuzhiyunX-QSGMII-16PORT riser card 138*4882a593Smuzhiyun---------------------------- 139*4882a593SmuzhiyunThe X-QSGMII-16PORT is a 4xQSGMII/8xSGMII riser card with eighth SerDes 140*4882a593Smuzhiyuninterfaces implemented in PCIe form factor board. 141*4882a593SmuzhiyunIt supports following: 142*4882a593Smuzhiyun - Card can operate with up to 4 QSGMII lane simultaneously 143*4882a593Smuzhiyun - Card can operate with up to 8 SGMII lane simultaneously 144*4882a593Smuzhiyun 145*4882a593SmuzhiyunSupported card configuration 146*4882a593Smuzhiyun - CSEL : ON ON ON ON 147*4882a593Smuzhiyun - MSEL1 : ON ON ON ON OFF OFF OFF OFF 148*4882a593Smuzhiyun - MSEL2 : OFF OFF OFF OFF ON ON ON ON 149*4882a593Smuzhiyun 150*4882a593SmuzhiyunTo enable this card: modify hwconfig to add "xqsgmii" variable. 151*4882a593Smuzhiyun 152*4882a593SmuzhiyunSupported PHY addresses during SGMII: 153*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT0_ADDR 0x0 154*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT2_ADDR 0x2 155*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT0_ADDR 0x4 156*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT2_ADDR 0x6 157*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT0_ADDR 0x8 158*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT2_ADDR 0xa 159*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT0_ADDR 0xc 160*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT2_ADDR 0xe 161*4882a593Smuzhiyun 162*4882a593SmuzhiyunMapping DPMACx to PHY during SGMII 163*4882a593SmuzhiyunDPMAC1 -> PHY1-P0 164*4882a593SmuzhiyunDPMAC2 -> PHY2-P0 165*4882a593SmuzhiyunDPMAC3 -> PHY3-P0 166*4882a593SmuzhiyunDPMAC4 -> PHY4-P0 167*4882a593SmuzhiyunDPMAC5 -> PHY3-P2 168*4882a593SmuzhiyunDPMAC6 -> PHY1-P2 169*4882a593SmuzhiyunDPMAC7 -> PHY4-P1 170*4882a593SmuzhiyunDPMAC8 -> PHY2-P2 171*4882a593SmuzhiyunDPMAC9 -> PHY1-P0 172*4882a593SmuzhiyunDPMAC10 -> PHY2-P0 173*4882a593SmuzhiyunDPMAC11 -> PHY3-P0 174*4882a593SmuzhiyunDPMAC12 -> PHY4-P0 175*4882a593SmuzhiyunDPMAC13 -> PHY3-P2 176*4882a593SmuzhiyunDPMAC14 -> PHY1-P2 177*4882a593SmuzhiyunDPMAC15 -> PHY4-P1 178*4882a593SmuzhiyunDPMAC16 -> PHY2-P2 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun 181*4882a593SmuzhiyunSupported PHY address during QSGMII 182*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT0_ADDR 0x0 183*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT1_ADDR 0x1 184*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT2_ADDR 0x2 185*4882a593Smuzhiyun#define XQSGMII_CARD_PHY1_PORT3_ADDR 0x3 186*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT0_ADDR 0x4 187*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT1_ADDR 0x5 188*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT2_ADDR 0x6 189*4882a593Smuzhiyun#define XQSGMII_CARD_PHY2_PORT3_ADDR 0x7 190*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT0_ADDR 0x8 191*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT1_ADDR 0x9 192*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT2_ADDR 0xa 193*4882a593Smuzhiyun#define XQSGMII_CARD_PHY3_PORT3_ADDR 0xb 194*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT0_ADDR 0xc 195*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT1_ADDR 0xd 196*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT2_ADDR 0xe 197*4882a593Smuzhiyun#define XQSGMII_CARD_PHY4_PORT3_ADDR 0xf 198*4882a593Smuzhiyun 199*4882a593SmuzhiyunMapping DPMACx to PHY during QSGMII 200*4882a593SmuzhiyunDPMAC1 -> PHY1-P3 201*4882a593SmuzhiyunDPMAC2 -> PHY1-P2 202*4882a593SmuzhiyunDPMAC3 -> PHY1-P1 203*4882a593SmuzhiyunDPMAC4 -> PHY1-P0 204*4882a593SmuzhiyunDPMAC5 -> PHY2-P3 205*4882a593SmuzhiyunDPMAC6 -> PHY2-P2 206*4882a593SmuzhiyunDPMAC7 -> PHY2-P1 207*4882a593SmuzhiyunDPMAC8 -> PHY2-P0 208*4882a593SmuzhiyunDPMAC9 -> PHY3-P0 209*4882a593SmuzhiyunDPMAC10 -> PHY3-P1 210*4882a593SmuzhiyunDPMAC11 -> PHY3-P2 211*4882a593SmuzhiyunDPMAC12 -> PHY3-P3 212*4882a593SmuzhiyunDPMAC13 -> PHY4-P0 213*4882a593SmuzhiyunDPMAC14 -> PHY4-P1 214*4882a593SmuzhiyunDPMAC15 -> PHY4-P2 215*4882a593SmuzhiyunDPMAC16 -> PHY4-P3 216*4882a593Smuzhiyun 217