xref: /OK3568_Linux_fs/u-boot/board/freescale/p1010rdb/README.P1010RDB-PB (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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