Module Name: src Committed By: matt Date: Thu Jun 20 05:24:46 UTC 2013
Modified Files: src/sys/arch/arm/include: vfpreg.h src/sys/arch/arm/vfp: vfp_init.c Log Message: Add support for the Cortex-A15 Neon/VFP unit To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/include/vfpreg.h cvs rdiff -u -r1.19 -r1.20 src/sys/arch/arm/vfp/vfp_init.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/include/vfpreg.h diff -u src/sys/arch/arm/include/vfpreg.h:1.8 src/sys/arch/arm/include/vfpreg.h:1.9 --- src/sys/arch/arm/include/vfpreg.h:1.8 Tue Feb 12 15:05:26 2013 +++ src/sys/arch/arm/include/vfpreg.h Thu Jun 20 05:24:46 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: vfpreg.h,v 1.8 2013/02/12 15:05:26 matt Exp $ */ +/* $NetBSD: vfpreg.h,v 1.9 2013/06/20 05:24:46 matt Exp $ */ /* * Copyright (c) 2008 ARM Ltd @@ -63,6 +63,7 @@ #define FPU_VFP_CORTEXA7 0x41023070 #define FPU_VFP_CORTEXA8 0x410330c0 #define FPU_VFP_CORTEXA9 0x41033090 +#define FPU_VFP_CORTEXA15 0x410330f0 #define VFP_FPEXC_EX 0x80000000 /* EXception status bit */ #define VFP_FPEXC_EN 0x40000000 /* VFP Enable bit */ Index: src/sys/arch/arm/vfp/vfp_init.c diff -u src/sys/arch/arm/vfp/vfp_init.c:1.19 src/sys/arch/arm/vfp/vfp_init.c:1.20 --- src/sys/arch/arm/vfp/vfp_init.c:1.19 Tue Feb 5 23:23:34 2013 +++ src/sys/arch/arm/vfp/vfp_init.c Thu Jun 20 05:24:46 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: vfp_init.c,v 1.19 2013/02/05 23:23:34 matt Exp $ */ +/* $NetBSD: vfp_init.c,v 1.20 2013/06/20 05:24:46 matt Exp $ */ /* * Copyright (c) 2008 ARM Ltd @@ -152,6 +152,7 @@ load_vfpregs(const struct vfpreg *fregs) case FPU_VFP_CORTEXA7: case FPU_VFP_CORTEXA8: case FPU_VFP_CORTEXA9: + case FPU_VFP_CORTEXA15: #endif load_vfpregs_hi(fregs->vfp_regs); #ifdef CPU_ARM11 @@ -172,6 +173,7 @@ save_vfpregs(struct vfpreg *fregs) case FPU_VFP_CORTEXA7: case FPU_VFP_CORTEXA8: case FPU_VFP_CORTEXA9: + case FPU_VFP_CORTEXA15: #endif save_vfpregs_hi(fregs->vfp_regs); #ifdef CPU_ARM11 @@ -376,6 +378,7 @@ vfp_attach(void) case FPU_VFP_CORTEXA7: case FPU_VFP_CORTEXA8: case FPU_VFP_CORTEXA9: + case FPU_VFP_CORTEXA15: model = "NEON MPE (VFP 3.0+)"; cpu_neon_present = 1; break; @@ -539,6 +542,7 @@ vfp_state_load(lwp_t *l, u_int flags) case FPU_VFP_CORTEXA7: case FPU_VFP_CORTEXA8: case FPU_VFP_CORTEXA9: + case FPU_VFP_CORTEXA15: write_fpinst2(fregs->vfp_fpinst2); write_fpinst(fregs->vfp_fpinst); break; @@ -588,6 +592,7 @@ vfp_state_save(lwp_t *l, u_int flags) case FPU_VFP_CORTEXA7: case FPU_VFP_CORTEXA8: case FPU_VFP_CORTEXA9: + case FPU_VFP_CORTEXA15: fregs->vfp_fpinst = read_fpinst(); fregs->vfp_fpinst2 = read_fpinst2(); break;