* 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