From mboxrd@z Thu Jan 1 00:00:00 1970 From: Grant Edwards To: Gary Thomas Cc: ecos , Jonathan Larmour Subject: Re: [ECOS] Ethernet and Serial drivers for Linux target? Date: Thu, 11 Nov 1999 09:39:00 -0000 Message-id: <19991111113938.A29982@visi.com> References: <19991111112313.A28718@visi.com> X-SW-Source: 1999-11/msg00042.html On Thu, Nov 11, 1999 at 10:31:57AM -0700, Gary Thomas wrote: [regarding writing eCos serial/ethernet drivers for Linux target] > >> > Has anybody done this? I assume that all you have to do is to map > >> > cyg_io_read() and cyg_io_write() into read() and write() calls, and > >> > map cyg_io_get_config() and cyg_io_set_config() into appropriate > >> > ioctl() calls? > >> > >> One other issue that no-one else has mentioned is that you can't make calls > >> to the system read() and write(), ioctl() etc. directly. To do that would > >> involve linking with glibc, and that would simply not work. > > > > I presume I could grab the source for Linux glibc read() write() and > > ioctl(), strip out the stuff I don't need, and impliment my own > > eCos-friendly versions of those calls... > > There is a very simple mapping of functions onto the actual system calls. > Beware of the glibc code though, it's full of macros that do all of this work :-) Oh goody. Macros are the most obsfucating things in most of the C code I've ever worked on (though darned useful, they can easily get out of control). In my "spare time" I'll start looking at Linux system calls and glibc source code. > IMHO you should definitely stay away from touching the hardware. > Let Linux do it for you. Agreed. I'd like to be able to use several different types of serial boards on the Linux target, and I really don't want to have to write a new driver for each one. The ARM target will be limited to just one or two different types of UARTS. -- Grant Edwards Principal Engineer Comtrol Corporation