diff options
| author | John Baldwin <jhb@FreeBSD.org> | 2026-04-23 17:05:54 +0000 |
|---|---|---|
| committer | John Baldwin <jhb@FreeBSD.org> | 2026-04-23 17:05:54 +0000 |
| commit | e27501388fc0dc2a29f90cb24ba8d36e9bb6631f (patch) | |
| tree | bdabef7c7e09ab92e77860922eaf7bd2b7df7840 /sys/arm | |
| parent | ec3a0b2a02ee2aa459aa72d751f6670b7f813f31 (diff) | |
Diffstat (limited to 'sys/arm')
| -rw-r--r-- | sys/arm/arm/mem.c | 2 | ||||
| -rw-r--r-- | sys/arm/arm/pmap-v6.c | 15 | ||||
| -rw-r--r-- | sys/arm/include/sf_buf.h | 4 | ||||
| -rw-r--r-- | sys/arm/nvidia/drm2/tegra_bo.c | 4 |
4 files changed, 13 insertions, 12 deletions
diff --git a/sys/arm/arm/mem.c b/sys/arm/arm/mem.c index cec253f60b51..fbfd0759efc0 100644 --- a/sys/arm/arm/mem.c +++ b/sys/arm/arm/mem.c @@ -121,7 +121,7 @@ memrw(struct cdev *dev, struct uio *uio, int flags) c = min(c, (u_int)(PAGE_SIZE - o)); c = min(c, (u_int)iov->iov_len); error = uiomove((caddr_t)&_tmppt[o], (int)c, uio); - pmap_qremove((vm_offset_t)_tmppt, 1); + pmap_qremove(_tmppt, 1); sx_xunlock(&tmppt_lock); continue; } diff --git a/sys/arm/arm/pmap-v6.c b/sys/arm/arm/pmap-v6.c index a87e9ead64cd..5fe3d701e7ed 100644 --- a/sys/arm/arm/pmap-v6.c +++ b/sys/arm/arm/pmap-v6.c @@ -1819,8 +1819,9 @@ pmap_init(void) * Note: SMP coherent. Uses a ranged shootdown IPI. */ void -pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) +pmap_qenter(void *va, vm_page_t *ma, int count) { + vm_offset_t sva = (vm_offset_t)va; u_int anychanged; pt2_entry_t *epte2p, *pte2p, pte2; vm_page_t m; @@ -1851,16 +1852,16 @@ pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) * Note: SMP coherent. Uses a ranged shootdown IPI. */ void -pmap_qremove(vm_offset_t sva, int count) +pmap_qremove(void *sva, int count) { vm_offset_t va; - va = sva; + va = (vm_offset_t)sva; while (count-- > 0) { pmap_kremove(va); va += PAGE_SIZE; } - tlb_flush_range(sva, va - sva); + tlb_flush_range((vm_offset_t)sva, va - (vm_offset_t)sva); } /* @@ -2946,7 +2947,7 @@ pmap_pv_reclaim(pmap_t locked_pmap) PV_STAT(pc_chunk_frees++); /* Entire chunk is free; return it. */ m_pc = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc)); - pmap_qremove((vm_offset_t)pc, 1); + pmap_qremove(pc, 1); pmap_pte2list_free(&pv_vafree, (vm_offset_t)pc); break; } @@ -2979,7 +2980,7 @@ free_pv_chunk(struct pv_chunk *pc) PV_STAT(pc_chunk_frees++); /* entire chunk is free, return it */ m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc)); - pmap_qremove((vm_offset_t)pc, 1); + pmap_qremove(pc, 1); vm_page_unwire_noq(m); vm_page_free(m); pmap_pte2list_free(&pv_vafree, (vm_offset_t)pc); @@ -3088,7 +3089,7 @@ retry: PV_STAT(pc_chunk_count++); PV_STAT(pc_chunk_allocs++); pc = (struct pv_chunk *)pmap_pte2list_alloc(&pv_vafree); - pmap_qenter((vm_offset_t)pc, &m, 1); + pmap_qenter(pc, &m, 1); pc->pc_pmap = pmap; pc->pc_map[0] = pc_freemask[0] & ~1ul; /* preallocated bit 0 */ for (field = 1; field < _NPCM; field++) diff --git a/sys/arm/include/sf_buf.h b/sys/arm/include/sf_buf.h index 2aa8ee3789c9..1e4066d58c81 100644 --- a/sys/arm/include/sf_buf.h +++ b/sys/arm/include/sf_buf.h @@ -33,14 +33,14 @@ static inline void sf_buf_map(struct sf_buf *sf, int flags) { - pmap_qenter(sf->kva, &(sf->m), 1); + pmap_qenter((void *)sf->kva, &(sf->m), 1); } static inline int sf_buf_unmap(struct sf_buf *sf) { - pmap_qremove(sf->kva, 1); + pmap_qremove((void *)sf->kva, 1); return (1); } #endif /* !_MACHINE_SF_BUF_H_ */ diff --git a/sys/arm/nvidia/drm2/tegra_bo.c b/sys/arm/nvidia/drm2/tegra_bo.c index 73ba82f2f883..c173936556ed 100644 --- a/sys/arm/nvidia/drm2/tegra_bo.c +++ b/sys/arm/nvidia/drm2/tegra_bo.c @@ -58,7 +58,7 @@ tegra_bo_destruct(struct tegra_bo *bo) size = round_page(bo->gem_obj.size); if (bo->vbase != 0) - pmap_qremove(bo->vbase, bo->npages); + pmap_qremove((void *)bo->vbase, bo->npages); vm_page_iter_init(&pages, bo->cdev_pager); VM_OBJECT_WLOCK(bo->cdev_pager); @@ -166,7 +166,7 @@ tegra_bo_init_pager(struct tegra_bo *bo) } VM_OBJECT_WUNLOCK(bo->cdev_pager); - pmap_qenter(bo->vbase, bo->m, bo->npages); + pmap_qenter((void *)bo->vbase, bo->m, bo->npages); return (0); } |
