Module Name: src
Committed By: matt
Date: Tue Mar 18 07:03:22 UTC 2014
Modified Files:
src/sys/arch/arm/include: vfpreg.h
src/sys/arch/arm/vfp: vfp_init.c
Log Message:
Enable VFP on MV88SV58XX
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/arm/include/vfpreg.h
cvs rdiff -u -r1.35 -r1.36 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.12 src/sys/arch/arm/include/vfpreg.h:1.13
--- src/sys/arch/arm/include/vfpreg.h:1.12 Mon Feb 24 16:57:57 2014
+++ src/sys/arch/arm/include/vfpreg.h Tue Mar 18 07:03:22 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: vfpreg.h,v 1.12 2014/02/24 16:57:57 christos Exp $ */
+/* $NetBSD: vfpreg.h,v 1.13 2014/03/18 07:03:22 matt Exp $ */
/*
* Copyright (c) 2008 ARM Ltd
@@ -64,6 +64,7 @@
#define FPU_VFP_CORTEXA8 0x410330c0
#define FPU_VFP_CORTEXA9 0x41033090
#define FPU_VFP_CORTEXA15 0x410330f0
+#define FPU_VFP_MV88SV58XX 0x56022090
#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.35 src/sys/arch/arm/vfp/vfp_init.c:1.36
--- src/sys/arch/arm/vfp/vfp_init.c:1.35 Tue Mar 4 08:32:23 2014
+++ src/sys/arch/arm/vfp/vfp_init.c Tue Mar 18 07:03:22 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: vfp_init.c,v 1.35 2014/03/04 08:32:23 matt Exp $ */
+/* $NetBSD: vfp_init.c,v 1.36 2014/03/18 07:03:22 matt Exp $ */
/*
* Copyright (c) 2008 ARM Ltd
@@ -270,6 +270,7 @@ vfp_attach(void)
const char *model = NULL;
if (CPU_ID_ARM11_P(curcpu()->ci_arm_cpuid)
+ || CPU_ID_MV88SV58XX_P(curcpu()->ci_arm_cpuid)
|| CPU_ID_CORTEX_P(curcpu()->ci_arm_cpuid)) {
const uint32_t cpacr_vfp = CPACR_CPn(VFP_COPROC);
const uint32_t cpacr_vfp2 = CPACR_CPn(VFP_COPROC2);
@@ -328,6 +329,9 @@ vfp_attach(void)
case FPU_VFP11_ARM11:
model = "VFP11";
break;
+ case FPU_VFP_MV88SV58XX:
+ model = "VFP3";
+ break;
case FPU_VFP_CORTEXA5:
case FPU_VFP_CORTEXA7:
case FPU_VFP_CORTEXA8:
@@ -337,7 +341,7 @@ vfp_attach(void)
cpu_neon_present = 1;
break;
default:
- aprint_normal_dev(ci->ci_dev, "unrecognized VFP version %x\n",
+ aprint_normal_dev(ci->ci_dev, "unrecognized VFP version %#x\n",
fpsid);
install_coproc_handler(VFP_COPROC, vfp_fpscr_handler);
vfp_fpscr_changable = VFP_FPSCR_CSUM|VFP_FPSCR_ESUM