map iomem in linux_2_4_dev
David Gibson
david at gibson.dropbear.id.au
Tue May 28 10:36:04 EST 2002
On Mon, May 27, 2002 at 04:13:05PM +0800, shaowei dai wrote:
>
> Hi, Sangmoon:
>
> Thanks. I got it. We've to use io_block_mapping() followed by ioremap() to
> map the physical address.
No, that's rubbish. Use one or the other. ioremap() takes a physical
address and returns the virtual address at which it mapped it.
> From: "Sangmoon Kim" <dogoil at etinsys.com>
> To: "shaowei dai" <dshaowei at rfnetech.com>;
> <linuxppc-embedded at lists.linuxppc.org>
> Sent: Monday, May 27, 2002 4:13 PM
> Subject: Re: map iomem in linux_2_4_dev
>
>
> > Hi, Shaowei:
> >
> > The parameter addr of ioremap is not a virtual address
> > but a kind of physical address.
> >
> > Let us have a device at 0x78000000.
> > We can change the address to 0xf0000000 by...
> > io_block_mapping(0xf0000000, 0x78000000, 0x08000000, _PAGE_IO);
> > Than what is the return value of ioremap(0x78000000, 0x08000000)?
> > That is 0xf0000000.
> >
> > The system changes the addresses of devices for various reason.
> > We only know the original address.
> > Than we can use the ioremap to get the changed address.
> >
> > -Sangmoon Kim-
--
David Gibson | For every complex problem there is a
david at 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/
More information about the Linuxppc-embedded
mailing list