
Attached the CHANGELOG entry for a larger patch that overhauls the ML300 support in U-Boot. The patch is needed as a bug fix for several items around IIC, System ACE CF, and Ethernet MAC that did not work or did not work properly. It is also a preparatory and required patch for additional patches that I plan to submit shortly to add support for more Xilinx boards around Virtex-II Pro and Virtex-4 FX FPGAs. All modifications in this patch affect the board/xilinx sub-directory and include/configs/ml300.h only.
The patch itself is too large to submit to the list (70k). It can be found at ftp://customer:xilinx@ftp.xilinx.com/upload/ml300.2005-09-27.patch.txt.gz This area is cleaned out on a regular basis. If the patch should no longer be available from this area send me an email and I will upload it again.
The patch applies cleanly against the current CVS tree. It also does not generate any warnings during compilation and passes the "MAKEALL ppc" test (there are errors, e.g. cpci5200, but I cannot see how they could be caused by this patch).
While most parts adhere to the coding style there are some pieces in the patch that do not comply 100%. These pieces are mostly in comments or in include files. I tried to clean this up over the past few days but constantly broke something more important (i.e. code and compilation). I hope this patch can be applied to the CVS tree as is. If so, I plan to submit one or multiple follow-up patches that will fix coding style issues.
After the patch is applied, board/xilinx/ml300/sw_services with all its files and sub-directories should be removed from the CVS tree. This directory has been moved up to board/xilinx/sw_services as it is not specific to the ML300 board and will be reused for other Xilinx boards.
Attached is a second small patch (cm.patch) with changes to the MAINTAINERS and CREDITS file. I hope that's okay.
- Peter
* Overhaul, fix and clean up board support for the Xilinx ML300 board. Fix IIC. IIC support did not work properly. This patch fixes the issues. Fix Environment. The environment is now by default stored in the IIC EEPROM on the board if the hardware has IIC support. If not the default environment is used (CFG_ENV_IS_NOWHERE). Remove support for board and U-Boot environment. In the original (non-working) IIC code the attempt was made to keep the board environment from production testing and the U-Boot environment in sync. This support is removed as it did not work and caused confusion. U-Boot has now only access to the U-Boot environment while the environment from production test is left alone. Fix Ethernet. The Ethernet MAC address is now read from the environment. If no EMAC address is present in the environment a default address is programmed into the environment and used by the hardware. Move sw_services away from board/xilinx/ml300 into board/xilinx. This sub-directory is not specific to a board but to the vendor. Update drivers for the Xilinx IIC and EMAC devices with additional inline documentation and bug fixes. Fix compile time problems. If the FPGA hardware was a subset of what U-Boot supports U-Boot would not compile properly. This patch fixes the issues. Patch by Peter Ryser, 28 Sep 2005
--- u-boot.orig/CREDITS 2005-09-23 07:35:27.000000000 -0700 +++ u-boot/CREDITS 2005-09-28 01:42:53.000000000 -0700 @@ -354,6 +354,11 @@ N: Neil Russell E: caret@c-side.com D: Author of LiMon-1.4.2, which contributed some ideas
+N: Peter Ryser +E: peter.ryser@xilinx.com +D: Support for the Xilinx ML300 board based on PPC405 in Virtex-II Pro FPGA +W: http://www.xilinx.com + N: Travis B. Sawyer E: travis.sawyer@sandburst.com D: Support for AMCC PPC440GX, XES XPedite1000 440GX PrPMC board. AMCC 440gx Ref Platform (Ocotea) --- u-boot.orig/MAINTAINERS 2005-09-22 23:46:23.000000000 -0700 +++ u-boot/MAINTAINERS 2005-09-28 01:38:06.000000000 -0700 @@ -276,6 +276,10 @@ Stefan Roese sr@denx.de yellowstone PPC440GR yosemite PPC440EP
+Peter Ryser peter.ryser@xilinx.com + + ml300 PPC405 + Yusdi Santoso yusdi_santoso@adaptec.com
HIDDEN_DRAGON MPC8241/MPC8245