mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Bjorn Helgaas <bjorn.helgaas@hp.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Russell King <rmk@arm.linux.org.uk>,
	Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: uart_match_port() question
Date: Thu, 8 Dec 2005 09:26:37 -0700	[thread overview]
Message-ID: <200512080926.37497.bjorn.helgaas@hp.com> (raw)
In-Reply-To: <1134001049.7168.97.camel@gaston>

On Wednesday 07 December 2005 5:17 pm, Benjamin Herrenschmidt wrote:
> On Wed, 2005-12-07 at 16:36 -0700, Bjorn Helgaas wrote:
> > On Wednesday 07 December 2005 4:13 pm, Benjamin Herrenschmidt wrote:
> > > ...  Part of the problem here is for example PIO. There is no such
> > > thing as PIO on a PowerPC, it's purely a PCI abstraction, thus inX/outX
> > > will only work once the PCI host briges have been discovered and their
> > > IO space mapped (setup_arch() time, but I definitely want my early
> > > console earlier).
> > 
> > ia64 has a similar problem, but it's a bit easier because firmware
> > configures and tells us about the legacy (0-64K) I/O port space.
> > So we do have to look up the MMIO base where those I/O ports get
> > mapped, but that's basically the first thing in setup_arch().  We
> > don't do much before that, so it hasn't been worthwhile to make
> > the console work earlier.
> 
> Oh, that's what I do too, that is, I have a mecanism now to walk the
> firmware device-tree and get the MMIO, my problem was with matching that
> MMIO address with the PIO one that 8250 gets later on. It seems that you
> solved that problem so it looks like I really need to look more closely
> at what you are doing :)

Well, don't get your hopes up too much...  ia64 uses the same addresses
early and late, i.e., if 8250_pci discovers a PIO port, the early code
also uses a PIO address.  We never use an MMIO address early and a PIO
address later.

The PIO -> MMIO translation is hidden inside our inb/outb functions
(see __ia64_mk_io_addr()).  The firmware tells us where the legacy
0-64K I/O ports are mapped, so we can set up io_space[0].mmio_base
very early, without enumerating the PCI bridges.

      reply	other threads:[~2005-12-08 16:26 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-27  0:21 Benjamin Herrenschmidt
2005-11-28 11:30 ` Russell King
2005-11-28 11:36   ` Benjamin Herrenschmidt
2005-12-07 22:15 ` Bjorn Helgaas
2005-12-07 23:13   ` Benjamin Herrenschmidt
2005-12-07 23:36     ` Bjorn Helgaas
2005-12-08  0:17       ` Benjamin Herrenschmidt
2005-12-08 16:26         ` Bjorn Helgaas [this message]

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=200512080926.37497.bjorn.helgaas@hp.com \
    --to=bjorn.helgaas@hp.com \
    --cc=benh@kernel.crashing.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rmk@arm.linux.org.uk \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®