diff options
| -rw-r--r-- | sys/arch/aarch64/aarch64/cpufunc.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/sys/arch/aarch64/aarch64/cpufunc.c b/sys/arch/aarch64/aarch64/cpufunc.c index 30db2d96841..3d8ceccf602 100644 --- a/sys/arch/aarch64/aarch64/cpufunc.c +++ b/sys/arch/aarch64/aarch64/cpufunc.c @@ -1,4 +1,4 @@ -/* $NetBSD: cpufunc.c,v 1.30 2021/10/23 06:48:31 skrll Exp $ */ +/* $NetBSD: cpufunc.c,v 1.31 2021/10/31 07:56:55 skrll Exp $ */ /* * Copyright (c) 2017 Ryo Shimizu <ryo@nerv.org> @@ -30,7 +30,7 @@ #include "opt_multiprocessor.h" #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.30 2021/10/23 06:48:31 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.31 2021/10/31 07:56:55 skrll Exp $"); #include <sys/param.h> #include <sys/types.h> @@ -313,11 +313,10 @@ prt_cache(device_t self, struct aarch64_cache_info *cinfo, int level) void aarch64_printcacheinfo(device_t dev) { - struct aarch64_cache_info *cinfo; + struct cpu_info * const ci = curcpu(); + struct aarch64_cache_info * const cinfo = ci->ci_cacheinfo; int level; - cinfo = curcpu()->ci_cacheinfo; - for (level = 0; level < MAX_CACHE_LEVEL; level++) if (prt_cache(dev, cinfo, level) < 0) break; @@ -382,11 +381,10 @@ ln_dcache_inv_all(int level, struct aarch64_cache_unit *cunit) void aarch64_dcache_wbinv_all(void) { - struct aarch64_cache_info *cinfo; + struct cpu_info * const ci = curcpu(); + struct aarch64_cache_info * const cinfo = ci->ci_cacheinfo; int level; - cinfo = curcpu()->ci_cacheinfo; - for (level = 0; level < MAX_CACHE_LEVEL; level++) { if (cinfo[level].cacheable == CACHE_CACHEABLE_NONE) break; @@ -400,11 +398,10 @@ aarch64_dcache_wbinv_all(void) void aarch64_dcache_inv_all(void) { - struct aarch64_cache_info *cinfo; + struct cpu_info * const ci = curcpu(); + struct aarch64_cache_info * const cinfo = ci->ci_cacheinfo; int level; - cinfo = curcpu()->ci_cacheinfo; - for (level = 0; level < MAX_CACHE_LEVEL; level++) { if (cinfo[level].cacheable == CACHE_CACHEABLE_NONE) break; @@ -418,11 +415,10 @@ aarch64_dcache_inv_all(void) void aarch64_dcache_wb_all(void) { - struct aarch64_cache_info *cinfo; + struct cpu_info * const ci = curcpu(); + struct aarch64_cache_info * const cinfo = ci->ci_cacheinfo; int level; - cinfo = curcpu()->ci_cacheinfo; - for (level = 0; level < MAX_CACHE_LEVEL; level++) { if (cinfo[level].cacheable == CACHE_CACHEABLE_NONE) break; |
