Module Name: src
Committed By: pgoyette
Date: Sun Mar 18 00:35:26 UTC 2018
Modified Files:
src/sys/arch/x86/conf [pgoyette-compat]: files.x86
src/sys/arch/x86/x86 [pgoyette-compat]: cpu_ucode.c
src/sys/arch/xen/conf [pgoyette-compat]: files.xen
Added Files:
src/sys/arch/x86/x86 [pgoyette-compat]: compat_60_cpu_ucode.c
Log Message:
Import more christos@ changes from -current
To generate a diff of this commit:
cvs rdiff -u -r1.97 -r1.97.2.1 src/sys/arch/x86/conf/files.x86
cvs rdiff -u -r0 -r1.1.2.2 src/sys/arch/x86/x86/compat_60_cpu_ucode.c
cvs rdiff -u -r1.5.16.3 -r1.5.16.4 src/sys/arch/x86/x86/cpu_ucode.c
cvs rdiff -u -r1.165.2.1 -r1.165.2.2 src/sys/arch/xen/conf/files.xen
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/x86/conf/files.x86
diff -u src/sys/arch/x86/conf/files.x86:1.97 src/sys/arch/x86/conf/files.x86:1.97.2.1
--- src/sys/arch/x86/conf/files.x86:1.97 Thu Mar 1 06:36:12 2018
+++ src/sys/arch/x86/conf/files.x86 Sun Mar 18 00:35:26 2018
@@ -1,4 +1,4 @@
-# $NetBSD: files.x86,v 1.97 2018/03/01 06:36:12 mrg Exp $
+# $NetBSD: files.x86,v 1.97.2.1 2018/03/18 00:35:26 pgoyette Exp $
# options for MP configuration through the MP spec
defflag opt_mpbios.h MPBIOS MPVERBOSE MPDEBUG MPBIOS_SCANPCI
@@ -111,6 +111,7 @@ file uvm/pmap/pmap_pvt.c machdep
file arch/x86/x86/cpu_ucode.c cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_amd.c cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_intel.c cpu_ucode needs-flag
+file arch/x86/x86/compat_60_cpu_ucode.c compat_60 & cpu_ucode
define lapic
file arch/x86/x86/lapic.c lapic needs-flag
Index: src/sys/arch/x86/x86/cpu_ucode.c
diff -u src/sys/arch/x86/x86/cpu_ucode.c:1.5.16.3 src/sys/arch/x86/x86/cpu_ucode.c:1.5.16.4
--- src/sys/arch/x86/x86/cpu_ucode.c:1.5.16.3 Sat Mar 17 21:37:52 2018
+++ src/sys/arch/x86/x86/cpu_ucode.c Sun Mar 18 00:35:26 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu_ucode.c,v 1.5.16.3 2018/03/17 21:37:52 pgoyette Exp $ */
+/* $NetBSD: cpu_ucode.c,v 1.5.16.4 2018/03/18 00:35:26 pgoyette Exp $ */
/*
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -29,13 +29,11 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpu_ucode.c,v 1.5.16.3 2018/03/17 21:37:52 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu_ucode.c,v 1.5.16.4 2018/03/18 00:35:26 pgoyette Exp $");
#if defined(_KERNEL_OPT)
#include "opt_xen.h"
-
#include "opt_cpu_ucode.h"
-#include "opt_compat_netbsd.h"
#endif
#include <sys/param.h>
@@ -157,36 +155,3 @@ cpu_ucode_apply(const struct cpu_ucode *
return error;
}
#endif
-
-#ifdef COMPAT_60
-int
-compat6_cpu_ucode_get_version(struct compat6_cpu_ucode *data)
-{
- struct cpu_ucode_version ndata;
-
- switch (cpu_vendor) {
- case CPUVENDOR_AMD:
- ndata.loader_version = CPU_UCODE_LOADER_AMD;
- return cpu_ucode_amd_get_version(&ndata, &data->version,
- sizeof(data->version));
- default:
- return EOPNOTSUPP;
- }
-}
-
-int
-compat6_cpu_ucode_apply(const struct compat6_cpu_ucode *data6)
-{
-
- if (cpu_vendor != CPUVENDOR_AMD)
- return EOPNOTSUPP;
-
- struct cpu_ucode data;
-
- data.loader_version = CPU_UCODE_LOADER_AMD;
- data.cpu_nr = CPU_UCODE_ALL_CPUS;
- strcpy(data.fwname, data6->fwname);
-
- return cpu_ucode_apply(&data);
-}
-#endif /* COMPAT60 */
Index: src/sys/arch/xen/conf/files.xen
diff -u src/sys/arch/xen/conf/files.xen:1.165.2.1 src/sys/arch/xen/conf/files.xen:1.165.2.2
--- src/sys/arch/xen/conf/files.xen:1.165.2.1 Sat Mar 17 21:37:52 2018
+++ src/sys/arch/xen/conf/files.xen Sun Mar 18 00:35:26 2018
@@ -1,4 +1,4 @@
-# $NetBSD: files.xen,v 1.165.2.1 2018/03/17 21:37:52 pgoyette Exp $
+# $NetBSD: files.xen,v 1.165.2.2 2018/03/18 00:35:26 pgoyette Exp $
# NetBSD: files.x86,v 1.10 2003/10/08 17:30:00 bouyer Exp
# NetBSD: files.i386,v 1.254 2004/03/25 23:32:10 jmc Exp
@@ -96,6 +96,8 @@ file arch/xen/x86/xenfunc.c
file arch/x86/x86/cpu_ucode.c dom0ops & cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_amd.c dom0ops & cpu_ucode needs-flag
file arch/x86/x86/cpu_ucode_intel.c dom0ops & cpu_ucode needs-flag
+file arch/x86/x86/compat_60_cpu_ucode.c compat_60 & dom0ops & cpu_ucode
+
file arch/xen/xen/xen_machdep.c
file arch/xen/xen/xen_debug.c
Added files:
Index: src/sys/arch/x86/x86/compat_60_cpu_ucode.c
diff -u /dev/null src/sys/arch/x86/x86/compat_60_cpu_ucode.c:1.1.2.2
--- /dev/null Sun Mar 18 00:35:26 2018
+++ src/sys/arch/x86/x86/compat_60_cpu_ucode.c Sun Mar 18 00:35:26 2018
@@ -0,0 +1,81 @@
+/* $NetBSD: compat_60_cpu_ucode.c,v 1.1.2.2 2018/03/18 00:35:26 pgoyette Exp $ */
+/*
+ * Copyright (c) 2012 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Christoph Egger.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+__KERNEL_RCSID(0, "$NetBSD: compat_60_cpu_ucode.c,v 1.1.2.2 2018/03/18 00:35:26 pgoyette Exp $");
+
+#ifdef _KERNEL_OPT
+#include "opt_cpu_ucode.h"
+#include "opt_compat_netbsd.h"
+#endif
+
+#include <sys/param.h>
+#include <sys/cpuio.h>
+#include <sys/cpu.h>
+
+#include <dev/firmload.h>
+
+#include <machine/cpuvar.h>
+#include <machine/cputypes.h>
+
+#include <x86/cpu_ucode.h>
+
+#ifdef COMPAT_60
+int
+compat6_cpu_ucode_get_version(struct compat6_cpu_ucode *data6)
+{
+
+ if (cpu_vendor != CPUVENDOR_AMD)
+ return EOPNOTSUPP;
+
+ struct cpu_ucode_version data;
+
+ data.loader_version = CPU_UCODE_LOADER_AMD;
+ return cpu_ucode_amd_get_version(&data, &data6->version,
+ sizeof(data6->version));
+}
+
+int
+compat6_cpu_ucode_apply(const struct compat6_cpu_ucode *data6)
+{
+
+ if (cpu_vendor != CPUVENDOR_AMD)
+ return EOPNOTSUPP;
+
+ struct cpu_ucode data;
+
+ data.loader_version = CPU_UCODE_LOADER_AMD;
+ data.cpu_nr = CPU_UCODE_ALL_CPUS;
+ strcpy(data.fwname, data6->fwname);
+
+ return cpu_ucode_apply(&data);
+}
+
+#endif /* COMPAT60 */