mmap and ppc460gt

vb vb at vsbe.com
Wed Aug 27 12:26:58 EST 2008


I am trying to port an application from ppc854x to ppc440. The
application, among other things, maps register file of a PCI device
into its memory space to gain direct access to the device. mmap() is
used to accomplish the mapping.

I don't seem to be able to port this to ppc460gt: on this architecture
the PCI register space can be mapped only to 36 bit address ranges
with nonzero top nibbles. But mmap()  (at least the one I have in
2.6.25)  accepts only 32 bit values for addresses, hence there is no
way to map PCI space into user space.

Am I missing something and there is a way to map 36 bit address in 32
bit mode? Or maybe the kernel/library were not compiled properly and
mmap() is supposed to accept 64 bit addresses?

Any hints/suggestions will be highly appreciated,
TIA,
Vadim


More information about the Linuxppc-embedded mailing list