/dev/mem: Use more consistent data types
The xlate_dev_{kmem,mem}_ptr() functions take either a physical address or a kernel virtual address, so data types should be phys_addr_t and void *. They both return a kernel virtual address which is only ever used in calls to copy_{from,to}_user(), so make variables that store it void * rather than char * for consistency. Also only define a weak unxlate_dev_mem_ptr() function if architectures haven't overridden them in the asm/io.h header file. Signed-off-by: Thierry Reding <treding@nvidia.com>
This commit is contained in:
@@ -176,7 +176,7 @@ static int is_swapped(unsigned long addr)
|
||||
* For swapped prefix pages a new buffer is returned that contains a copy of
|
||||
* the absolute memory. The buffer size is maximum one page large.
|
||||
*/
|
||||
void *xlate_dev_mem_ptr(unsigned long addr)
|
||||
void *xlate_dev_mem_ptr(phys_addr_t addr)
|
||||
{
|
||||
void *bounce = (void *) addr;
|
||||
unsigned long size;
|
||||
@@ -197,7 +197,7 @@ void *xlate_dev_mem_ptr(unsigned long addr)
|
||||
/*
|
||||
* Free converted buffer for /dev/mem access (if necessary)
|
||||
*/
|
||||
void unxlate_dev_mem_ptr(unsigned long addr, void *buf)
|
||||
void unxlate_dev_mem_ptr(phys_addr_t addr, void *buf)
|
||||
{
|
||||
if ((void *) addr != buf)
|
||||
free_page((unsigned long) buf);
|
||||
|
Reference in New Issue
Block a user