memory allocation over 4gb under x86_64

From: protagora27 protagora27
Date: Tue Mar 03 2009 - 06:22:32 EST


Hello folks,

I have a 64 bit dma that I have to program with 64 bit physical
address
beyond 4 gb because I have to test dma with memory allocation beyond
4 gb.
I 'm using linux x86_64 2.6.24 and I have 8 gb ram.
How can I allocate physical dma memory beyond 4gb ? In x86_64
can I use __pa to have physical address ?
I have used kmalloc giving virtual address : ffff810225d10340
and using __pa i have: 225d10340 that is over 8 gb .
Does it mean that kmalloc return address is not linear mapped with phys ram ?

I would like to find a function that returns a physical adddres beyond
4gb
and then i write phys address in dma register .

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/