This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Getting closer ...
- From: Chuck McManis <ecos at mcmanis dot com>
- To: ECOS Discussion Group <ecos-discuss at sources dot redhat dot com>
- Date: Sat, 02 Aug 2003 14:49:30 -0700
- Subject: [ECOS] Getting closer ...
Its definitely getting closer, kind of.
So I'm trying to get to "hello world" via redboot. I've got the book, the
CD, the latest and greatest on my FreeBSD server and the book version on my
laptop. My "target" is an ASUS P2B motherboard with IntelEtherExpress Pro
10/100 card installed.
The goal for today, get to the point where redboot comes up and recognizes
the ethernet card. Extra credit is loading hello world from over the
network and attaching GDB to it.
Now this is where we stand so far:
1) Creating a "redboot" config on windows gave me
a redboot.bin that boots but does not see the NIC.
2) Using the redboot.bin that is on the CD doesn't
give any output to the PC screen but does generate
continuous "junk" to the COM1 port.
3) Using FreeBSD I did
ecosconfig new pc redboot
ecosconfig add CYGPKG_ETH_I386_DRIVER
Which gave me this config :
-------snip
cdl_configuration eCos {
description "" ;
# These fields should not be modified.
hardware pc ;
template redboot ;
package -hardware CYGPKG_HAL_I386 v2_0 ;
package -hardware CYGPKG_HAL_I386_GENERIC v2_0 ;
package -hardware CYGPKG_HAL_I386_PC v2_0 ;
package -hardware CYGPKG_HAL_I386_PCMB v2_0 ;
package -hardware CYGPKG_IO_PCI v2_0 ;
package -hardware CYGPKG_IO_SERIAL_GENERIC_16X5X v2_0 ;
package -hardware CYGPKG_IO_SERIAL_I386_PC v2_0 ;
package -hardware CYGPKG_DEVS_ETH_INTEL_I82559 v2_0 ;
package -hardware CYGPKG_DEVS_ETH_I386_PC_I82559 v2_0 ;
package -hardware CYGPKG_DEVICES_WALLCLOCK_DALLAS_DS12887 v2_0 ;
package -hardware CYGPKG_DEVICES_WALLCLOCK_I386_PC v2_0 ;
package -template CYGPKG_HAL v2_0 ;
package -template CYGPKG_INFRA v2_0 ;
package -template CYGPKG_REDBOOT v2_0 ;
package -template CYGPKG_ISOINFRA v2_0 ;
package -template CYGPKG_LIBC_STRING v2_0 ;
package -template CYGPKG_NS_DNS v2_0 ;
package -template CYGPKG_CRC v2_0 ;
package CYGPKG_IO_ETH_DRIVERS v2_0 ;
};
# ---- conflicts -------------------------------------------------------
# There are no conflicts.
---- snip
And the only change I made to it manually was to set
the 'user' value in the baud rates to 9600 since my
terminal server tops out at that rate.
This builds and gives me redboot.elf (which I objcopy
into redboot.bin) but when I try to boot it, I don't
get anything (no dots, nada, zip) on the screen or
either COM port of the target PC.
Now the differences I've noted so far are that the example redboot config
has "Floppy" as its startup whereas mine got "RAM" as its default. I've not
figured out how to change that using ecosconfig(1) I'm guessing I need to
create a new target perhaps?
Questions: There should be something like three steps to creating a
redboot.bin file which I've yet to comprehend. Something like:
ecosconfig new pc redboot
ecosconfig add <some packages>
ecosconfig tree
gmake
i386-elf-objcopy -O binary install/bin/redboot.elf redboot.bin
dd(1) out the image and then reboot right? Remember I don't have configtool
on FreeBSD 'cuz it won't build. Thoughts?
--Chuck
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss