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

Reply via email to