__pa giving strange phys address on PPC

Josh Boyer jwboyer at gmail.com
Fri Jan 9 08:03:23 EST 2009


On Wed, Jan 07, 2009 at 09:59:36PM +0100, dibacco at libero.it wrote:
>Hi all,
>
>I'm using a linux 2.6.19 (from Denx ELDK) on a PPC MPC880. In a driver (that uses TDM channels) I have some calls to __pa to get the physical address corresponding to a virtual address. The physical address returned by __pa is higher than the maximum physical memory I have on the board. This result make my driver hang. The driver I'm trying to use was written for a 2.4 kernel and I'm wondering if I have to replace the calls to __pa with some other API/MACRO.
>
>Thank you in advance.

If you're calling it on an ioremapped address, that won't work.
Those come out of vmalloc space.

Just store the physical address somewhere if you really need it.

josh



More information about the Linuxppc-dev mailing list