State of 16550 driver in libchip
jennifer averett
jennifer.averett at oarcorp.com
Tue Apr 3 18:45:23 UTC 2001
I receantly used the 16550 driver. I started using it in polled and by the end of
the project was using it in interrrupt mode. I fixed several small bugs and submitted
the changes. Attached are all source files from the console directory that I used and
the ns16550 uart source that I was using. ns16550.c, ns16550.h and ns16550_p.h are
from libchip and the remainder were in my console directory.
The modifications I made should be in the latest release, but I haven't verified this.
Jennifer
peter.o.mueller at gmx.de wrote:
> We have a 16552 chip on our board. I saw an 16550 driver in the libchip
> directory. Can anyone tell me the state of this driver. The readme mentioned that
> poll should work, but irq operation was not really tested. The
> rtems_termios_callbacks struct is not the one used in e.g. gen68360, so I assume the
> driver was not in use for some time.
>
> What is the reference bsp for hooking serial drivers into rtems (gen68360)?
> At the moment we do it like this:
>
> rtems_io_register_name("/dev/ttyS1", major, 0);
> rtems_io_register_name("/dev/ttyS2", major, 1);
> rtems_termios_open(major, 0, 0 /* arg */ &opllCallbacks);
> rtems_termios_open(major, 1, 0 /* arg */ &opllCallbacks);
>
> Is this the proposed way?
>
> Is there a list what major numbers are currently in use?
>
> Peter
>
> --
> GMX - Die Kommunikationsplattform im Internet.
> http://www.gmx.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ns16550.h
Type: application/x-unknown-content-type-hfile
Size: 977 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0007.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ns16550_p.h
Type: application/x-unknown-content-type-hfile
Size: 5399 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0008.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ns16550.c
Type: application/x-unknown-content-type-cfile
Size: 16635 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0009.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ns16550cfg.h
Type: application/x-unknown-content-type-hfile
Size: 764 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0010.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: debugio.c
Type: application/x-unknown-content-type-cfile
Size: 921 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0011.bin>
-------------- next part --------------
##
## $Id: Makefile.am,v 1.3 2000/03/15 20:51:29 uid500 Exp $
##
AUTOMAKE_OPTIONS = foreign 1.4
PGM = $(ARCH)/console.rel
VPATH = @srcdir@:@srcdir@/../../../shared
C_FILES = console.c consolereserveresources.c config.c debugio.c \
ns16550cfg.c printk.c
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
OBJS = $(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
include $(top_srcdir)/../../../../../../automake/lib.am
#
# (OPTIONAL) Add local stuff here using +=
#
$(PGM): $(OBJS)
$(make-rel)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
all-local: $(ARCH) $(OBJS) $(PGM)
.PRECIOUS: $(PGM)
EXTRA_DIST = console.c consolereserveresources.c debugputs.c
include $(top_srcdir)/../../../../../../automake/local.am
-------------- next part --------------
# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_alias = @build_alias@
build_triplet = @build@
host_alias = @host_alias@
host_triplet = @host@
target_alias = @target_alias@
target_triplet = @target@
CC = @CC@
CC_FOR_TARGET = @CC_FOR_TARGET@
CPP = @CPP@
GCCSED = @GCCSED@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
PACKAGE = @PACKAGE@
PACKHEX = @PACKHEX@
PROJECT_INCLUDE = @PROJECT_INCLUDE@
PROJECT_RELEASE = @PROJECT_RELEASE@
PROJECT_ROOT = @PROJECT_ROOT@
RTEMS_BSP = @RTEMS_BSP@
RTEMS_BSP_FAMILY = @RTEMS_BSP_FAMILY@
RTEMS_CPU = @RTEMS_CPU@
RTEMS_CPU_MODEL = @RTEMS_CPU_MODEL@
RTEMS_HOST = @RTEMS_HOST@
RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@
RTEMS_ROOT = @RTEMS_ROOT@
RTEMS_TOPdir = @RTEMS_TOPdir@
VERSION = @VERSION@
AUTOMAKE_OPTIONS = foreign 1.4
PGM = $(ARCH)/console.rel
VPATH = @srcdir@:@srcdir@/../../../shared
C_FILES = console.c consolereserveresources.c config.c debugio.c ns16550cfg.c printk.c
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.o)
OBJS = $(C_O_FILES)
TMPINSTALL_FILES = $(PROJECT_RELEASE)/lib
EXTRA_DIST = console.c consolereserveresources.c debugputs.c
mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../../../mkinstalldirs
CONFIG_CLEAN_FILES =
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/../../../../../../automake/lib.am $(top_srcdir)/../../../../../../automake/local.am
cd $(top_srcdir) && $(AUTOMAKE) --foreign console/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = console
distdir: $(DISTFILES)
here=`cd $(top_builddir) && pwd`; \
top_distdir=`cd $(top_distdir) && pwd`; \
distdir=`cd $(distdir) && pwd`; \
cd $(top_srcdir) \
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --foreign console/Makefile
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am: all-am
check: check-am
installcheck-am:
installcheck: installcheck-am
install-exec-am:
install-exec: install-exec-am
install-data-am:
install-data: install-data-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am:
uninstall: uninstall-am
all-am: Makefile all-local
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
maintainer-clean-generic:
mostlyclean-am: mostlyclean-generic
mostlyclean: mostlyclean-am
clean-am: clean-generic mostlyclean-am
clean: clean-am
distclean-am: distclean-generic clean-am
distclean: distclean-am
maintainer-clean-am: maintainer-clean-generic distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-am
.PHONY: tags distdir info-am info dvi-am dvi check check-am \
installcheck-am installcheck install-exec-am install-exec \
install-data-am install-data install-am install uninstall-am uninstall \
all-local all-redirect all-am all installdirs mostlyclean-generic \
distclean-generic clean-generic maintainer-clean-generic clean \
mostlyclean distclean maintainer-clean
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
include $(RTEMS_ROOT)/make/leaf.cfg
define make-library
$(RM) $@
$(AR) $(ARFLAGS) $@ $^
$(RANLIB) $@
endef
$(PROJECT_RELEASE)/lib:
@$(mkinstalldirs) $@
.PRECIOUS: $(LIB)
#
# (OPTIONAL) Add local stuff here using +=
#
$(PGM): $(OBJS)
$(make-rel)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
all-local: $(ARCH) $(OBJS) $(PGM)
.PRECIOUS: $(PGM)
debug-am:
debug: debug-am
.PHONY: debug debug-am
profile-am:
profile: profile-am
.PHONY: profile profile-am
preinstall-am: $(PREINSTALL_FILES)
preinstall: preinstall-am
.PHONY: preinstall preinstall-am
depend-am:
depend: depend-am
.PHONY: depend depend-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ns16550cfg.c
Type: application/x-unknown-content-type-cfile
Size: 884 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0012.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: config.c
Type: application/x-unknown-content-type-cfile
Size: 5572 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20010403/5c7676aa/attachment-0013.bin>
More information about the users
mailing list