diff options
author | Michal Meloun <mmel@FreeBSD.org> | 2016-02-05 14:57:41 +0000 |
---|---|---|
committer | Michal Meloun <mmel@FreeBSD.org> | 2016-02-05 14:57:41 +0000 |
commit | a89156f53f87f2b4f5b731adb0c3840fcd177ceb (patch) | |
tree | 6130734e3c63fce61c81af1c7daaa057a0ec3c6c /sys/contrib/vchiq | |
parent | 3af1c2aae2211e301a41f6526976f2f277cf283b (diff) | |
download | src-a89156f53f87f2b4f5b731adb0c3840fcd177ceb.tar.gz src-a89156f53f87f2b4f5b731adb0c3840fcd177ceb.zip |
ARM: Use new ARMv6 naming conventions for cache and TLB functions
in all but ARMv4 specific files.
Expand ARMv6 compatibility stubs in cpu-v4.h. Use physical address
in L2 cache functions if ARM_L2_PIPT is defined.
Notes
Notes:
svn path=/head/; revision=295319
Diffstat (limited to 'sys/contrib/vchiq')
-rw-r--r-- | sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c index 753e8e510631..e325f6ed777a 100644 --- a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c +++ b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c @@ -48,6 +48,7 @@ #include <vm/vm_phys.h> #include <machine/bus.h> +#include <machine/cpu.h> #include <arm/broadcom/bcm2835/bcm2835_mbox.h> #include <arm/broadcom/bcm2835/bcm2835_vcbus.h> @@ -411,6 +412,7 @@ create_pagelist(char __user *buf, size_t count, unsigned short type, int run, addridx, actual_pages; int err; vm_paddr_t pagelist_phys; + vm_paddr_t pa; offset = (vm_offset_t)buf & (PAGE_SIZE - 1); num_pages = (count + offset + PAGE_SIZE - 1) / PAGE_SIZE; @@ -533,7 +535,8 @@ create_pagelist(char __user *buf, size_t count, unsigned short type, (fragments - g_fragments_base)/g_fragment_size; } - cpu_dcache_wbinv_range((vm_offset_t)buf, count); + pa = pmap_extract(PCPU_GET(curpmap), (vm_offset_t)buf); + dcache_wbinv_poc((vm_offset_t)buf, pa, count); bus_dmamap_sync(bi->pagelist_dma_tag, bi->pagelist_dma_map, BUS_DMASYNC_PREWRITE); |