/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:
@@ -327,7 +327,7 @@ EXPORT_SYMBOL(iounmap);
|
||||
* Convert a physical pointer to a virtual kernel pointer for /dev/mem
|
||||
* access
|
||||
*/
|
||||
void *xlate_dev_mem_ptr(unsigned long phys)
|
||||
void *xlate_dev_mem_ptr(phys_addr_t phys)
|
||||
{
|
||||
void *addr;
|
||||
unsigned long start = phys & PAGE_MASK;
|
||||
@@ -343,7 +343,7 @@ void *xlate_dev_mem_ptr(unsigned long phys)
|
||||
return addr;
|
||||
}
|
||||
|
||||
void unxlate_dev_mem_ptr(unsigned long phys, void *addr)
|
||||
void unxlate_dev_mem_ptr(phys_addr_t phys, void *addr)
|
||||
{
|
||||
if (page_is_ram(phys >> PAGE_SHIFT))
|
||||
return;
|
||||
|
Reference in New Issue
Block a user