>Given that the physical address has already been mapped, via >ioremap64(), do I need remap_page_range()? Does anyone have any ideas >on what the mmap file_op for this driver would look like? Do I even >need mmap() or should I just use an ioctl to return the pointer I've >already got to the user?
The ioctl won't do because the virtual address returned by the ioremap64 is not valid in process context. You could remap it through mmap file_op, but why bother? Rem: reading ioremap64 and drivers/char/mem.c is very instructive. Since you're accessing your DPRAM guarded/uncached, you may simply map it both in kernel with ioremap64 and in userland with mmap64 of /dev/mem. For more information, search the archive (or DENX PPC FAQ) on userland mapping of physical memory. Regards, Stephane ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
