| 80 | } |
| 81 | |
| 82 | void *rt_kmem_p2v(void *paddr) |
| 83 | { |
| 84 | char *rc; |
| 85 | char *linear_va; |
| 86 | char *linear_pa; |
| 87 | if (paddr != ARCH_MAP_FAILED) |
| 88 | { |
| 89 | linear_va = (char *)paddr - PV_OFFSET; |
| 90 | linear_pa = rt_kmem_v2p(linear_va); |
| 91 | if (linear_pa != paddr) |
| 92 | { |
| 93 | rc = RT_NULL; |
| 94 | } |
| 95 | else |
| 96 | { |
| 97 | rc = linear_va; |
| 98 | } |
| 99 | } |
| 100 | else |
| 101 | { |
| 102 | rc = RT_NULL; |
| 103 | } |
| 104 | |
| 105 | return rc; |
| 106 | } |
no test coverage detected