123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- Overview
- =========
- The P1010RDB is a Freescale reference design board that hosts the P1010 SoC.
- The P1010 is a cost-effective, low-power, highly integrated host processor
- based on a Power Architecture e500v2 core (maximum core frequency 800/1000 MHz),
- that addresses the requirements of several routing, gateways, storage, consumer,
- and industrial applications. Applications of interest include the main CPUs and
- I/O processors in network attached storage (NAS), the voice over IP (VoIP)
- router/gateway, and wireless LAN (WLAN) and industrial controllers.
- The P1010RDB board features are as follows:
- Memory subsystem:
- - 1Gbyte unbuffered DDR3 SDRAM discrete devices (32-bit bus)
- - 32 Mbyte NOR flash single-chip memory
- - 32 Mbyte NAND flash memory
- - 256 Kbit M24256 I2C EEPROM
- - 16 Mbyte SPI memory
- - I2C Board EEPROM 128x8 bit memory
- - SD/MMC connector to interface with the SD memory card
- Interfaces:
- - PCIe:
- - Lane0: x1 mini-PCIe slot
- - Lane1: x1 PCIe standard slot
- - SATA:
- - 1 internal SATA connector to 2.5” 160G SATA2 HDD
- - 1 eSATA connector to rear panel
- - 10/100/1000 BaseT Ethernet ports:
- - eTSEC1, RGMII: one 10/100/1000 port using Vitesse VSC8641XKO
- - eTSEC2, SGMII: one 10/100/1000 port using Vitesse VSC8221
- - eTSEC3, SGMII: one 10/100/1000 port using Vitesse VSC8221
- - USB 2.0 port:
- - x1 USB2.0 port via an external ULPI PHY to micro-AB connector
- - x1 USB2.0 port via an internal UTMI PHY to micro-AB connector
- - FlexCAN ports:
- - 2 DB-9 female connectors for FlexCAN bus(revision 2.0B)
- interface;
- - DUART interface:
- - DUART interface: supports two UARTs up to 115200 bps for
- console display
- - RJ45 connectors are used for these 2 UART ports.
- - TDM
- - 2 FXS ports connected via an external SLIC to the TDM interface.
- SLIC is controllled via SPI.
- - 1 FXO port connected via a relay to FXS for switchover to POTS
- Board connectors:
- - Mini-ITX power supply connector
- - JTAG/COP for debugging
- IEEE Std. 1588 signals for test and measurement
- Real-time clock on I2C bus
- POR
- - support critical POR setting changed via switch on board
- PCB
- - 6-layer routing (4-layer signals, 2-layer power and ground)
- Physical Memory Map on P1010RDB
- ===============================
- Address Start Address End Memory type Attributes
- 0x0000_0000 0x3fff_ffff DDR 1G Cacheable
- 0xa000_0000 0xdfff_ffff PCI Express Mem 1G non-cacheable
- 0xee00_0000 0xefff_ffff NOR Flash 32M non-cacheable
- 0xffc2_0000 0xffc5_ffff PCI IO range 256K non-cacheable
- 0xffa0_0000 0xffaf_ffff NAND Flash 1M cacheable
- 0xffb0_0000 0xffbf_ffff Board CPLD 1M non-cacheable
- 0xffd0_0000 0xffd0_3fff L1 for Stack 16K Cacheable TLB0
- 0xffe0_0000 0xffef_ffff CCSR 1M non-cacheable
- Serial Port Configuration on P1010RDB
- =====================================
- Configure the serial port of the attached computer with the following values:
- -Data rate: 115200 bps
- -Number of data bits: 8
- -Parity: None
- -Number of Stop bits: 1
- -Flow Control: Hardware/None
- Settings of DIP-switch
- ======================
- SW4[1:4]= 1111 and SW6[4]=0 for boot from 16bit NOR flash
- SW4[1:4]= 1000 and SW6[4]=1 for boot from 8bit NAND flash
- SW4[1:4]= 0110 and SW6[4]=0 for boot from SPI flash
- Note: 1 stands for 'on', 0 stands for 'off'
- Setting of hwconfig
- ===================
- If FlexCAN or TDM is needed, please set "fsl_p1010mux:tdm_can=can" or
- "fsl_p1010mux:tdm_can=tdm" explicitly in u-booot prompt as below for example:
- setenv hwconfig "fsl_p1010mux:tdm_can=tdm;usb1:dr_mode=host,phy_type=utmi"
- By default, don't set fsl_p1010mux:tdm_can, in this case, spi chip selection
- is set to spi-flash instead of to SLIC/TDM/DAC and tdm_can_sel is set to TDM
- instead of to CAN/UART1.
- Build and burn U-Boot to NOR flash
- ==================================
- 1. Build u-boot.bin image
- export ARCH=powerpc
- export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
- make P1010RDB_NOR
- 2. Burn u-boot.bin into NOR flash
- => tftp $loadaddr $uboot
- => protect off eff40000 +$filesize
- => erase eff40000 +$filesize
- => cp.b $loadaddr eff40000 $filesize
- 3. Check SW4[1:4]= 1111 and SW6[4]=0, then power on.
- Alternate NOR bank
- ==================
- 1. Burn u-boot.bin into alternate NOR bank
- => tftp $loadaddr $uboot
- => protect off eef40000 +$filesize
- => erase eef40000 +$filesize
- => cp.b $loadaddr eef40000 $filesize
- 2. Switch to alternate NOR bank
- => mw.b ffb00009 1
- => reset
- or set SW1[8]= ON
- SW1[8]= OFF: Upper bank used for booting start
- SW1[8]= ON: Lower bank used for booting start
- CPLD NOR bank selection register address 0xFFB00009 Bit[0]:
- 0 - boot from upper 4 sectors
- 1 - boot from lower 4 sectors
- Build and burn U-Boot to NAND flash
- ===================================
- 1. Build u-boot.bin image
- export ARCH=powerpc
- export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
- make P1010RDB_NAND
- 2. Burn u-boot-nand.bin into NAND flash
- => tftp $loadaddr $uboot-nand
- => nand erase 0 $filesize
- => nand write $loadaddr 0 $filesize
- 3. Check SW4[1:4]= 1000 and SW6[4]=1, then power on.
- Build and burn U-Boot to SPI flash
- ==================================
- 1. Build u-boot-spi.bin image
- make P1010RDB_SPIFLASH_config; make
- Boot up kernel with rootfs.ext2.gz.uboot.p1010rdb
- Download u-boot.bin to linux and you can find some config files
- under /usr/share such as config_xx.dat. Do below command:
- boot_format config_ddr3_1gb_p1010rdb_800M.dat u-boot.bin -spi \
- u-boot-spi.bin
- to generate u-boot-spi.bin.
- 2. Burn u-boot-spi.bin into SPI flash
- => tftp $loadaddr $uboot-spi
- => sf erase 0 100000
- => sf write $loadaddr 0 $filesize
- 3. Check SW4[1:4]= 0110 and SW6[4]=0, then power on.
- CPLD POR setting registers
- ==========================
- 1. Set POR switch selection register (addr 0xFFB00011) to 0.
- 2. Write CPLD POR registers (BCSR0~BCSR3, addr 0xFFB00014~0xFFB00017) with
- proper values.
- If change boot ROM location to NOR or NAND flash, need write the IFC_CS0
- switch command by I2C.
- 3. Send reset command.
- After reset, the new POR setting will be implemented.
- Two examples are given in below:
- Switch from NOR to NAND boot with default frequency:
- => i2c dev 0
- => i2c mw 18 1 f9
- => i2c mw 18 3 f0
- => mw.b ffb00011 0
- => mw.b ffb00017 1
- => reset
- Switch from NAND to NOR boot with Core/CCB/DDR (800/400/667 MHz):
- => i2c dev 0
- => i2c mw 18 1 f1
- => i2c mw 18 3 f0
- => mw.b ffb00011 0
- => mw.b ffb00014 2
- => mw.b ffb00015 5
- => mw.b ffb00016 3
- => mw.b ffb00017 f
- => reset
- Boot Linux from network using TFTP on P1010RDB
- ==============================================
- Place uImage, p1010rdb.dtb and rootfs files in the TFTP disk area.
- => tftp 1000000 uImage
- => tftp 2000000 p1010rdb.dtb
- => tftp 3000000 rootfs.ext2.gz.uboot.p1010rdb
- => bootm 1000000 3000000 2000000
- For more details, please refer to P1010RDB User Guide and access website
- www.freescale.com
|