All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien BLACHE <jblache@debian.org>
To: linux-mips@linux-mips.org
Cc: debian-mips@lists.debian.org
Subject: [PATCH] IP22: fix serial console hangs
Date: Sun, 09 Jul 2006 15:51:26 +0200	[thread overview]
Message-ID: <87irm6naxt.fsf@frigate.technologeek.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 2011 bytes --]

Hi,

The patch below fixes serial console hangs as seen on IP22
machines. Typically, while booting, the machine hangs for ~1 minute
displaying "INIT: ", then the same thing happens again when init
enters in the designated runlevel and finally the getty process on
ttyS0 hangs indefinitely (though strace'ing it helps).

strace (-e raw=ioctl, otherwise the ioctl() translation is utterly
bogus) reveals that getty hangs on ioctl() 0x540f which happens to be
TCSETSW (I saw it hang on another console ioctl() but couldn't
reproduce that one).

A diff between ip22zilog and sunzilog revealed the following
differences:
 1. the channel A flag being set on up.port.flags instead of up.flags
 2. the channel A flag being set on what is marked as being channel B
 3. sunzilog has a call to uart_update_timeout(port, termios->c_cflag, baud);
    at the end of sunzilog_set_termios(), which ip22zilog lacks (on
    purpose ?)

The patch below addresses point 1 and fixes the serial console hangs
just fine. However point 2 should be investigated by someone familiar
with the IP22 Zilog; it's probably OK as is but even if it is, a
comment in ip22zilog.c is badly needed.

Point 3 is left as an exercise for whoever feels like digging into
ip22zilog :)

These are the main obvious differences between ip22zilog and
sunzilog. Newer versions of sunzilog (Linus's git tree as of today)
are more close to ip22zilog as the sbus_{write,read}b have been
changed into simple {write,read}b, which shrinks the diff by a fair
amount. Resyncing both drivers should be doable in a few hours time
now for someone familiar with the IP22 Zilog hardware.


Additional point: the IP22 thinks it's using the console on the
framebuffer when booting, when it's really using the serial console
(console=ttyS passed at boot, console=d, consoleOut=serial(0))


Please apply, along with the RTC typo fix from yesterday.

Thanks,

JB.

---
IP22: fix serial console hang due to a typo in ip22zilog.c

Signed-off-by: Julien BLACHE <jb@jblache.org>


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: fix serial console hangs on IP22 --]
[-- Type: text/x-patch, Size: 538 bytes --]

--- source-mips-none/drivers/serial/ip22zilog.c	2006-06-18 03:49:35.000000000 +0200
+++ source/drivers/serial/ip22zilog.c	2006-07-09 14:25:11.847260358 +0200
@@ -1145,9 +1145,8 @@
 		up[(chip * 2) + 1].port.fifosize = 1;
 		up[(chip * 2) + 1].port.ops = &ip22zilog_pops;
 		up[(chip * 2) + 1].port.type = PORT_IP22ZILOG;
-		up[(chip * 2) + 1].port.flags |= IP22ZILOG_FLAG_IS_CHANNEL_A;
 		up[(chip * 2) + 1].port.line = (chip * 2) + 1;
-		up[(chip * 2) + 1].flags = 0;
+		up[(chip * 2) + 1].flags |= IP22ZILOG_FLAG_IS_CHANNEL_A;
 	}
 }
 

[-- Attachment #3: Type: text/plain, Size: 290 bytes --]



-- 
 Julien BLACHE <jblache@debian.org>  |  Debian, because code matters more 
 Debian & GNU/Linux Developer        |       <http://www.debian.org>
 Public key available on <http://www.jblache.org> - KeyID: F5D6 5169 
 GPG Fingerprint : 935A 79F1 C8B3 3521 FD62 7CC7 CD61 4FD7 F5D6 5169 

             reply	other threads:[~2006-07-09 13:51 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-07-09 13:51 Julien BLACHE [this message]
2006-07-09 17:38 ` [PATCH] IP22: fix serial console hangs Kumba
2006-07-09 18:37   ` Julien BLACHE
2006-07-09 17:58 ` Martin Michlmayr
2006-07-09 18:40   ` Julien BLACHE
2006-07-09 19:59     ` Russell King
2006-07-09 18:40   ` Julien BLACHE

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87irm6naxt.fsf@frigate.technologeek.org \
    --to=jblache@debian.org \
    --cc=debian-mips@lists.debian.org \
    --cc=linux-mips@linux-mips.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.