xref: /openbmc/u-boot/board/freescale/p1010rdb/README.P1010RDB-PA (revision 62af7615eb8e05bb29ecc44210f24317a51fcd94)
1*62af7615SShengzhou LiuOverview
2*62af7615SShengzhou Liu=========
3*62af7615SShengzhou LiuThe P1010RDB is a Freescale reference design board that hosts the P1010 SoC.
4*62af7615SShengzhou Liu
5*62af7615SShengzhou LiuThe P1010 is a cost-effective, low-power, highly integrated host processor
6*62af7615SShengzhou Liubased on a Power Architecture e500v2 core (maximum core frequency 800/1000 MHz),
7*62af7615SShengzhou Liuthat addresses the requirements of several routing, gateways, storage, consumer,
8*62af7615SShengzhou Liuand industrial applications. Applications of interest include the main CPUs and
9*62af7615SShengzhou LiuI/O processors in network attached storage (NAS), the voice over IP (VoIP)
10*62af7615SShengzhou Liurouter/gateway, and wireless LAN (WLAN) and industrial controllers.
11*62af7615SShengzhou Liu
12*62af7615SShengzhou LiuThe P1010RDB board features are as follows:
13*62af7615SShengzhou LiuMemory subsystem:
14*62af7615SShengzhou Liu	- 1Gbyte unbuffered DDR3 SDRAM discrete devices (32-bit bus)
15*62af7615SShengzhou Liu	- 32 Mbyte NOR flash single-chip memory
16*62af7615SShengzhou Liu	- 32 Mbyte NAND flash memory
17*62af7615SShengzhou Liu	- 256 Kbit M24256 I2C EEPROM
18*62af7615SShengzhou Liu	- 16 Mbyte SPI memory
19*62af7615SShengzhou Liu	- I2C Board EEPROM 128x8 bit memory
20*62af7615SShengzhou Liu	- SD/MMC connector to interface with the SD memory card
21*62af7615SShengzhou LiuInterfaces:
22*62af7615SShengzhou Liu	- PCIe:
23*62af7615SShengzhou Liu		- Lane0: x1 mini-PCIe slot
24*62af7615SShengzhou Liu		- Lane1: x1 PCIe standard slot
25*62af7615SShengzhou Liu	- SATA:
26*62af7615SShengzhou Liu		- 1 internal SATA connector to 2.5” 160G SATA2 HDD
27*62af7615SShengzhou Liu		- 1 eSATA connector to rear panel
28*62af7615SShengzhou Liu	- 10/100/1000 BaseT Ethernet ports:
29*62af7615SShengzhou Liu		- eTSEC1, RGMII: one 10/100/1000 port using Vitesse VSC8641XKO
30*62af7615SShengzhou Liu		- eTSEC2, SGMII: one 10/100/1000 port using Vitesse VSC8221
31*62af7615SShengzhou Liu		- eTSEC3, SGMII: one 10/100/1000 port using Vitesse VSC8221
32*62af7615SShengzhou Liu	- USB 2.0 port:
33*62af7615SShengzhou Liu		- x1 USB2.0 port via an external ULPI PHY to micro-AB connector
34*62af7615SShengzhou Liu		- x1 USB2.0 port via an internal UTMI PHY to micro-AB connector
35*62af7615SShengzhou Liu	- FlexCAN ports:
36*62af7615SShengzhou Liu		- 2 DB-9 female connectors for FlexCAN bus(revision 2.0B)
37*62af7615SShengzhou Liu		  interface;
38*62af7615SShengzhou Liu	- DUART interface:
39*62af7615SShengzhou Liu		- DUART interface: supports two UARTs up to 115200 bps for
40*62af7615SShengzhou Liu		   console display
41*62af7615SShengzhou Liu		- RJ45 connectors are used for these 2 UART ports.
42*62af7615SShengzhou Liu	- TDM
43*62af7615SShengzhou Liu		- 2 FXS ports connected via an external SLIC to the TDM interface.
44*62af7615SShengzhou Liu		  SLIC is controllled via SPI.
45*62af7615SShengzhou Liu		- 1 FXO port connected via a relay to FXS for switchover to POTS
46*62af7615SShengzhou LiuBoard connectors:
47*62af7615SShengzhou Liu	- Mini-ITX power supply connector
48*62af7615SShengzhou Liu	- JTAG/COP for debugging
49*62af7615SShengzhou LiuIEEE Std. 1588 signals for test and measurement
50*62af7615SShengzhou LiuReal-time clock on I2C bus
51*62af7615SShengzhou LiuPOR
52*62af7615SShengzhou Liu	- support critical POR setting changed via switch on board
53*62af7615SShengzhou LiuPCB
54*62af7615SShengzhou Liu	- 6-layer routing (4-layer signals, 2-layer power and ground)
55*62af7615SShengzhou Liu
56*62af7615SShengzhou Liu
57*62af7615SShengzhou LiuPhysical Memory Map on P1010RDB
58*62af7615SShengzhou Liu===============================
59*62af7615SShengzhou LiuAddress Start   Address End   Memory type	Attributes
60*62af7615SShengzhou Liu0x0000_0000	0x3fff_ffff   DDR		1G Cacheable
61*62af7615SShengzhou Liu0xa000_0000	0xdfff_ffff   PCI Express Mem	1G non-cacheable
62*62af7615SShengzhou Liu0xee00_0000	0xefff_ffff   NOR Flash		32M non-cacheable
63*62af7615SShengzhou Liu0xffc2_0000	0xffc5_ffff   PCI IO range	256K non-cacheable
64*62af7615SShengzhou Liu0xffa0_0000	0xffaf_ffff   NAND Flash	1M cacheable
65*62af7615SShengzhou Liu0xffb0_0000	0xffbf_ffff   Board CPLD	1M non-cacheable
66*62af7615SShengzhou Liu0xffd0_0000	0xffd0_3fff   L1 for Stack	16K Cacheable TLB0
67*62af7615SShengzhou Liu0xffe0_0000	0xffef_ffff   CCSR		1M non-cacheable
68*62af7615SShengzhou Liu
69*62af7615SShengzhou Liu
70*62af7615SShengzhou LiuSerial Port Configuration on P1010RDB
71*62af7615SShengzhou Liu=====================================
72*62af7615SShengzhou LiuConfigure the serial port of the attached computer with the following values:
73*62af7615SShengzhou Liu	-Data rate: 115200 bps
74*62af7615SShengzhou Liu	-Number of data bits: 8
75*62af7615SShengzhou Liu	-Parity: None
76*62af7615SShengzhou Liu	-Number of Stop bits: 1
77*62af7615SShengzhou Liu	-Flow Control: Hardware/None
78*62af7615SShengzhou Liu
79*62af7615SShengzhou Liu
80*62af7615SShengzhou LiuSettings of DIP-switch
81*62af7615SShengzhou Liu======================
82*62af7615SShengzhou Liu  SW4[1:4]= 1111 and SW6[4]=0 for boot from 16bit NOR flash
83*62af7615SShengzhou Liu  SW4[1:4]= 1000 and SW6[4]=1 for boot from 8bit NAND flash
84*62af7615SShengzhou Liu  SW4[1:4]= 0110 and SW6[4]=0 for boot from SPI flash
85*62af7615SShengzhou LiuNote: 1 stands for 'on', 0 stands for 'off'
86*62af7615SShengzhou Liu
87*62af7615SShengzhou Liu
88*62af7615SShengzhou LiuSetting of hwconfig
89*62af7615SShengzhou Liu===================
90*62af7615SShengzhou LiuIf FlexCAN or TDM is needed, please set "fsl_p1010mux:tdm_can=can" or
91*62af7615SShengzhou Liu"fsl_p1010mux:tdm_can=tdm" explicitly in u-booot prompt as below for example:
92*62af7615SShengzhou Liusetenv hwconfig "fsl_p1010mux:tdm_can=tdm;usb1:dr_mode=host,phy_type=utmi"
93*62af7615SShengzhou LiuBy default, don't set fsl_p1010mux:tdm_can, in this case, spi chip selection
94*62af7615SShengzhou Liuis set to spi-flash instead of to SLIC/TDM/DAC and tdm_can_sel is set to TDM
95*62af7615SShengzhou Liuinstead of to CAN/UART1.
96*62af7615SShengzhou Liu
97*62af7615SShengzhou Liu
98*62af7615SShengzhou LiuBuild and burn u-boot to NOR flash
99*62af7615SShengzhou Liu==================================
100*62af7615SShengzhou Liu1. Build u-boot.bin image
101*62af7615SShengzhou Liu	export ARCH=powerpc
102*62af7615SShengzhou Liu	export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
103*62af7615SShengzhou Liu	make P1010RDB_NOR
104*62af7615SShengzhou Liu
105*62af7615SShengzhou Liu2. Burn u-boot.bin into NOR flash
106*62af7615SShengzhou Liu	=> tftp $loadaddr $uboot
107*62af7615SShengzhou Liu	=> protect off eff80000 +$filesize
108*62af7615SShengzhou Liu	=> erase eff80000 +$filesize
109*62af7615SShengzhou Liu	=> cp.b $loadaddr eff80000 $filesize
110*62af7615SShengzhou Liu
111*62af7615SShengzhou Liu3. Check SW4[1:4]= 1111 and SW6[4]=0, then power on.
112*62af7615SShengzhou Liu
113*62af7615SShengzhou Liu
114*62af7615SShengzhou LiuAlternate NOR bank
115*62af7615SShengzhou Liu==================
116*62af7615SShengzhou Liu1. Burn u-boot.bin into alternate NOR bank
117*62af7615SShengzhou Liu	=> tftp $loadaddr $uboot
118*62af7615SShengzhou Liu	=> protect off eef80000 +$filesize
119*62af7615SShengzhou Liu	=> erase eef80000 +$filesize
120*62af7615SShengzhou Liu	=> cp.b $loadaddr eef80000 $filesize
121*62af7615SShengzhou Liu
122*62af7615SShengzhou Liu2. Switch to alternate NOR bank
123*62af7615SShengzhou Liu	=> mw.b ffb00009 1
124*62af7615SShengzhou Liu	=> reset
125*62af7615SShengzhou Liu	or set SW1[8]= ON
126*62af7615SShengzhou Liu
127*62af7615SShengzhou LiuSW1[8]= OFF: Upper bank used for booting start
128*62af7615SShengzhou LiuSW1[8]= ON:  Lower bank used for booting start
129*62af7615SShengzhou LiuCPLD NOR bank selection register address 0xFFB00009 Bit[0]:
130*62af7615SShengzhou Liu0 - boot from upper 4 sectors
131*62af7615SShengzhou Liu1 - boot from lower 4 sectors
132*62af7615SShengzhou Liu
133*62af7615SShengzhou Liu
134*62af7615SShengzhou LiuBuild and burn u-boot to NAND flash
135*62af7615SShengzhou Liu===================================
136*62af7615SShengzhou Liu1. Build u-boot.bin image
137*62af7615SShengzhou Liu	export ARCH=powerpc
138*62af7615SShengzhou Liu	export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
139*62af7615SShengzhou Liu	make P1010RDB_NAND
140*62af7615SShengzhou Liu
141*62af7615SShengzhou Liu2. Burn u-boot-nand.bin into NAND flash
142*62af7615SShengzhou Liu	=> tftp $loadaddr $uboot-nand
143*62af7615SShengzhou Liu	=> nand erase 0 $filesize
144*62af7615SShengzhou Liu	=> nand write $loadaddr 0 $filesize
145*62af7615SShengzhou Liu
146*62af7615SShengzhou Liu3. Check SW4[1:4]= 1000 and SW6[4]=1, then power on.
147*62af7615SShengzhou Liu
148*62af7615SShengzhou Liu
149*62af7615SShengzhou LiuBuild and burn u-boot to SPI flash
150*62af7615SShengzhou Liu==================================
151*62af7615SShengzhou Liu1. Build u-boot-spi.bin image
152*62af7615SShengzhou Liu	make P1010RDB_SPIFLASH_config; make
153*62af7615SShengzhou Liu	Boot up kernel with rootfs.ext2.gz.uboot.p1010rdb
154*62af7615SShengzhou Liu	Download u-boot.bin to linux and you can find some config files
155*62af7615SShengzhou Liu	under /usr/share such as config_xx.dat. Do below command:
156*62af7615SShengzhou Liu	boot_format config_ddr3_1gb_p1010rdb_800M.dat u-boot.bin -spi \
157*62af7615SShengzhou Liu			u-boot-spi.bin
158*62af7615SShengzhou Liu	to generate u-boot-spi.bin.
159*62af7615SShengzhou Liu
160*62af7615SShengzhou Liu2. Burn u-boot-spi.bin into SPI flash
161*62af7615SShengzhou Liu	=> tftp $loadaddr $uboot-spi
162*62af7615SShengzhou Liu	=> sf erase 0 100000
163*62af7615SShengzhou Liu	=> sf write $loadaddr 0 $filesize
164*62af7615SShengzhou Liu
165*62af7615SShengzhou Liu3. Check SW4[1:4]= 0110 and SW6[4]=0, then power on.
166*62af7615SShengzhou Liu
167*62af7615SShengzhou Liu
168*62af7615SShengzhou LiuCPLD POR setting registers
169*62af7615SShengzhou Liu==========================
170*62af7615SShengzhou Liu1. Set POR switch selection register (addr 0xFFB00011) to 0.
171*62af7615SShengzhou Liu2. Write CPLD POR registers (BCSR0~BCSR3, addr 0xFFB00014~0xFFB00017) with
172*62af7615SShengzhou Liu   proper values.
173*62af7615SShengzhou Liu   If change boot ROM location to NOR or NAND flash, need write the IFC_CS0
174*62af7615SShengzhou Liu   switch command by I2C.
175*62af7615SShengzhou Liu3. Send reset command.
176*62af7615SShengzhou Liu   After reset, the new POR setting will be implemented.
177*62af7615SShengzhou Liu
178*62af7615SShengzhou LiuTwo examples are given in below:
179*62af7615SShengzhou LiuSwitch from NOR to NAND boot with default frequency:
180*62af7615SShengzhou Liu	=> i2c dev 0
181*62af7615SShengzhou Liu	=> i2c mw 18 1 f9
182*62af7615SShengzhou Liu	=> i2c mw 18 3 f0
183*62af7615SShengzhou Liu	=> mw.b ffb00011 0
184*62af7615SShengzhou Liu	=> mw.b ffb00017 1
185*62af7615SShengzhou Liu	=> reset
186*62af7615SShengzhou LiuSwitch from NAND to NOR boot with Core/CCB/DDR (800/400/667 MHz):
187*62af7615SShengzhou Liu	=> i2c dev 0
188*62af7615SShengzhou Liu	=> i2c mw 18 1 f1
189*62af7615SShengzhou Liu	=> i2c mw 18 3 f0
190*62af7615SShengzhou Liu	=> mw.b ffb00011 0
191*62af7615SShengzhou Liu	=> mw.b ffb00014 2
192*62af7615SShengzhou Liu	=> mw.b ffb00015 5
193*62af7615SShengzhou Liu	=> mw.b ffb00016 3
194*62af7615SShengzhou Liu	=> mw.b ffb00017 f
195*62af7615SShengzhou Liu	=> reset
196*62af7615SShengzhou Liu
197*62af7615SShengzhou Liu
198*62af7615SShengzhou LiuBoot Linux from network using TFTP on P1010RDB
199*62af7615SShengzhou Liu==============================================
200*62af7615SShengzhou LiuPlace uImage, p1010rdb.dtb and rootfs files in the TFTP disk area.
201*62af7615SShengzhou Liu	=> tftp 1000000 uImage
202*62af7615SShengzhou Liu	=> tftp 2000000 p1010rdb.dtb
203*62af7615SShengzhou Liu	=> tftp 3000000 rootfs.ext2.gz.uboot.p1010rdb
204*62af7615SShengzhou Liu	=> bootm 1000000 3000000 2000000
205*62af7615SShengzhou Liu
206*62af7615SShengzhou Liu
207*62af7615SShengzhou LiuFor more details, please refer to P1010RDB User Guide and access website
208*62af7615SShengzhou Liuwww.freescale.com
209