2010-01-15 21:45:42 +08:00
|
|
|
|
|
|
|
SPEAr (Structured Processor Enhanced Architecture).
|
|
|
|
|
|
|
|
SPEAr600 is also known as SPEArPlus and SPEAr300 is also known as SPEArBasic
|
|
|
|
|
|
|
|
The SPEAr SoC family embeds a customizable logic that can be programmed
|
|
|
|
one-time by a customer at silicon mask level (i.e. not at runtime!).
|
|
|
|
|
2012-05-07 15:36:46 +08:00
|
|
|
U-Boot supports four SoCs: SPEAr600, SPEAr3xx
|
2010-01-15 21:45:42 +08:00
|
|
|
|
2012-05-07 15:36:46 +08:00
|
|
|
All 4 SoCs (SPEAr3xx and SPEAr600) share common peripherals. SPEAr300 and
|
|
|
|
SPEAr600 do not have EMI.
|
2010-01-15 21:45:42 +08:00
|
|
|
|
|
|
|
1. ARM926ejs core based (sp600 has two cores, the 2nd handled only in Linux)
|
|
|
|
2. FastEthernet (sp600 has Gbit version, but same controller - GMAC)
|
|
|
|
3. USB Host
|
|
|
|
4. USB Device
|
|
|
|
5. NAND controller (FSMC)
|
|
|
|
6. Serial NOR ctrl
|
|
|
|
7. I2C
|
|
|
|
8. SPI
|
|
|
|
9. CLCD
|
|
|
|
10. others ..
|
|
|
|
|
|
|
|
Everything is supported in Linux.
|
2012-05-07 15:36:46 +08:00
|
|
|
u-boot is currently not supporting all peripeharls (just a few as listed below).
|
2010-01-15 21:45:42 +08:00
|
|
|
1. USB Device
|
|
|
|
2. NAND controller (FSMC)
|
|
|
|
3. Serial Memory Interface
|
|
|
|
4. EMI (Parallel NOR interface)
|
|
|
|
4. I2C
|
|
|
|
5. UART
|
|
|
|
|
|
|
|
Build options
|
2012-05-07 15:36:46 +08:00
|
|
|
make spear320_config
|
|
|
|
spear320 build with environment variables placed at default
|
|
|
|
location i.e. Serial NOR device
|
|
|
|
make spear320_pnor_config
|
|
|
|
This option generates a uboot image that supports emi controller
|
|
|
|
for CFI compliant parallel NOR flash. Environment variables are
|
|
|
|
placed in Parallel NOR device
|
|
|
|
make spear320_nand_config
|
|
|
|
spear320 build with environment variables placed in NAND device
|
|
|
|
make spear320_usbtty_config
|
|
|
|
spear320 build with usbtty terminal as default and environment
|
|
|
|
placed at default location
|
|
|
|
make spear320_usbtty_pnor_config
|
|
|
|
spear320 build with usbtty terminal as default and environment
|
|
|
|
placed in pnor device
|
|
|
|
make spear320_usbtty_nand_config
|
|
|
|
Build with usbtty terminal as default and environment placed in
|
|
|
|
NAND device
|
2010-01-15 21:45:42 +08:00
|
|
|
make spear300_config
|
2012-05-07 15:36:46 +08:00
|
|
|
make spear300_nand_config
|
|
|
|
make spear300_usbtty_config
|
|
|
|
make spear300_usbtty_nand_config
|
2010-01-15 21:45:42 +08:00
|
|
|
make spear310_config
|
2012-05-07 15:36:46 +08:00
|
|
|
make spear310_pnor_config
|
|
|
|
make spear310_nand_config
|
|
|
|
make spear310_usbtty_config
|
|
|
|
make spear310_usbtty_pnor_config
|
|
|
|
make spear310_usbtty_nand_config
|
|
|
|
make spear600_config
|
|
|
|
make spear600_nand_config
|
|
|
|
make spear600_usbtty_config
|
|
|
|
make spear600_usbtty_nand_config
|
2012-05-07 15:36:41 +08:00
|
|
|
|
|
|
|
Mac id storage and retrieval in spear platforms
|
|
|
|
|
|
|
|
Please read doc/README.enetaddr for the implementation guidelines for mac id
|
|
|
|
usage. Basically, environment has precedence over board specific storage. The
|
|
|
|
ethaddr beeing used for the network interface is always taken only from
|
|
|
|
environment variables. Although, we can check the mac id programmed in i2c
|
|
|
|
memory by using chip_config command
|