101 lines
3.2 KiB
Plaintext
101 lines
3.2 KiB
Plaintext
|
Overview
|
||
|
=========
|
||
|
C29XPCIE board is a series of Freescale PCIe add-in cards to perform
|
||
|
as public key crypto accelerator or secure key management module.
|
||
|
It includes C293PCIE board, C293PCIE board and C291PCIE board.
|
||
|
The Freescale C29x family is a high performance crypto co-processor.
|
||
|
It combines a single e500v2 core with necessary SEC engines.
|
||
|
(maximum core frequency 1000/1200 MHz).
|
||
|
|
||
|
The C29xPCIE board features are as follows:
|
||
|
Memory subsystem:
|
||
|
- 512Mbyte unbuffered DDR3 SDRAM discrete devices (32-bit bus)
|
||
|
- 64 Mbyte NOR flash single-chip memory
|
||
|
- 4 Gbyte NAND flash memory
|
||
|
- 1 Mbit AT24C1024 I2C EEPROM
|
||
|
- 16 Mbyte SPI memory
|
||
|
|
||
|
Interfaces:
|
||
|
- 10/100/1000 BaseT Ethernet ports:
|
||
|
- eTSEC1, RGMII: one 10/100/1000 port
|
||
|
- eTSEC2, RGMII: one 10/100/1000 port
|
||
|
- DUART interface:
|
||
|
- DUART interface: supports two UARTs up to 115200 bps for
|
||
|
console display
|
||
|
|
||
|
Board connectors:
|
||
|
- Mini-ITX power supply connector
|
||
|
- JTAG/COP for debugging
|
||
|
|
||
|
Physical Memory Map on C29xPCIE
|
||
|
===============================
|
||
|
Address Start Address End Memory type
|
||
|
0x0_0000_0000 - 0x0_1fff_ffff 512MB DDR
|
||
|
0xc_0000_0000 - 0xc_8fff_ffff 256MB PCIE memory
|
||
|
0xf_ec00_0000 - 0xf_efff_ffff 64MB NOR flash
|
||
|
0xf_ffb0_0000 - 0xf_ffb7_ffff 512KB SRAM
|
||
|
0xf_ffc0_0000 - 0xf_ffc0_ffff 64KB PCIE IO
|
||
|
0xf_ffdf_0000 - 0xf_ffdf_0fff 4KB CPLD
|
||
|
0xf_ffe0_0000 - 0xf_ffef_ffff 1MB CCSR
|
||
|
|
||
|
Serial Port Configuration on C29xPCIE
|
||
|
=====================================
|
||
|
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
|
||
|
======================
|
||
|
SW5[1:4]= 1111 and SW5[6]=0 for boot from 16bit NOR flash
|
||
|
SW5[1:4]= 0110 and SW5[6]=0 for boot from SPI flash
|
||
|
Note: 1 stands for 'off', 0 stands for 'on'
|
||
|
|
||
|
Build and program U-Boot to NOR flash
|
||
|
==================================
|
||
|
1. Build u-boot.bin image example:
|
||
|
export ARCH=powerpc
|
||
|
export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
|
||
|
make C293PCIE
|
||
|
|
||
|
2. Program u-boot.bin into NOR flash
|
||
|
=> tftp $loadaddr $uboot
|
||
|
=> protect off eff40000 +$filesize
|
||
|
=> erase eff40000 +$filesize
|
||
|
=> cp.b $loadaddr eff40000 $filesize
|
||
|
|
||
|
3. Check SW5[1:4]= 1111 and SW5[6]=0, then power on.
|
||
|
|
||
|
Alternate NOR bank
|
||
|
==================
|
||
|
There are four banks in C29XPCIE board, example to change bank booting:
|
||
|
1. Program u-boot.bin into alternate NOR bank
|
||
|
=> tftp $loadaddr $uboot
|
||
|
=> protect off e9f40000 +$filesize
|
||
|
=> erase e9f40000 +$filesize
|
||
|
=> cp.b $loadaddr e9f40000 $filesize
|
||
|
|
||
|
2. Switch to alternate NOR bank
|
||
|
=> cpld_cmd reset altbank [bank]
|
||
|
- [bank] bank value select 1-4
|
||
|
- bank 1 on the flash 0x0000000~0x0ffffff
|
||
|
- bank 2 on the flash 0x1000000~0x1ffffff
|
||
|
- bank 3 on the flash 0x2000000~0x2ffffff
|
||
|
- bank 4 on the flash 0x3000000~0x3ffffff
|
||
|
or set SW5[7]= ON/OFF and SW5[7]= ON/OFF, then power on again.
|
||
|
|
||
|
Build and program U-Boot to SPI flash
|
||
|
==================================
|
||
|
1. Build u-boot-spi.bin image
|
||
|
make C29xPCIE_SPIFLASH_config; make
|
||
|
Need the boot_format tool to generate u-boot-spi.bin from the u-boot.bin.
|
||
|
|
||
|
2. Program u-boot-spi.bin into SPI flash
|
||
|
=> tftp $loadaddr $uboot-spi
|
||
|
=> sf erase 0 100000
|
||
|
=> sf write $loadaddr 0 $filesize
|
||
|
|
||
|
3. Check SW5[1:4]= 0110 and SW5[6]=0, then power on.
|