Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/arm Enable VFP on MV88SV58XX



details:   https://anonhg.NetBSD.org/src/rev/ba5a7883ffba
branches:  trunk
changeset: 327826:ba5a7883ffba
user:      matt <matt%NetBSD.org@localhost>
date:      Tue Mar 18 07:03:22 2014 +0000

description:
Enable VFP on MV88SV58XX

diffstat:

 sys/arch/arm/include/vfpreg.h |  3 ++-
 sys/arch/arm/vfp/vfp_init.c   |  8 ++++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diffs (53 lines):

diff -r b1bc211a65a5 -r ba5a7883ffba sys/arch/arm/include/vfpreg.h
--- a/sys/arch/arm/include/vfpreg.h     Tue Mar 18 06:46:14 2014 +0000
+++ b/sys/arch/arm/include/vfpreg.h     Tue Mar 18 07:03:22 2014 +0000
@@ -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 */
diff -r b1bc211a65a5 -r ba5a7883ffba sys/arch/arm/vfp/vfp_init.c
--- a/sys/arch/arm/vfp/vfp_init.c       Tue Mar 18 06:46:14 2014 +0000
+++ b/sys/arch/arm/vfp/vfp_init.c       Tue Mar 18 07:03:22 2014 +0000
@@ -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 @@
        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 @@
        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 @@
                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



Home | Main Index | Thread Index | Old Index