All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Chris Friesen" <cfriesen@nortel.com>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org
Subject: Re: [BUG] serial base baud misdetected in 2.6.27
Date: Tue, 04 Nov 2008 14:29:33 -0600	[thread overview]
Message-ID: <4910B0AD.3020802@nortel.com> (raw)
In-Reply-To: <20081104192253.151d6ef3@lxorguk.ukuu.org.uk>

Alan Cox wrote:
> On Tue, 04 Nov 2008 12:24:45 -0600
> "Chris Friesen" <cfriesen@nortel.com> wrote:
> 
>> I'm running an ATCA7101 board.  This board has two 16550 ports that get 
>> detected as ttyS4 and ttyS5.
>>
>> With a much earlier kernel (2.6.14) the serial port base speed is 
>> correctly detected as 230400, which gives the desired 115200 when I 
>> specify that on the kernel commandline.
>>
>> With 2.6.16 and 2.6.27 (not sure about the intervening kernels) the 
>> serial port base speed is detected as 921600, which means that I need to 
>> specify 460800 on the commandline to get a real speed of 115200 (as 
>> verified by an external terminal server).
>>
>> Any ideas what could be causing this misdetection?  I'm having lab 
>> issues right now so I can't track it down, but I'll have a go at it 
>> eventually.
> 
> If this is a PCI card it may be matching against a PCI entry for a
> similar card with different crystals and need the right svid/sdid adding.

This is an ATCA board, so it's not a separate PCI card, but it does look 
like it's hanging off the PCI bus.  The vendor/device matches to an Exar 
Corp. XR17C152, which is given a base_baud of 921600 in 
drivers/serial/8250_pci.c.

According to the chip specs, 921600 is correct with the default crystal 
and control register values.  However, other crystals can be used and 
there's also a control register bit to enable a prescalar which cuts the 
baud rate by a factor of four.  I suspect that one of these has been 
done on our boards.

The confusing thing is that the 2.6.14 code seems to also use a value of 
921600, but somehow it works.  I wonder if our kernel vendor has tweaked 
something in the code to adjust this value later on.

Chris



  reply	other threads:[~2008-11-04 20:29 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-04 18:24 [BUG] serial base baud misdetected in 2.6.27 Chris Friesen
2008-11-04 19:22 ` Alan Cox
2008-11-04 20:29   ` Chris Friesen [this message]
2008-11-04 20:36     ` Alan Cox
2008-11-04 21:30       ` Chris Friesen

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=4910B0AD.3020802@nortel.com \
    --to=cfriesen@nortel.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.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.