linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: linuxppc-embedded@lists.linuxppc.org
Subject: Re: map iomem in linux_2_4_dev
Date: Wed, 29 May 2002 15:47:37 +1000	[thread overview]
Message-ID: <20020529054737.GE16537@zax> (raw)
In-Reply-To: <002b01c206cd$59f7a760$1a11efcb@industrialDiv.hanasys.co.kr>


On Wed, May 29, 2002 at 01:57:34PM +0900, Sangmoon Kim wrote:
>
> Hi,
> >
> > You don't need io_block_mapping.  Follow one of the many examples to
> > use early_serial_init with an ioremap call for your UART.
> >
> > The only reason your method works is that the io_block_mapping is
> > actually using a BAT on our classic PPC platform.  ioremap will
> > look for an existent BAT mapping and just return the translated
> > virtual address in this case.  Relying on this is bad practice
> > since it will not work on other PPC systems.
> >
> Right, I exactly wanted to do that.
> I called io_block_mapping() on initialization code.
> More precisly on <board name>_map_io(),
> which is in arch/ppc/platforms/<board_name>_setup().
> It has nothing to do with competibility.
> And... Is there any ppc without BAT?
> I didn't know that.

Yes there are PPCs without BATs.  e.g. 4xx.

> > As David correctly pointed out, only use io_block_mapping when
> > you absolutely must control the placement of the virtual address.
> Than, if the system initialization code is changed,
> the driver code should be changed too.

That's exactly why ioremap() is preferred - then the initialization
code doesn't need to touch it at all.

> > There are cases when this is necessary since the hardware engineers
> > always send us garbage to support.  Mapping a UART at init time is
> > not one of these.
> >
> Actually, I'm a hardware guy.
> In most cases, mapping UART is not needed,
> but on the hardware I designed, it is needed.
> Because its physical addres is 0x78000000.
> Don't blame us too much.
> It takes much money to change hardware.

Rubbish.  Having a *physical* address of 0x78000000 is no problem at
all, ioremap() will map that (like any other physical address) into a
sensible virtual address.

--
David Gibson			| For every complex problem there is a
david@gibson.dropbear.id.au	| solution which is simple, neat and
				| wrong.  -- H.L. Mencken
http://www.ozlabs.org/people/dgibson

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

  parent reply	other threads:[~2002-05-29  5:47 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-28 10:38 map iomem in linux_2_4_dev Sangmoon Kim
2002-05-28 13:23 ` Matt Porter
2002-05-29  4:57   ` Sangmoon Kim
2002-05-29  5:47     ` Roland Dreier
2002-05-29  6:01       ` Sangmoon Kim
2002-05-29  5:47     ` David Gibson [this message]
2002-05-29  6:14       ` Sangmoon Kim
2002-05-29 12:48       ` shaowei dai
  -- strict thread matches above, loose matches on Subject: below --
2002-05-27  5:59 shaowei dai
2002-05-27  6:34 ` David Gibson
2002-05-27  6:51   ` shaowei dai
2002-05-27  8:13     ` Sangmoon Kim
2002-05-27  8:13       ` shaowei dai
2002-05-28  0:36         ` David Gibson
2002-05-28  4:42           ` Sangmoon Kim

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=20020529054737.GE16537@zax \
    --to=david@gibson.dropbear.id.au \
    --cc=linuxppc-embedded@lists.linuxppc.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).