[U-Boot] [PATCH 1/2 V3] IOMUX: Add console multiplexing support.

Gary Jennejohn garyj at denx.de
Thu Nov 6 18:06:51 CET 2008


On Thu, 6 Nov 2008 15:30:38 +0100
Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com> wrote:

> On 15:04 Thu 06 Nov     , Gary Jennejohn wrote:
> > 
> > Modifications to support console multiplexing.  This is controlled using
> > CONFIG_SYS_CONSOLE_MUX in the board configuration file.
> > 
> > This allows a user to specify multiple console devices in the environment
> > with a command like this: setenv stdin serial,nc.  As a result, the user can
> > enter text on both the serial and netconsole interfaces.
> > 
> > All devices - stdin, stdout and stderr - can be set in this manner.
> > 
> > 1) common/iomux.c and include/iomux.h contain the environment setting
> > implementation.
> > 2) doc/README.iomux contains a somewhat more detailed description.
> > 3) The implementation in (1) is called from common/cmd_nvedit.c to
> > handle setenv and from common/console.c to handle initialization of
> > input/output devices at boot time.
> > 4) common/console.c also contains the code needed to poll multiple console
> > devices for input and send output to all devices registered for output.
> > 5) include/common.h includes iomux.h and common/Makefile generates iomux.o
> > when CONFIG_SYS_CONSOLE_MUX is set.
> > 
> > Signed-off-by: Gary Jennejohn <garyj at denx.de>
> > ---
> > 
> > V3
> >  - handle comments from the ML
> >  - iomux_doenv() now removes repeated device entries
> > 
> >  common/Makefile     |    1 +
> >  common/cmd_nvedit.c |    6 ++
> >  common/console.c    |  156 +++++++++++++++++++++++++++++++++++++++++++++-
> >  common/iomux.c      |  175 +++++++++++++++++++++++++++++++++++++++++++++++++++
> >  doc/README.iomux    |  106 +++++++++++++++++++++++++++++++
> >  include/common.h    |    7 ++
> >  include/iomux.h     |   48 ++++++++++++++
> >  7 files changed, 498 insertions(+), 1 deletions(-)
> >  create mode 100644 common/iomux.c
> >  create mode 100644 doc/README.iomux
> >  create mode 100644 include/iomux.h
> 
> you steel do not use list_head.
> 
> You agree about the idea.
> 
> is there any special reason?
> 

There are actually two
a) I *did* look at using list_head, but I couldn't wrap my head around
it in a reasonable length of time and it wasn't clear to me how to
implement the functionality I wanted
b) It was much easier for me to modify the code to what I needed using
realloc since it was already using an array

---
Gary Jennejohn
*********************************************************************
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
*********************************************************************


More information about the U-Boot mailing list