Subject: Question concerning the serial console

From: Jeff Harrell <[email-masked]>
Date: Mon, 17 Sep 2001 14:47:31 -0600

I have recently ported 2.4.2 version of the Linux kernel to a
development 
board that I am working on.  I have built a HHL2.0 version of the
filesystem 
for userland apps.  I am getting output on the serial console but when I
get 
to a login prompt it is not handling any keyboard input.   I have
included my 
/dev/console node, inittab and a snippet from the xxx_setup.c for the
board 
that I am running.  I thought this was all that was required.  Any help
in this 
area would be greatly appreciated. 

Jeff 

------------------------------------------------ 

/dev/console 
crw-r--r--    1 root     tty        5,   1 Sep 17 12:47 console 

---------8<------ /etc/initab --------8<------------- 
# /etc/inittab: init(8) configuration. 
# $Id: inittab,v 1.8 1998/05/10 10:37:50 miquels Exp $ 
  
# The default runlevel. 
id:2:initdefault: 
  
# Boot-time system configuration/initialization script. 
# This is run first except when booting in emergency (-b) mode. 
si::sysinit:/etc/init.d/rcS 
  
# What to do in single-user mode. 
~~:S:wait:/sbin/sulogin 
  
# /etc/init.d executes the S and K scripts upon change 
# of runlevel. 
# 
# Runlevel 0 is halt. 
# Runlevel 1 is single-user. 
# Runlevels 2-5 are multi-user. 
# Runlevel 6 is reboot. 
  
l0:0:wait:/etc/init.d/rc 0 
l1:1:wait:/etc/init.d/rc 1 
l2:2:wait:/etc/init.d/rc 2 
l3:3:wait:/etc/init.d/rc 3 
l4:4:wait:/etc/init.d/rc 4 
l5:5:wait:/etc/init.d/rc 5 
l6:6:wait:/etc/init.d/rc 6 
# Normally not reached, but fallthrough in case of emergency. 
z6:6:respawn:/sbin/sulogin 
  
# What to do when CTRL-ALT-DEL is pressed. 
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now 
  
# Action on special keypress (ALT-UpArrow). 
kb::kbrequest:/bin/echo "Keyboard Request--edit /etc/inittab to let this
work." 
  
# What to do when the power fails/returns. 
pf::powerwait:/etc/init.d/powerfail start 
pn::powerfailnow:/etc/init.d/powerfail now 
po::powerokwait:/etc/init.d/powerfail stop 
  
# This line provides a nice out-of-box experience.  For regular use, you

# should replace it with the proper getty lines below. 
  
con:2345:respawn:/sbin/getty console 
  
# /sbin/getty invocations for the runlevels. 
# 
# The "id" field MUST be the same as the last 
# characters of the device (after "tty"). 
# 
# Format: 
#  <id>:<runlevels>:<action>:<process> 
#1:2345:respawn:/sbin/getty 38400 tty1 
#2:23:respawn:/sbin/getty 38400 tty2 
#3:23:respawn:/sbin/getty 38400 tty3 
#4:23:respawn:/sbin/getty 38400 tty4 
#5:23:respawn:/sbin/getty 38400 tty5 
#6:23:respawn:/sbin/getty 38400 tty6 
  
# Example how to put a getty on a serial line (for a terminal) 
# 
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100 
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100 
  
# Example how to put a getty on a modem line. 
# 
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3 

------8<---------------8<--------------- 

snippet from my xxx_setup.c code.... 

#ifdef CONFIG_SERIAL_CONSOLE 
 argptr = prom_getcmdline(); 
 if ((argptr = strstr(argptr, "console=ttyS0")) == NULL) { 
  int i = 0; 
  char *s = prom_getenv("modetty0"); 
  while(s[i] >= '0' && s[i] <= '9') 
   i++; 
  strcpy(serial_console, "ttyS0,"); 
  strncpy(serial_console + 6, s, i); 
  prom_printf("Config serial console: %s\n", serial_console); 
                //  console_setup(serial_console, NULL); 
                console_setup(serial_console); 
 } 
#endif 

-- 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

\ Jeff Harrell  ([email-masked])               \

\ Telogy Networks                                   \

\ Broadband Access Group                            \

\                                                   \

\ Work: (301) 515-6537                              \

\ Fax:  (301) 515-6637                              \

\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~