1*4882a593SmuzhiyunOverview 2*4882a593Smuzhiyun========= 3*4882a593SmuzhiyunThe P1010RDB-PB is a Freescale Reference Design Board that hosts the P1010 SoC. 4*4882a593SmuzhiyunP1010RDB-PB is a variation of previous P1010RDB-PA board. 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunThe P1010 is a cost-effective, low-power, highly integrated host processor 7*4882a593Smuzhiyunbased on a Power Architecture e500v2 core (maximum core frequency 1GHz),that 8*4882a593Smuzhiyunaddresses the requirements of several routing, gateways, storage, consumer, 9*4882a593Smuzhiyunand industrial applications. Applications of interest include the main CPUs and 10*4882a593SmuzhiyunI/O processors in network attached storage (NAS), the voice over IP (VoIP) 11*4882a593Smuzhiyunrouter/gateway, and wireless LAN (WLAN) and industrial controllers. 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunThe P1010RDB-PB board features are as following: 14*4882a593SmuzhiyunMemory subsystem: 15*4882a593Smuzhiyun - 1G bytes unbuffered DDR3 SDRAM discrete devices (32-bit bus) 16*4882a593Smuzhiyun - 32M bytes NOR flash single-chip memory 17*4882a593Smuzhiyun - 2G bytes NAND flash memory 18*4882a593Smuzhiyun - 16M bytes SPI memory 19*4882a593Smuzhiyun - 256K bit M24256 I2C EEPROM 20*4882a593Smuzhiyun - I2C Board EEPROM 128x8 bit memory 21*4882a593Smuzhiyun - SD/MMC connector to interface with the SD memory card 22*4882a593SmuzhiyunInterfaces: 23*4882a593Smuzhiyun - Three 10/100/1000 BaseT Ethernet ports (One RGMII and two SGMII) 24*4882a593Smuzhiyun - PCIe 2.0: two x1 mini-PCIe slots 25*4882a593Smuzhiyun - SATA 2.0: two SATA interfaces 26*4882a593Smuzhiyun - USB 2.0: one USB interface 27*4882a593Smuzhiyun - FlexCAN: two FlexCAN interfaces (revision 2.0B) 28*4882a593Smuzhiyun - UART: one USB-to-Serial interface 29*4882a593Smuzhiyun - TDM: 2 FXS ports connected via an external SLIC to the TDM interface. 30*4882a593Smuzhiyun 1 FXO port connected via a relay to FXS for switchover to POTS 31*4882a593Smuzhiyun 32*4882a593SmuzhiyunBoard connectors: 33*4882a593Smuzhiyun - Mini-ITX power supply connector 34*4882a593Smuzhiyun - JTAG/COP for debugging 35*4882a593Smuzhiyun 36*4882a593SmuzhiyunPOR: support critical POR setting changed via switch on board 37*4882a593SmuzhiyunPCB: 6-layer routing (4-layer signals, 2-layer power and ground) 38*4882a593Smuzhiyun 39*4882a593SmuzhiyunPhysical Memory Map on P1010RDB 40*4882a593Smuzhiyun=============================== 41*4882a593SmuzhiyunAddress Start Address End Memory type Attributes 42*4882a593Smuzhiyun0x0000_0000 0x3fff_ffff DDR 1G Cacheable 43*4882a593Smuzhiyun0xa000_0000 0xdfff_ffff PCI Express Mem 1G non-cacheable 44*4882a593Smuzhiyun0xee00_0000 0xefff_ffff NOR Flash 32M non-cacheable 45*4882a593Smuzhiyun0xffc2_0000 0xffc5_ffff PCI IO range 256K non-cacheable 46*4882a593Smuzhiyun0xffa0_0000 0xffaf_ffff NAND Flash 1M cacheable 47*4882a593Smuzhiyun0xffb0_0000 0xffbf_ffff Board CPLD 1M non-cacheable 48*4882a593Smuzhiyun0xffd0_0000 0xffd0_3fff L1 for Stack 16K Cacheable TLB0 49*4882a593Smuzhiyun0xffe0_0000 0xffef_ffff CCSR 1M non-cacheable 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun 52*4882a593SmuzhiyunSerial Port Configuration on P1010RDB 53*4882a593Smuzhiyun===================================== 54*4882a593SmuzhiyunConfigure the serial port of the attached computer with the following values: 55*4882a593Smuzhiyun -Data rate: 115200 bps 56*4882a593Smuzhiyun -Number of data bits: 8 57*4882a593Smuzhiyun -Parity: None 58*4882a593Smuzhiyun -Number of Stop bits: 1 59*4882a593Smuzhiyun -Flow Control: Hardware/None 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun 62*4882a593SmuzhiyunP1010RDB-PB default DIP-switch settings 63*4882a593Smuzhiyun======================================= 64*4882a593SmuzhiyunSW1[1:8]= 10101010 65*4882a593SmuzhiyunSW2[1:8]= 11011000 66*4882a593SmuzhiyunSW3[1:8]= 10010000 67*4882a593SmuzhiyunSW4[1:4]= 1010 68*4882a593SmuzhiyunSW5[1:8]= 11111010 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun 71*4882a593SmuzhiyunP1010RDB-PB boot mode settings via DIP-switch 72*4882a593Smuzhiyun============================================= 73*4882a593SmuzhiyunSW4[1:4]= 1111 and SW3[3:4]= 00 for 16bit NOR boot 74*4882a593SmuzhiyunSW4[1:4]= 1010 and SW3[3:4]= 01 for 8bit NAND boot 75*4882a593SmuzhiyunSW4[1:4]= 0110 and SW3[3:4]= 00 for SPI boot 76*4882a593SmuzhiyunSW4[1:4]= 0111 and SW3[3:4]= 10 for SD boot 77*4882a593SmuzhiyunNote: 1 stands for 'on', 0 stands for 'off' 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun 80*4882a593SmuzhiyunSwitch P1010RDB-PB boot mode via software without setting DIP-switch 81*4882a593Smuzhiyun==================================================================== 82*4882a593Smuzhiyun=> run boot_bank0 (boot from NOR bank0) 83*4882a593Smuzhiyun=> run boot_bank1 (boot from NOR bank1) 84*4882a593Smuzhiyun=> run boot_nand (boot from NAND flash) 85*4882a593Smuzhiyun=> run boot_spi (boot from SPI flash) 86*4882a593Smuzhiyun=> run boot_sd (boot from SD card) 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun 89*4882a593SmuzhiyunFrequency combination support on P1010RDB-PB 90*4882a593Smuzhiyun============================================= 91*4882a593SmuzhiyunSW1[4:7] SW5[1] SW5[5:8] SW2[2] Core(MHz) Platform(MHz) DDR(MT/s) 92*4882a593Smuzhiyun0101 1 1010 0 800 400 800 93*4882a593Smuzhiyun1001 1 1010 0 800 400 667 94*4882a593Smuzhiyun1010 1 1100 0 667 333 667 95*4882a593Smuzhiyun1000 0 1010 0 533 266 667 96*4882a593Smuzhiyun0101 1 1010 1 1000 400 800 97*4882a593Smuzhiyun1001 1 1010 1 1000 400 667 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun 100*4882a593SmuzhiyunSetting of pin mux 101*4882a593Smuzhiyun================== 102*4882a593SmuzhiyunSince pins multiplexing, TDM and CAN are muxed with SPI flash. 103*4882a593SmuzhiyunSDHC is muxed with IFC. IFC and SPI flash are enabled by default. 104*4882a593Smuzhiyun 105*4882a593SmuzhiyunTo enable TDM: 106*4882a593Smuzhiyun=> setenv hwconfig fsl_p1010mux:tdm_can=tdm 107*4882a593Smuzhiyun=> save;reset 108*4882a593Smuzhiyun 109*4882a593SmuzhiyunTo enable FlexCAN: 110*4882a593Smuzhiyun=> setenv hwconfig fsl_p1010mux:tdm_can=can 111*4882a593Smuzhiyun=> save;reset 112*4882a593Smuzhiyun 113*4882a593SmuzhiyunTo enable SDHC in case of NOR/NAND/SPI boot 114*4882a593Smuzhiyun a) For temporary use case in runtime without reboot system 115*4882a593Smuzhiyun run 'mux sdhc' in U-Boot to validate SDHC with invalidating IFC. 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun b) For long-term use case 118*4882a593Smuzhiyun set 'esdhc' in hwconfig and save it. 119*4882a593Smuzhiyun 120*4882a593SmuzhiyunTo enable IFC in case of SD boot 121*4882a593Smuzhiyun a) For temporary use case in runtime without reboot system 122*4882a593Smuzhiyun run 'mux ifc' in U-Boot to validate IFC with invalidating SDHC. 123*4882a593Smuzhiyun 124*4882a593Smuzhiyun b) For long-term use case 125*4882a593Smuzhiyun set 'ifc' in hwconfig and save it. 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun 128*4882a593SmuzhiyunBuild images for different boot mode 129*4882a593Smuzhiyun==================================== 130*4882a593SmuzhiyunFirst setup cross compile environment on build host 131*4882a593Smuzhiyun $ export ARCH=powerpc 132*4882a593Smuzhiyun $ export CROSS_COMPILE=<your-compiler-path>/powerpc-linux-gnu- 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun1. For NOR boot 135*4882a593Smuzhiyun $ make P1010RDB-PB_NOR 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun2. For NAND boot 138*4882a593Smuzhiyun $ make P1010RDB-PB_NAND 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun3. For SPI boot 141*4882a593Smuzhiyun $ make P1010RDB-PB_SPIFLASH 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun4. For SD boot 144*4882a593Smuzhiyun $ make P1010RDB-PB_SDCARD 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun 147*4882a593SmuzhiyunSteps to program images to flash for different boot mode 148*4882a593Smuzhiyun======================================================== 149*4882a593Smuzhiyun1. NOR boot 150*4882a593Smuzhiyun => tftp 1000000 u-boot.bin 151*4882a593Smuzhiyun For bank0 152*4882a593Smuzhiyun => pro off all;era eff40000 efffffff;cp.b 1000000 eff40000 $filesize 153*4882a593Smuzhiyun set SW1[8]=0, SW4[1:4]= 1111 and SW3[3:4]= 00, then power on the board 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun For bank1 156*4882a593Smuzhiyun => pro off all;era eef40000 eeffffff;cp.b 1000000 eef40000 $filesize 157*4882a593Smuzhiyun set SW1[8]=1, SW4[1:4]= 1111 and SW3[3:4]= 00, then power on the board 158*4882a593Smuzhiyun 159*4882a593Smuzhiyun2. NAND boot 160*4882a593Smuzhiyun => tftp 1000000 u-boot-nand.bin 161*4882a593Smuzhiyun => nand erase 0 $filesize; nand write $loadaddr 0 $filesize 162*4882a593Smuzhiyun Set SW4[1:4]= 1010 and SW3[3:4]= 01, then power on the board 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun3. SPI boot 165*4882a593Smuzhiyun 1) cat p1010rdb-config-header.bin u-boot.bin > u-boot-spi-combined.bin 166*4882a593Smuzhiyun 2) => tftp 1000000 u-boot-spi-combined.bin 167*4882a593Smuzhiyun 3) => sf probe 0; sf erase 0 100000; sf write 1000000 0 100000 168*4882a593Smuzhiyun set SW4[1:4]= 0110 and SW3[3:4]= 00, then power on the board 169*4882a593Smuzhiyun 170*4882a593Smuzhiyun4. SD boot 171*4882a593Smuzhiyun 1) cat p1010rdb-config-header.bin u-boot.bin > u-boot-sd-combined.bin 172*4882a593Smuzhiyun 2) => tftp 1000000 u-boot-sd-combined.bin 173*4882a593Smuzhiyun 3) => mux sdhc 174*4882a593Smuzhiyun 4) => mmc write 1000000 0 1050 175*4882a593Smuzhiyun set SW4[1:4]= 0111 and SW3[3:4]= 10, then power on the board 176*4882a593Smuzhiyun 177*4882a593Smuzhiyun 178*4882a593SmuzhiyunBoot Linux from network using TFTP on P1010RDB-PB 179*4882a593Smuzhiyun================================================= 180*4882a593SmuzhiyunPlace uImage, p1010rdb.dtb and rootfs files in the TFTP download path. 181*4882a593Smuzhiyun => tftp 1000000 uImage 182*4882a593Smuzhiyun => tftp 2000000 p1010rdb.dtb 183*4882a593Smuzhiyun => tftp 3000000 rootfs.ext2.gz.uboot.p1010rdb 184*4882a593Smuzhiyun => bootm 1000000 3000000 2000000 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun 187*4882a593SmuzhiyunFor more details, please refer to P1010RDB-PB User Guide and access website 188*4882a593Smuzhiyunwww.freescale.com and Freescale QorIQ SDK Infocenter document. 189