From e2d795597310f976af211f9bac2466dbf89b50c8 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 9 Apr 1997 14:05:50 +0000 Subject: Added ka9q tcpip stack and network driver for the gen68360. This effort was done based on the 3.6.0 release and had to be autoconf'ed locally. It is turned on is the bsp enables it and it is not explicitly disabled via the configure option --disable-tcpip. As many warnings as possible were removed locally after the code was merged. Only the gen68360 and mvme136 bsps were compiled this way. The ka9q port and network driver were submitted by Eric Norum (eric@skatter.USask.Ca). The network demo programs are not included in the tree at this point. --- cpukit/libcsupport/include/rtems/libio.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'cpukit/libcsupport/include') diff --git a/cpukit/libcsupport/include/rtems/libio.h b/cpukit/libcsupport/include/rtems/libio.h index b518100484..c79dfc2e33 100644 --- a/cpukit/libcsupport/include/rtems/libio.h +++ b/cpukit/libcsupport/include/rtems/libio.h @@ -99,4 +99,26 @@ int __rtems_lseek(int fd, rtems_libio_offset_t offset, int whence); int __rtems_fstat(int _fd, struct stat* _sbuf); int __rtems_isatty(int _fd); +/* + * External I/O handlers + */ +typedef struct { + int (*open)(const char *pathname, unsigned32 flag, unsigned32 mode); + int (*close)(int fd); + int (*read)(int fd, void *buffer, unsigned32 count); + int (*write)(int fd, const void *buffer, unsigned32 count); + int (*ioctl)(int fd, unsigned32 command, void *buffer); + int (*lseek)(int fd, rtems_libio_offset_t offset, int whence); +} rtems_libio_handler_t; + +void rtems_register_libio_handler(int handler_flag, + const rtems_libio_handler_t *handler); + +#define RTEMS_FILE_DESCRIPTOR_TYPE_FILE 0x0000 +#define RTEMS_FILE_DESCRIPTOR_TYPE_SOCKET 0x1000 +#define rtems_make_file_descriptor(fd,flags) ((fd)|(flags)) +#define rtems_file_descriptor_base(fd) ((fd) & 0x0FFF) +#define rtems_file_descriptor_type(fd) ((fd) & 0xF000) +#define rtems_file_descriptor_type_index(fd) ((((fd) & 0xF000) >> 12) - 1) + #endif /* _RTEMS_LIBIO_H */ -- cgit v1.2.3