Re: remap_page_range64() for PPC

Matt Porter
2004-10-16T06:32:36Z

On Fri, Oct 15, 2004 at 11:46:42PM -0400, Glenn Burkhardt wrote:
> I'm writing an application to run on a PowerPC with a 2.4 embedded
> Linux kernel, and I want to make device registers for our custom
> hardware accessable from user space with mmap(). The physical address
> of the device is above the 4gb boundary (we attach to the 440's
> external peripheral bus), so a standard 'remap_page_range()' call
> won't work.

<snip>

This has come up several times on the ppc lists (but since we still
don't have archives back, nobody can search anyway). I dropped
2.4 and 2.5 patches in source.mvista.com:/pub/linuxppc/ a long
time ago. You just need to update your board-specific fixup routine
in that version or just make a copy or remap_page_range() into your
driver and use u64 for the phys address.

The real fix, of course, is in the -mm tree as remap_pfn_range(),
I plan to merge 440 io_remap_page_range() support on top of that
call when it goes into mainline. But that doesn't help you with
2.4. :)

-Matt