This is the mail archive of the ecos-discuss@sourceware.cygnus.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

hal/i386/pc prerelease.



Hi, all--

Just wanted to let you all know that I've posted a *very early* but actually
functional version of a hal for running eCos on a standard '386 or better PC.
Here's a quick rundown:

1) How do I get it?
Try ftp://sourceware.cygnus.com/pub/ecos/contrib/hal/i386/i386-pc-0.1.tgz.

2) Um, you say *very early release*.  What exactly do you mean?
It means that there is a basic version of the GDB stub which boots from a 3.5"
floppy; after the stub is booted, then applications can be downloaded through
the target PC's COM1 port.  So far I have verified ISR and DSR support, basic
debugging capability (breakpoints work great) and multithreading.  I'm using
FreeBSD for my development environment; it is very likely that this port will
break the linux synthetic target, and this port is guranteed *not* to work
straight out of the box for people using W/NT for development.  Now that I
think about it, it's probably not even going to work under Linux without a tweek
or two.

3) Sounds like there's a lot missing.
Yep.  The GDB stub needs to be finished, which should be just adding in the
thread-awareness stuff;  and a lot of the test programs need to be ran.
Some brave soul is encouraged to step up and help the configuration so that
W/NT can be used for development.  Shoot--I even need someone to go back and
try this under Linux.  The system only boots from 3.5" disks, so that needs
to be fixed eventually, the ISR handler needs to be able to switch to an 
independent ISR stack (it currently uses whoever was running when the ISR was
invoked), serial port drivers need to be enabled, and, well, everything else
needs to be done.

A question for Cygnus: there was a lot of platform-specific initialization I had
to put in the file vectors.S--since the linker is told to put that module first.
Unfortunately vectors.S is stored in the 'arch' tree rather than the platform
tree.  Is there any plans to separate this?  I'd suggest doing a careful audit
of that file in order to split it into a platform specific part (for PCs
which boot from a floppy or other PC-type boards which boot out of ROM) and an
architecture part (for all 386's).  I think that the first file in the linker
script should be stored in the platform tree, not the arch tree.

Anyway, I've been working on this for the past couple of weeks, and now that I've
got the threading to work, I'm going to move over and start doing some actual
applications work...  which means that I'll be slowing down as far as completing
the port.  Anyone who cares to get involved is encouraged to tinker with this...
I'm sure that I'll be posting updates fairly frequently, so if you're at all
timid about dealing with the stuff that's missing here, just hang tight.
Post any questions or observations to ecos-discuss@sourceware.cygnus.com...
I'll try to answer any questions which come up there.

Cheers--and good luck!
-patrick

Patrick O'Grady
patrick@plasticgrape.com




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]