mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-24 20:13:39 +00:00
8bde7f776c
- remove trailing white space, trailing empty lines, C++ comments, etc. - split cmd_boot.c (separate cmd_bdinfo.c and cmd_load.c) * Patches by Kenneth Johansson, 25 Jun 2003: - major rework of command structure (work done mostly by Michal Cendrowski and Joakim Kristiansen)
146 lines
5.2 KiB
Text
146 lines
5.2 KiB
Text
This directory contains board specific code for a generic MPC860T based
|
|
embedded computer, called 'GEN860T'. The design is generic in the sense that
|
|
common, readily available components are used and that the architecture of the
|
|
system is relatively straightforward:
|
|
|
|
One eight bit wide boot (FLASH) memory
|
|
32 bit main memory using SDRAM
|
|
DOC 2000+
|
|
Ethernet PHY
|
|
Some I2C peripheral devices: Atmel AT24C256 EEPROM, Maxim DS1337 RTC.
|
|
Some other miscellaneous peripherals
|
|
|
|
NOTE: There are references to a XIlinx FPGA and Mil-Std 1553 databus in this
|
|
port. I guess the computer is not as generic as I first said 8) However,
|
|
these extras can be safely ignored.
|
|
|
|
Given the GEN860T files, it should be pretty easy to reverse engineer the
|
|
hardware configuration, if that's useful to you. Hopefully, this code will
|
|
be useful to someone as a basis for a port to a new system or as a head start
|
|
on a custom design. If you end up using any of this, I would appreciate
|
|
hearing from you, especially if you discover bugs or find ways to improve the
|
|
quality of this U-Boot port.
|
|
|
|
Here are the salient features of the system:
|
|
Clock : 33.3 Mhz oscillator
|
|
Processor core frequency : 66.6 Mhz if in 1:2:1 mode; can also run 1:1
|
|
Bus frequency : 33.3 Mhz
|
|
|
|
Main memory:
|
|
Type : SDRAM
|
|
Width : 32 bits
|
|
Size : 64 mibibytes
|
|
Chip : Two Micron MT48LC16M16A2TG-7E
|
|
CS : MPC860T CS1*/UPMA
|
|
UPMA CONNECTIONS:
|
|
SDRAM A10 : GPLA0*
|
|
SDRAM CAS* : GPLA2*
|
|
SDRAM WE* : GPLA3*
|
|
SDRAM RAS* : GPLA4*
|
|
|
|
Boot memory:
|
|
Type : FLASH
|
|
Width : 8 bits
|
|
Size : 16 mibibytes
|
|
Chip : One Intel 28F128J3A (StrataFlash)
|
|
CS : MPC860T CS0*/GPCM (this is the "boot" chip select)
|
|
|
|
EEPROM memory:
|
|
Type : Serial I2C EEPROM
|
|
Width : 8 bits
|
|
Size : 32 kibibytes
|
|
Chip : One Atmel AT25C256
|
|
CS : 0x50 (external I2C address pins on device are tied to GND)
|
|
|
|
Filesystem memory:
|
|
Type : NAND FLASH (Toshiba)
|
|
Width : 8 bits (i.e. interface to DOC is 8 bits)
|
|
Size : 32 mibibytes
|
|
Chip : One DiskOnCHip Millenium Plus (DOC 2000+)
|
|
CS : MPC860T CS2*/GPCM
|
|
|
|
Network support:
|
|
MAC : MPC86OT FEC (Fast Ethernet Controller)
|
|
PHY : Intel LXT971A
|
|
MII Addr: 0x0 (hardwired on the board)
|
|
MII IRQ :
|
|
|
|
Console:
|
|
RS-232 on SMC1 (Maxim MAX3232 LVCMOS-RS232 level shifter)
|
|
|
|
Real Time Clock:
|
|
Type : Low power, I2C interface
|
|
Chip : Maxim DS1337
|
|
CS : Address 0x68 on I2C bus
|
|
|
|
The MPC860T's internal RTC has a defect in Mask rev D that increases
|
|
the current drain on the KAPWR line to 10 mA. Since this is an
|
|
unreasonable amount of current draw for a RTC, and Motorola does not
|
|
plan to fix this in future mask revisions, a serial (I2C) RTC that
|
|
works has been included instead. NOTE that the DS1337 can be
|
|
configured to output a 32768 Hz clock while the main power is on.
|
|
This clock output has been routed to the MPC860T's EXTAL pin to allow
|
|
the internal RTC to be used. NOTE also that due to yet another
|
|
defect in the rev D mask, the RTC does not operate reliably when the
|
|
internal RTC divisor is set to use a 32768 Hz reference. So just use
|
|
the I2C RTC.
|
|
|
|
Miscellaneous:
|
|
Xilinx Virtex FPGA on CS3*/GPCM.
|
|
Virtex FPGA slave SelectMap interface on cs4*/UPMB.
|
|
Mil-Std 1553 databus interface on CS5*/GPCM.
|
|
Audio sounder (beeper) with digital volume control connected to SPKROUT.
|
|
|
|
SC variant:
|
|
A reduced-feature version of the GEN860T port is also supported: GEN860T_SC.
|
|
The 'SC' variant only provides support for the Virtex FPGA, SDRAM main
|
|
memory, EEPROM and flash memory. The system clock frequency is reduced
|
|
to 24 MHz.
|
|
|
|
Issues:
|
|
The DOC 2000+ returns 0x40 as its device ID when probed using the method
|
|
desxribed in the DOC datasheet. Unfortunately, the U-Boot DOC driver
|
|
does not recognize this device. As of this writing, it seems that MTD
|
|
does not support the DOC 2000+ either.
|
|
|
|
Status:
|
|
Everything appears to work except DOC support. As of this writing,
|
|
David Woodhouse has stated on the MTD mailing list that he has no
|
|
knowledge of the DOC Millineum Plus and therfore there is no support
|
|
in MTD for this device. I wish I had known this sooner :(
|
|
|
|
The GEN860T board specific files and configuration is based on the work
|
|
of others who have contributed to U-Boot. The copyright and license notices
|
|
of these authors have been retained wherever their code has been reused.
|
|
All new code to support the GEN860T board is:
|
|
|
|
(C) Copyright 2001-2003
|
|
Keith Outwater (keith_outwater@mvis.com)
|
|
|
|
and the following license applies:
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License as
|
|
published by the Free Software Foundation; either version 2 of
|
|
the License, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
MA 02111-1307 USA
|
|
|
|
Thanks to Wolfgang Denk for a great software package and to everyone
|
|
who contributed to its development.
|
|
|
|
Keith Outwater
|
|
Sr. Staff Engineer
|
|
Microvision, Inc.
|
|
<keith_outwater@mvis.com>
|
|
<outwater@eskimo.com>
|
|
|
|
vim: set ts=4 sw=4 tw=78:
|