mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-18 16:08:53 +09:00
![]() This patch changes the return type of initdram() from long int to phys_size_t. This is required for a couple of reasons: long int limits the amount of dram to 2GB, and u-boot in general is moving over to phys_size_t to represent the size of physical memory. phys_size_t is defined as an unsigned long on almost all current platforms. This patch *only* changes the return type of the initdram function (in include/common.h, as well as in each board's implementation of initdram). It does not actually modify the code inside the function on any of the platforms; platforms which wish to support more than 2GB of DRAM will need to modify their initdram() function code. Build tested with MAKEALL for ppc, arm, mips, mips-el. Booted on powerpc MPC8641HPCN. Signed-off-by: Becky Bruce <becky.bruce@freescale.com> |
||
---|---|---|
.. | ||
beeper.c | ||
beeper.h | ||
config.mk | ||
flash.c | ||
fpga.c | ||
fpga.h | ||
gen860t.c | ||
ioport.c | ||
ioport.h | ||
Makefile | ||
README | ||
u-boot-flashenv.lds | ||
u-boot.lds |
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>