arm64: fix phys_to_virt() calculation to be the same as Linux.
Change-Id: Ibbe17d33fd80eacff990b053fa17d8d320c227f1
This commit is contained in:
@ -3335,14 +3335,14 @@ unsigned long virt_to_phys(void *v)
|
||||
unsigned long va = (unsigned long)v;
|
||||
|
||||
if (va >= MAP_ST_START) {
|
||||
return va - MAP_ST_START;
|
||||
return va - MAP_ST_START + arm64_st_phys_base;
|
||||
}
|
||||
return va - MAP_KERNEL_START + arm64_kernel_phys_base;
|
||||
}
|
||||
|
||||
void *phys_to_virt(unsigned long p)
|
||||
{
|
||||
return (void *)(p | MAP_ST_START);
|
||||
return (void *)((p - arm64_st_phys_base) | MAP_ST_START);
|
||||
}
|
||||
|
||||
int copy_from_user(void *dst, const void *src, size_t siz)
|
||||
|
||||
Reference in New Issue
Block a user