All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eugene Surovegin <ebs@ebshome.net>
To: Shawn Jin <shawnxjin@gmail.com>
Cc: ppcembed <linuxppc-embedded@ozlabs.org>
Subject: Re: Question on fixup_bigphys_addr() in syslib/ibm44x_common.c
Date: Fri, 15 Apr 2005 17:36:44 -0700	[thread overview]
Message-ID: <20050416003644.GA1086@gate.ebshome.net> (raw)
In-Reply-To: <c3d0340b05041517167c0cfa5c@mail.gmail.com>

On Fri, Apr 15, 2005 at 05:16:32PM -0700, Shawn Jin wrote:
> Hi,
> 
> When looking into ppc440 support, I'm confused on the functionality of
> fixup_bigphys_addr() in syslib/ibm44x_common.c. It's called by
> ioremap() in arch/ppc/mm/pgtable.c. The prototype is as follows.
>      phys_addr_t fixup_bigphys_addr(phys_addr_t addr, phys_addr_t size)
> 
> Why do we need this fixup? ioremap() takes a physical address as an
> argument and maps the physical address space to virtual address space
> with the specified size. Since it's already a physical address, which
> is 36-bit address in the case of 440, why do we need to fix up the
> ERPN? I must be missing something here.

phys addr which is passed to ioremap doesn't always contain full 
36-bit address. The reason for this is that some generic Linux 
subsystems (e.g. PCI) for 32-bit archs assume that physical address is 
always 32-bit. To make such generic (not 440-specific) drivers work 
on 44x we need this hack.

IIRC there is an effort under way to fix this generic kernel 
limitation, so hopefully we will be able to get rid of this hack soon.

--
Eugene

      reply	other threads:[~2005-04-16  0:36 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-16  0:16 Question on fixup_bigphys_addr() in syslib/ibm44x_common.c Shawn Jin
2005-04-16  0:36 ` Eugene Surovegin [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=20050416003644.GA1086@gate.ebshome.net \
    --to=ebs@ebshome.net \
    --cc=linuxppc-embedded@ozlabs.org \
    --cc=shawnxjin@gmail.com \
    /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.