Introduction --------------------- This README file provides guideliness to compile successfully the Etherboot for Hyperstone. This directory (src/arch/e1) contains the files that depend on Hyperstone's architecture. The header files that include the configuration of the system are based on Hyperstone's E132-XS development board. The can be very easily modified to support anyother configuration environment. Software Perquisites: --------------------- The build environment requires a C compiler for the E1-32XS processor. Normally you can simply install a cross-compiling tool chain based on the GNU tools (that is binutils and gcc). If you are running a Linux system on a x86 CPU then you can just download the toolchain as a binary from Hyperstone's official web-site. The binary distribution will untar the tools in the /usr/local/e1-coff directory. On any other system you will need to build the tool chain from the sources. To compile successfully the following tools should be available: - GNU toolchain: - GCC ver 2.95.2 20030110 (release) e1-coff-gcc -v - LD ver 2.12.90 20020726 e1-coff-ld -V Hardware Perquisites: --------------------- The etherboot has been successfully tested in the E1-32XS development board. A second serial device is initialized to act as a console. The standard messages are redirected to the console. Nevertheless, if one wants not to use the serial console he may omit the corresponding switches from the Config file located under "src/arch/e1/" directory. On the E1-32XS board that was used, a daughter-board was employed to connect a second HyIce to the development board. Since the HyIce embeds a standard 16550 device, the Etherboot's standard device driver is used. The position of the jumpers of the development board in order to initialize both the second HyIce and the Ethernet device is depicted in the following table: Jumper: Position ------:-------------- J3 1-2 (default) J4 1-2 (default) J13 5-6 J5 1-2 (default) J6 1-2 & 3-4 J7 3-4 J9 1-2 (default) J10 1-2 J11 3-4 Compilation --------------------- In order to compile Etherboot for Hyperstone, the following steps should be followed: 1) Edit the main Makefile (located under "src" directory") and comment-out the ARCH variable (by putting a "#" in front of it). Append the following line: ARCH:=e1 2) Edit the Config file (the one located under "src" directory) and make sure that the CFLAGS variable will contain *only* the following swithces: CFLAGS+= -DCONFIG_ISA CFLAGS+= -DBOOT_FIRST=BOOT_NIC CFLAGS+= -DALLOW_ONLY_ENCAPSULATED CFLAGS+= -DBACKOFF_LIMIT=7 -DCONGESTED CFLAGS+= -DCOFF_IMAGE CFLAGS+= -DDOWNLOAD_PROTO_TFTP Please note that extra or any other switches may cause failure of compilation! 3) type "make hyperstone" or "make coff" 4) the generated file will be located under the "src/bin" directory and will be called : "etherboot.coff". Now you may download it with usual way using e1-coff-gdb .. Have Fun Yannis Mitsos, George Thanos {gmitsos,gthanos}@telecom.ntua.gr