162af7615SShengzhou LiuOverview 262af7615SShengzhou Liu========= 362af7615SShengzhou LiuThe P1010RDB is a Freescale reference design board that hosts the P1010 SoC. 462af7615SShengzhou Liu 562af7615SShengzhou LiuThe P1010 is a cost-effective, low-power, highly integrated host processor 662af7615SShengzhou Liubased on a Power Architecture e500v2 core (maximum core frequency 800/1000 MHz), 762af7615SShengzhou Liuthat addresses the requirements of several routing, gateways, storage, consumer, 862af7615SShengzhou Liuand industrial applications. Applications of interest include the main CPUs and 962af7615SShengzhou LiuI/O processors in network attached storage (NAS), the voice over IP (VoIP) 1062af7615SShengzhou Liurouter/gateway, and wireless LAN (WLAN) and industrial controllers. 1162af7615SShengzhou Liu 1262af7615SShengzhou LiuThe P1010RDB board features are as follows: 1362af7615SShengzhou LiuMemory subsystem: 1462af7615SShengzhou Liu - 1Gbyte unbuffered DDR3 SDRAM discrete devices (32-bit bus) 1562af7615SShengzhou Liu - 32 Mbyte NOR flash single-chip memory 1662af7615SShengzhou Liu - 32 Mbyte NAND flash memory 1762af7615SShengzhou Liu - 256 Kbit M24256 I2C EEPROM 1862af7615SShengzhou Liu - 16 Mbyte SPI memory 1962af7615SShengzhou Liu - I2C Board EEPROM 128x8 bit memory 2062af7615SShengzhou Liu - SD/MMC connector to interface with the SD memory card 2162af7615SShengzhou LiuInterfaces: 2262af7615SShengzhou Liu - PCIe: 2362af7615SShengzhou Liu - Lane0: x1 mini-PCIe slot 2462af7615SShengzhou Liu - Lane1: x1 PCIe standard slot 2562af7615SShengzhou Liu - SATA: 2662af7615SShengzhou Liu - 1 internal SATA connector to 2.5” 160G SATA2 HDD 2762af7615SShengzhou Liu - 1 eSATA connector to rear panel 2862af7615SShengzhou Liu - 10/100/1000 BaseT Ethernet ports: 2962af7615SShengzhou Liu - eTSEC1, RGMII: one 10/100/1000 port using Vitesse VSC8641XKO 3062af7615SShengzhou Liu - eTSEC2, SGMII: one 10/100/1000 port using Vitesse VSC8221 3162af7615SShengzhou Liu - eTSEC3, SGMII: one 10/100/1000 port using Vitesse VSC8221 3262af7615SShengzhou Liu - USB 2.0 port: 3362af7615SShengzhou Liu - x1 USB2.0 port via an external ULPI PHY to micro-AB connector 3462af7615SShengzhou Liu - x1 USB2.0 port via an internal UTMI PHY to micro-AB connector 3562af7615SShengzhou Liu - FlexCAN ports: 3662af7615SShengzhou Liu - 2 DB-9 female connectors for FlexCAN bus(revision 2.0B) 3762af7615SShengzhou Liu interface; 3862af7615SShengzhou Liu - DUART interface: 3962af7615SShengzhou Liu - DUART interface: supports two UARTs up to 115200 bps for 4062af7615SShengzhou Liu console display 4162af7615SShengzhou Liu - RJ45 connectors are used for these 2 UART ports. 4262af7615SShengzhou Liu - TDM 4362af7615SShengzhou Liu - 2 FXS ports connected via an external SLIC to the TDM interface. 4462af7615SShengzhou Liu SLIC is controllled via SPI. 4562af7615SShengzhou Liu - 1 FXO port connected via a relay to FXS for switchover to POTS 4662af7615SShengzhou LiuBoard connectors: 4762af7615SShengzhou Liu - Mini-ITX power supply connector 4862af7615SShengzhou Liu - JTAG/COP for debugging 4962af7615SShengzhou LiuIEEE Std. 1588 signals for test and measurement 5062af7615SShengzhou LiuReal-time clock on I2C bus 5162af7615SShengzhou LiuPOR 5262af7615SShengzhou Liu - support critical POR setting changed via switch on board 5362af7615SShengzhou LiuPCB 5462af7615SShengzhou Liu - 6-layer routing (4-layer signals, 2-layer power and ground) 5562af7615SShengzhou Liu 5662af7615SShengzhou Liu 5762af7615SShengzhou LiuPhysical Memory Map on P1010RDB 5862af7615SShengzhou Liu=============================== 5962af7615SShengzhou LiuAddress Start Address End Memory type Attributes 6062af7615SShengzhou Liu0x0000_0000 0x3fff_ffff DDR 1G Cacheable 6162af7615SShengzhou Liu0xa000_0000 0xdfff_ffff PCI Express Mem 1G non-cacheable 6262af7615SShengzhou Liu0xee00_0000 0xefff_ffff NOR Flash 32M non-cacheable 6362af7615SShengzhou Liu0xffc2_0000 0xffc5_ffff PCI IO range 256K non-cacheable 6462af7615SShengzhou Liu0xffa0_0000 0xffaf_ffff NAND Flash 1M cacheable 6562af7615SShengzhou Liu0xffb0_0000 0xffbf_ffff Board CPLD 1M non-cacheable 6662af7615SShengzhou Liu0xffd0_0000 0xffd0_3fff L1 for Stack 16K Cacheable TLB0 6762af7615SShengzhou Liu0xffe0_0000 0xffef_ffff CCSR 1M non-cacheable 6862af7615SShengzhou Liu 6962af7615SShengzhou Liu 7062af7615SShengzhou LiuSerial Port Configuration on P1010RDB 7162af7615SShengzhou Liu===================================== 7262af7615SShengzhou LiuConfigure the serial port of the attached computer with the following values: 7362af7615SShengzhou Liu -Data rate: 115200 bps 7462af7615SShengzhou Liu -Number of data bits: 8 7562af7615SShengzhou Liu -Parity: None 7662af7615SShengzhou Liu -Number of Stop bits: 1 7762af7615SShengzhou Liu -Flow Control: Hardware/None 7862af7615SShengzhou Liu 7962af7615SShengzhou Liu 8062af7615SShengzhou LiuSettings of DIP-switch 8162af7615SShengzhou Liu====================== 8262af7615SShengzhou Liu SW4[1:4]= 1111 and SW6[4]=0 for boot from 16bit NOR flash 8362af7615SShengzhou Liu SW4[1:4]= 1000 and SW6[4]=1 for boot from 8bit NAND flash 8462af7615SShengzhou Liu SW4[1:4]= 0110 and SW6[4]=0 for boot from SPI flash 8562af7615SShengzhou LiuNote: 1 stands for 'on', 0 stands for 'off' 8662af7615SShengzhou Liu 8762af7615SShengzhou Liu 8862af7615SShengzhou LiuSetting of hwconfig 8962af7615SShengzhou Liu=================== 9062af7615SShengzhou LiuIf FlexCAN or TDM is needed, please set "fsl_p1010mux:tdm_can=can" or 9162af7615SShengzhou Liu"fsl_p1010mux:tdm_can=tdm" explicitly in u-booot prompt as below for example: 9262af7615SShengzhou Liusetenv hwconfig "fsl_p1010mux:tdm_can=tdm;usb1:dr_mode=host,phy_type=utmi" 9362af7615SShengzhou LiuBy default, don't set fsl_p1010mux:tdm_can, in this case, spi chip selection 9462af7615SShengzhou Liuis set to spi-flash instead of to SLIC/TDM/DAC and tdm_can_sel is set to TDM 9562af7615SShengzhou Liuinstead of to CAN/UART1. 9662af7615SShengzhou Liu 9762af7615SShengzhou Liu 98*a187559eSBin MengBuild and burn U-Boot to NOR flash 9962af7615SShengzhou Liu================================== 10062af7615SShengzhou Liu1. Build u-boot.bin image 10162af7615SShengzhou Liu export ARCH=powerpc 10262af7615SShengzhou Liu export CROSS_COMPILE=/your_path/powerpc-linux-gnu- 10362af7615SShengzhou Liu make P1010RDB_NOR 10462af7615SShengzhou Liu 10562af7615SShengzhou Liu2. Burn u-boot.bin into NOR flash 10662af7615SShengzhou Liu => tftp $loadaddr $uboot 107e222b1f3SPrabhakar Kushwaha => protect off eff40000 +$filesize 108e222b1f3SPrabhakar Kushwaha => erase eff40000 +$filesize 109e222b1f3SPrabhakar Kushwaha => cp.b $loadaddr eff40000 $filesize 11062af7615SShengzhou Liu 11162af7615SShengzhou Liu3. Check SW4[1:4]= 1111 and SW6[4]=0, then power on. 11262af7615SShengzhou Liu 11362af7615SShengzhou Liu 11462af7615SShengzhou LiuAlternate NOR bank 11562af7615SShengzhou Liu================== 11662af7615SShengzhou Liu1. Burn u-boot.bin into alternate NOR bank 11762af7615SShengzhou Liu => tftp $loadaddr $uboot 118e222b1f3SPrabhakar Kushwaha => protect off eef40000 +$filesize 119e222b1f3SPrabhakar Kushwaha => erase eef40000 +$filesize 120e222b1f3SPrabhakar Kushwaha => cp.b $loadaddr eef40000 $filesize 12162af7615SShengzhou Liu 12262af7615SShengzhou Liu2. Switch to alternate NOR bank 12362af7615SShengzhou Liu => mw.b ffb00009 1 12462af7615SShengzhou Liu => reset 12562af7615SShengzhou Liu or set SW1[8]= ON 12662af7615SShengzhou Liu 12762af7615SShengzhou LiuSW1[8]= OFF: Upper bank used for booting start 12862af7615SShengzhou LiuSW1[8]= ON: Lower bank used for booting start 12962af7615SShengzhou LiuCPLD NOR bank selection register address 0xFFB00009 Bit[0]: 13062af7615SShengzhou Liu0 - boot from upper 4 sectors 13162af7615SShengzhou Liu1 - boot from lower 4 sectors 13262af7615SShengzhou Liu 13362af7615SShengzhou Liu 134*a187559eSBin MengBuild and burn U-Boot to NAND flash 13562af7615SShengzhou Liu=================================== 13662af7615SShengzhou Liu1. Build u-boot.bin image 13762af7615SShengzhou Liu export ARCH=powerpc 13862af7615SShengzhou Liu export CROSS_COMPILE=/your_path/powerpc-linux-gnu- 13962af7615SShengzhou Liu make P1010RDB_NAND 14062af7615SShengzhou Liu 14162af7615SShengzhou Liu2. Burn u-boot-nand.bin into NAND flash 14262af7615SShengzhou Liu => tftp $loadaddr $uboot-nand 14362af7615SShengzhou Liu => nand erase 0 $filesize 14462af7615SShengzhou Liu => nand write $loadaddr 0 $filesize 14562af7615SShengzhou Liu 14662af7615SShengzhou Liu3. Check SW4[1:4]= 1000 and SW6[4]=1, then power on. 14762af7615SShengzhou Liu 14862af7615SShengzhou Liu 149*a187559eSBin MengBuild and burn U-Boot to SPI flash 15062af7615SShengzhou Liu================================== 15162af7615SShengzhou Liu1. Build u-boot-spi.bin image 15262af7615SShengzhou Liu make P1010RDB_SPIFLASH_config; make 15362af7615SShengzhou Liu Boot up kernel with rootfs.ext2.gz.uboot.p1010rdb 15462af7615SShengzhou Liu Download u-boot.bin to linux and you can find some config files 15562af7615SShengzhou Liu under /usr/share such as config_xx.dat. Do below command: 15662af7615SShengzhou Liu boot_format config_ddr3_1gb_p1010rdb_800M.dat u-boot.bin -spi \ 15762af7615SShengzhou Liu u-boot-spi.bin 15862af7615SShengzhou Liu to generate u-boot-spi.bin. 15962af7615SShengzhou Liu 16062af7615SShengzhou Liu2. Burn u-boot-spi.bin into SPI flash 16162af7615SShengzhou Liu => tftp $loadaddr $uboot-spi 16262af7615SShengzhou Liu => sf erase 0 100000 16362af7615SShengzhou Liu => sf write $loadaddr 0 $filesize 16462af7615SShengzhou Liu 16562af7615SShengzhou Liu3. Check SW4[1:4]= 0110 and SW6[4]=0, then power on. 16662af7615SShengzhou Liu 16762af7615SShengzhou Liu 16862af7615SShengzhou LiuCPLD POR setting registers 16962af7615SShengzhou Liu========================== 17062af7615SShengzhou Liu1. Set POR switch selection register (addr 0xFFB00011) to 0. 17162af7615SShengzhou Liu2. Write CPLD POR registers (BCSR0~BCSR3, addr 0xFFB00014~0xFFB00017) with 17262af7615SShengzhou Liu proper values. 17362af7615SShengzhou Liu If change boot ROM location to NOR or NAND flash, need write the IFC_CS0 17462af7615SShengzhou Liu switch command by I2C. 17562af7615SShengzhou Liu3. Send reset command. 17662af7615SShengzhou Liu After reset, the new POR setting will be implemented. 17762af7615SShengzhou Liu 17862af7615SShengzhou LiuTwo examples are given in below: 17962af7615SShengzhou LiuSwitch from NOR to NAND boot with default frequency: 18062af7615SShengzhou Liu => i2c dev 0 18162af7615SShengzhou Liu => i2c mw 18 1 f9 18262af7615SShengzhou Liu => i2c mw 18 3 f0 18362af7615SShengzhou Liu => mw.b ffb00011 0 18462af7615SShengzhou Liu => mw.b ffb00017 1 18562af7615SShengzhou Liu => reset 18662af7615SShengzhou LiuSwitch from NAND to NOR boot with Core/CCB/DDR (800/400/667 MHz): 18762af7615SShengzhou Liu => i2c dev 0 18862af7615SShengzhou Liu => i2c mw 18 1 f1 18962af7615SShengzhou Liu => i2c mw 18 3 f0 19062af7615SShengzhou Liu => mw.b ffb00011 0 19162af7615SShengzhou Liu => mw.b ffb00014 2 19262af7615SShengzhou Liu => mw.b ffb00015 5 19362af7615SShengzhou Liu => mw.b ffb00016 3 19462af7615SShengzhou Liu => mw.b ffb00017 f 19562af7615SShengzhou Liu => reset 19662af7615SShengzhou Liu 19762af7615SShengzhou Liu 19862af7615SShengzhou LiuBoot Linux from network using TFTP on P1010RDB 19962af7615SShengzhou Liu============================================== 20062af7615SShengzhou LiuPlace uImage, p1010rdb.dtb and rootfs files in the TFTP disk area. 20162af7615SShengzhou Liu => tftp 1000000 uImage 20262af7615SShengzhou Liu => tftp 2000000 p1010rdb.dtb 20362af7615SShengzhou Liu => tftp 3000000 rootfs.ext2.gz.uboot.p1010rdb 20462af7615SShengzhou Liu => bootm 1000000 3000000 2000000 20562af7615SShengzhou Liu 20662af7615SShengzhou Liu 20762af7615SShengzhou LiuFor more details, please refer to P1010RDB User Guide and access website 20862af7615SShengzhou Liuwww.freescale.com 209