* Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?
@ 2008-11-02 18:03 Rick Bronson
2008-11-02 19:26 ` David Brownell
2008-11-02 22:07 ` What happened to the serial console on BeagleBoard with 2.6.28-rc2? Tony Lindgren
0 siblings, 2 replies; 8+ messages in thread
From: Rick Bronson @ 2008-11-02 18:03 UTC (permalink / raw)
To: david-b; +Cc: linux-omap, nmonson, felipe.contreras, tom.leiming
> Leaving only one map_desc[] entry left using MT_DEVICE not MT_MEMORY_SO...
> I didn't try this, since I'm currently not hooking up that serial port,
> but dmesg does show(*):
>
> Serial: 8250/16550 driver3 ports, IRQ sharing disabled
> serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
> serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
> serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16650V2
> console [ttyS2] enabled
>
> Is that what you saw too?
Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
I had nothing except "Uncompressing Linux........". ST16650V2 is a
clue that something went awry in auto-detection of the type of 8250
serial port. With the MT_MEMORY_SO change, I get:
Serial: 8250/16550 driver4 ports, IRQ sharing enabled
serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
console [ttyS2] enabled
I guess we don't see this problem on the other 2 ports since they
are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
Rick
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?
2008-11-02 18:03 What happened to the serial console on BeagleBoard with 2.6.28-rc2? Rick Bronson
@ 2008-11-02 19:26 ` David Brownell
2008-11-02 20:50 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Tony Lindgren
2008-11-02 22:07 ` What happened to the serial console on BeagleBoard with 2.6.28-rc2? Tony Lindgren
1 sibling, 1 reply; 8+ messages in thread
From: David Brownell @ 2008-11-02 19:26 UTC (permalink / raw)
To: rick; +Cc: linux-omap, nmonson, felipe.contreras, tom.leiming
On Sunday 02 November 2008, Rick Bronson wrote:
> > Is that what you saw too?
>
> Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
> I had nothing except "Uncompressing Linux........".
I don't have DEBUG_LL=y ... if you had some kind of network
link configured over USB, could you SSH in? (I can.)
> I guess we don't see this problem on the other 2 ports since they
> are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
Hmm, inconsistency is to be avoided. :)
I wonder what the root cause is ... is the driver missing
various barriers needed to make MT_DEVICE work? Or is the
MT_DEVICE incorrect in the first place? "git whatchanged"
didn't show any recent changes that seemed (on a quick
glance) to affect I/O at that level. Maybe it was one of
the other TTY changes interacting here.
- Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?)
2008-11-02 19:26 ` David Brownell
@ 2008-11-02 20:50 ` Tony Lindgren
2008-11-02 21:52 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: Grazvydas Ignotas
2008-11-03 12:59 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Ming Lei
0 siblings, 2 replies; 8+ messages in thread
From: Tony Lindgren @ 2008-11-02 20:50 UTC (permalink / raw)
To: David Brownell; +Cc: rick, linux-omap, nmonson, felipe.contreras, tom.leiming
[-- Attachment #1: Type: text/plain, Size: 1162 bytes --]
* David Brownell <david-b@pacbell.net> [081102 11:26]:
> On Sunday 02 November 2008, Rick Bronson wrote:
> > > Is that what you saw too?
> >
> > Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
> > I had nothing except "Uncompressing Linux........".
>
> I don't have DEBUG_LL=y ... if you had some kind of network
> link configured over USB, could you SSH in? (I can.)
>
>
> > I guess we don't see this problem on the other 2 ports since they
> > are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
>
> Hmm, inconsistency is to be avoided. :)
>
> I wonder what the root cause is ... is the driver missing
> various barriers needed to make MT_DEVICE work? Or is the
> MT_DEVICE incorrect in the first place? "git whatchanged"
> didn't show any recent changes that seemed (on a quick
> glance) to affect I/O at that level. Maybe it was one of
> the other TTY changes interacting here.
Yeah I don't know what may have changed, or have things just
gotten faster now with cortex since 2.6.27?
Anyways, this patch fixes the issue for me without marking
things strongly ordered. Rick, does this work for you?
Regards,
Tony
[-- Attachment #2: flush-posted-8250.patch --]
[-- Type: text/x-diff, Size: 906 bytes --]
>From 57eea529292418a20a119c5b18d7636cf44992ae Mon Sep 17 00:00:00 2001
From: Tony Lindgren <tony@atomide.com>
Date: Fri, 31 Oct 2008 16:47:42 -0700
Subject: [PATCH] serial: Flush posted write on 34xx to make 8250 work
On omap34xx, we need to flush posted writes for TX.
Signed-off-by: Tony Lindgren <tony@atomide.com>
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c
index 5f383d8..629a16c 100644
--- a/drivers/serial/8250.c
+++ b/drivers/serial/8250.c
@@ -413,6 +413,13 @@ serial_out(struct uart_8250_port *up, int offset, int value)
case UPIO_MEM:
writeb(value, up->port.membase + offset);
+#ifdef CONFIG_ARCH_OMAP
+ /* Flush posted write for TX */
+ if (cpu_is_omap34xx() && is_omap_port(up) &&
+ (save_offset == UART_TX || save_offset == UART_IER ||
+ save_offset == UART_LCR))
+ value = serial_in(up, UART_LCR); /* Safe to read */
+#endif
break;
case UPIO_RM9000:
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re:
2008-11-02 20:50 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Tony Lindgren
@ 2008-11-02 21:52 ` Grazvydas Ignotas
2008-11-03 12:59 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Ming Lei
1 sibling, 0 replies; 8+ messages in thread
From: Grazvydas Ignotas @ 2008-11-02 21:52 UTC (permalink / raw)
To: linux-omap; +Cc: Grazvydas Ignotas
> does this work for you?
Works on Pandora, which had garbled text instead of no output at all.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?)
2008-11-02 20:50 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Tony Lindgren
2008-11-02 21:52 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: Grazvydas Ignotas
@ 2008-11-03 12:59 ` Ming Lei
2008-11-03 16:45 ` Tony Lindgren
1 sibling, 1 reply; 8+ messages in thread
From: Ming Lei @ 2008-11-03 12:59 UTC (permalink / raw)
To: Tony Lindgren; +Cc: David Brownell, rick, linux-omap, nmonson, felipe.contreras
2008/11/3 Tony Lindgren <tony@atomide.com>:
> * David Brownell <david-b@pacbell.net> [081102 11:26]:
>> On Sunday 02 November 2008, Rick Bronson wrote:
>> > > Is that what you saw too?
>> >
>> > Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
>> > I had nothing except "Uncompressing Linux........".
>>
>> I don't have DEBUG_LL=y ... if you had some kind of network
>> link configured over USB, could you SSH in? (I can.)
>>
>>
>> > I guess we don't see this problem on the other 2 ports since they
>> > are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
>>
>> Hmm, inconsistency is to be avoided. :)
>>
>> I wonder what the root cause is ... is the driver missing
>> various barriers needed to make MT_DEVICE work? Or is the
>> MT_DEVICE incorrect in the first place? "git whatchanged"
>> didn't show any recent changes that seemed (on a quick
>> glance) to affect I/O at that level. Maybe it was one of
>> the other TTY changes interacting here.
>
> Yeah I don't know what may have changed, or have things just
> gotten faster now with cortex since 2.6.27?
>
> Anyways, this patch fixes the issue for me without marking
> things strongly ordered. Rick, does this work for you?
This patch still works for me.
Thanks!
>
> Regards,
>
> Tony
>
--
Lei Ming
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?)
2008-11-03 12:59 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Ming Lei
@ 2008-11-03 16:45 ` Tony Lindgren
2008-11-03 16:54 ` Woodruff, Richard
0 siblings, 1 reply; 8+ messages in thread
From: Tony Lindgren @ 2008-11-03 16:45 UTC (permalink / raw)
To: Ming Lei; +Cc: David Brownell, rick, linux-omap, nmonson, felipe.contreras
* Ming Lei <tom.leiming@gmail.com> [081103 04:59]:
> 2008/11/3 Tony Lindgren <tony@atomide.com>:
> > * David Brownell <david-b@pacbell.net> [081102 11:26]:
> >> On Sunday 02 November 2008, Rick Bronson wrote:
> >> > > Is that what you saw too?
> >> >
> >> > Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
> >> > I had nothing except "Uncompressing Linux........".
> >>
> >> I don't have DEBUG_LL=y ... if you had some kind of network
> >> link configured over USB, could you SSH in? (I can.)
> >>
> >>
> >> > I guess we don't see this problem on the other 2 ports since they
> >> > are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
> >>
> >> Hmm, inconsistency is to be avoided. :)
> >>
> >> I wonder what the root cause is ... is the driver missing
> >> various barriers needed to make MT_DEVICE work? Or is the
> >> MT_DEVICE incorrect in the first place? "git whatchanged"
> >> didn't show any recent changes that seemed (on a quick
> >> glance) to affect I/O at that level. Maybe it was one of
> >> the other TTY changes interacting here.
> >
> > Yeah I don't know what may have changed, or have things just
> > gotten faster now with cortex since 2.6.27?
> >
> > Anyways, this patch fixes the issue for me without marking
> > things strongly ordered. Rick, does this work for you?
>
> This patch still works for me.
> Thanks!
Well the real problem has been found, there's a bug with the recent
ptebits patches, which causes section mappings to be just MT_MEMORY
instead of MT_DEVICE..
So let's put things on hold until we have a real fix for that on the
linux-arm-kernel mailing list, hopefully today.
Regards,
Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?)
2008-11-03 16:45 ` Tony Lindgren
@ 2008-11-03 16:54 ` Woodruff, Richard
0 siblings, 0 replies; 8+ messages in thread
From: Woodruff, Richard @ 2008-11-03 16:54 UTC (permalink / raw)
To: Tony Lindgren, Ming Lei
Cc: David Brownell, rick@efn.org, linux-omap@vger.kernel.org,
nmonson@gmail.com, felipe.contreras@gmail.com
> From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
> owner@vger.kernel.org] On Behalf Of Tony Lindgren
> Well the real problem has been found, there's a bug with the recent
> ptebits patches, which causes section mappings to be just MT_MEMORY
> instead of MT_DEVICE..
>
> So let's put things on hold until we have a real fix for that on the
> linux-arm-kernel mailing list, hopefully today.
That makes a lot more sense. It was odd to see a flurry of failures.
SO vs. DEVICE were occasional errors usually seen under irq stress. It never took down the serial port. Mapping things a MEMORY surely would.
Regards,
Richard W.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?
2008-11-02 18:03 What happened to the serial console on BeagleBoard with 2.6.28-rc2? Rick Bronson
2008-11-02 19:26 ` David Brownell
@ 2008-11-02 22:07 ` Tony Lindgren
1 sibling, 0 replies; 8+ messages in thread
From: Tony Lindgren @ 2008-11-02 22:07 UTC (permalink / raw)
To: Rick Bronson; +Cc: david-b, linux-omap, nmonson, felipe.contreras, tom.leiming
* Rick Bronson <rick@efn.org> [081102 10:07]:
>
> > Leaving only one map_desc[] entry left using MT_DEVICE not MT_MEMORY_SO...
> > I didn't try this, since I'm currently not hooking up that serial port,
> > but dmesg does show(*):
> >
> > Serial: 8250/16550 driver3 ports, IRQ sharing disabled
> > serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
> > serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
> > serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16650V2
> > console [ttyS2] enabled
> >
> > Is that what you saw too?
>
> Yep, that's what I saw, but only if I had DEBUG_LL=y. Without that
> I had nothing except "Uncompressing Linux........". ST16650V2 is a
> clue that something went awry in auto-detection of the type of 8250
> serial port. With the MT_MEMORY_SO change, I get:
>
> Serial: 8250/16550 driver4 ports, IRQ sharing enabled
> serial8250.0: ttyS0 at MMIO 0x4806a000 (irq = 72) is a ST16654
> serial8250.0: ttyS1 at MMIO 0x4806c000 (irq = 73) is a ST16654
> serial8250.0: ttyS2 at MMIO 0x49020000 (irq = 74) is a ST16654
> console [ttyS2] enabled
>
> I guess we don't see this problem on the other 2 ports since they
> are mapped MT_MEMORY_SO and not MT_DEVICE (L4_34XX_PHYS).
Rick, can you please reply with your Signed-off-by for your patch?
Let's push that one, then continue thinking about the so/device
issues.
Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2008-11-03 16:55 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-02 18:03 What happened to the serial console on BeagleBoard with 2.6.28-rc2? Rick Bronson
2008-11-02 19:26 ` David Brownell
2008-11-02 20:50 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Tony Lindgren
2008-11-02 21:52 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: Grazvydas Ignotas
2008-11-03 12:59 ` [PATCH] serial: Flush posted write on 34xx to make 8250 work (Re: What happened to the serial console on BeagleBoard with 2.6.28-rc2?) Ming Lei
2008-11-03 16:45 ` Tony Lindgren
2008-11-03 16:54 ` Woodruff, Richard
2008-11-02 22:07 ` What happened to the serial console on BeagleBoard with 2.6.28-rc2? Tony Lindgren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox