Current-Users archive

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

amd64 EFI and Xen



Hi!

I got EFI machine(ThinkPad X1 Gen6) in office.
I try to use Xen on this.  But could't boots 8.0/amd64's XEN3_DOM0 kernel
with some errors.

I done fix and implement to multiboot to efiboot.
XEN3_DOM0 boots for -current.  8.0's XEN3_DOM0 can't boot...

Can you marge attached diffs?


known problems:
- amd64 kernel not support multiboot command-line arguments.
  XEN3_DOM0 kernel tries to mount EFI system partision to root-filesystem.

- iwm(4) is not working by this message.

    iwm0: autoconfiguration error: hardware error. stopping device

- Shuld support to multiboot2 instead of multiboot.

Thanks
--
kiyohara

Index: i386/stand/lib/pread.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/stand/lib/pread.c,v
retrieving revision 1.7
diff -u -r1.7 pread.c
--- i386/stand/lib/pread.c	14 Dec 2008 17:03:43 -0000	1.7
+++ i386/stand/lib/pread.c	30 Jan 2019 12:36:02 -0000
@@ -43,7 +43,7 @@
 ssize_t
 pread(int fd, void *dest, size_t size)
 {
-	int             rsize;
+	size_t          rsize;
 
 	if (!buf)
 		buf = alloc(BUFSIZE);
Index: i386/stand/efiboot/bootx64/startprog64.S
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/stand/efiboot/bootx64/startprog64.S,v
retrieving revision 1.3
diff -u -r1.3 startprog64.S
--- i386/stand/efiboot/bootx64/startprog64.S	11 Feb 2017 10:23:39 -0000	1.3
+++ i386/stand/efiboot/bootx64/startprog64.S	30 Jan 2019 12:36:02 -0000
@@ -78,7 +78,7 @@
 	.p2align 4,,15
 
 /*
- * startprog64(loadddr,entry,stack,kern_load,kern_start,kern_size)
+ * startprog64(kern_start,kern_load,stack,kern_size,loadaddr,entry)
  */
 ENTRY(startprog64_start)
 start:
Index: i386/i386/multiboot.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/i386/multiboot.c,v
retrieving revision 1.24
diff -u -r1.24 multiboot.c
--- i386/i386/multiboot.c	8 Nov 2018 06:23:48 -0000	1.24
+++ i386/i386/multiboot.c	30 Jan 2019 12:36:02 -0000
@@ -139,27 +139,28 @@
 	memcpy(midest, mi, sizeof(Multiboot_Info));
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_CMDLINE) {
-		strncpy(RELOC(void *, Multiboot_Cmdline), mi->mi_cmdline,
-		    sizeof(Multiboot_Cmdline));
-		midest->mi_cmdline = (char *)&Multiboot_Cmdline;
+		strncpy(RELOC(void *, Multiboot_Cmdline),
+		    (void *)mi->mi_cmdline, sizeof(Multiboot_Cmdline));
+		midest->mi_cmdline = (multiboot_uint32_t)&Multiboot_Cmdline;
 	}
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_LOADER_NAME) {
 		strncpy(RELOC(void *, Multiboot_Loader_Name),
-		    mi->mi_loader_name, sizeof(Multiboot_Loader_Name));
-		midest->mi_loader_name = (char *)&Multiboot_Loader_Name;
+		    (void *)mi->mi_loader_name, sizeof(Multiboot_Loader_Name));
+		midest->mi_loader_name =
+		    (multiboot_uint32_t)&Multiboot_Loader_Name;
 	}
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_MMAP) {
 		memcpy(RELOC(void *, Multiboot_Mmap),
 		    (void *)mi->mi_mmap_addr, mi->mi_mmap_length);
-		midest->mi_mmap_addr = (vaddr_t)&Multiboot_Mmap;
+		midest->mi_mmap_addr = (multiboot_uint32_t)&Multiboot_Mmap;
 	}
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_DRIVES) {
 		memcpy(RELOC(void *, Multiboot_Drives),
 		    (void *)mi->mi_drives_addr, mi->mi_drives_length);
-		midest->mi_drives_addr = (vaddr_t)&Multiboot_Drives;
+		midest->mi_drives_addr = (multiboot_uint32_t)&Multiboot_Drives;
 	}
 
 	copy_syms(mi);
@@ -214,10 +215,11 @@
 	    mi->mi_flags);
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_LOADER_NAME)
-		printf("multiboot: Boot loader: %s\n", mi->mi_loader_name);
+		printf("multiboot: Boot loader: %s\n",
+		    (char *)mi->mi_loader_name);
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_CMDLINE)
-		printf("multiboot: Command line: %s\n", mi->mi_cmdline);
+		printf("multiboot: Command line: %s\n", (char *)mi->mi_cmdline);
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_MEMORY)
 		printf("multiboot: %u KB lower memory, %u KB upper memory\n",
@@ -439,7 +441,7 @@
 	found = false;
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_CMDLINE)
-		found = optstr_get(mi->mi_cmdline, "root", bi.devname,
+		found = optstr_get((char *)mi->mi_cmdline, "root", bi.devname,
 		    sizeof(bi.devname));
 
 	if (!found && (mi->mi_flags & MULTIBOOT_INFO_HAS_BOOT_DEVICE)) {
@@ -492,7 +494,7 @@
 
 	if (strncmp(Multiboot_Loader_Name, "GNU GRUB ",
 	    sizeof(Multiboot_Loader_Name)) > 0) {
-		cl = mi->mi_cmdline;
+		cl = (char *)mi->mi_cmdline;
 		while (*cl != '\0' && *cl != '/')
 			cl++;
 		cl2 = cl;
@@ -536,8 +538,8 @@
 	found = false;
 
 	if (mi->mi_flags & MULTIBOOT_INFO_HAS_CMDLINE)
-		found = optstr_get(mi->mi_cmdline, "console", bi.devname,
-		    sizeof(bi.devname));
+		found = optstr_get((char *)mi->mi_cmdline, "console",
+		    bi.devname, sizeof(bi.devname));
 
 	if (found) {
 		bool valid;
@@ -545,15 +547,15 @@
 		if (strncmp(bi.devname, "com", sizeof(bi.devname)) == 0) {
 			char tmp[10];
 
-			found = optstr_get(mi->mi_cmdline, "console_speed",
-			    tmp, sizeof(tmp));
+			found = optstr_get((char *)mi->mi_cmdline,
+			    "console_speed", tmp, sizeof(tmp));
 			if (found)
 				bi.speed = strtoul(tmp, NULL, 10);
 			else
 				bi.speed = 0; /* Use default speed. */
 
-			found = optstr_get(mi->mi_cmdline, "console_addr",
-			    tmp, sizeof(tmp));
+			found = optstr_get((char *)mi->mi_cmdline,
+			    "console_addr", tmp, sizeof(tmp));
 			if (found) {
 				if (tmp[0] == '0' && tmp[1] == 'x')
 					bi.addr = strtoul(tmp + 2, NULL, 16);
@@ -588,7 +590,7 @@
 	if (!(mi->mi_flags & MULTIBOOT_INFO_HAS_CMDLINE))
 		return;
 
-	cl = mi->mi_cmdline;
+	cl = (char *)mi->mi_cmdline;
 
 	/* Skip kernel file name. */
 	while (*cl != '\0' && *cl != ' ')
Index: i386/include/multiboot.h
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/include/multiboot.h,v
retrieving revision 1.10
diff -u -r1.10 multiboot.h
--- i386/include/multiboot.h	13 Nov 2018 11:01:54 -0000	1.10
+++ i386/include/multiboot.h	30 Jan 2019 12:36:02 -0000
@@ -31,6 +31,13 @@
 
 /* --------------------------------------------------------------------- */
 
+#if !defined(_LOCORE)
+typedef unsigned char		multiboot_uint8_t;
+typedef unsigned short		multiboot_uint16_t;
+typedef unsigned int		multiboot_uint32_t;
+typedef unsigned long long	multiboot_uint64_t;
+#endif /* !defined(_LOCORE) */
+
 /*
  * Multiboot header structure.
  */
@@ -42,22 +49,22 @@
 
 #if !defined(_LOCORE)
 struct multiboot_header {
-	uint32_t	mh_magic;
-	uint32_t	mh_flags;
-	uint32_t	mh_checksum;
+	multiboot_uint32_t	mh_magic;
+	multiboot_uint32_t	mh_flags;
+	multiboot_uint32_t	mh_checksum;
 
 	/* Valid if mh_flags sets MULTIBOOT_HEADER_HAS_ADDR. */
-	paddr_t		mh_header_addr;
-	paddr_t		mh_load_addr;
-	paddr_t		mh_load_end_addr;
-	paddr_t		mh_bss_end_addr;
-	paddr_t		mh_entry_addr;
+	multiboot_uint32_t	mh_header_addr;
+	multiboot_uint32_t	mh_load_addr;
+	multiboot_uint32_t	mh_load_end_addr;
+	multiboot_uint32_t	mh_bss_end_addr;
+	multiboot_uint32_t	mh_entry_addr;
 
 	/* Valid if mh_flags sets MULTIBOOT_HEADER_HAS_VBE. */
-	uint32_t	mh_mode_type;
-	uint32_t	mh_width;
-	uint32_t	mh_height;
-	uint32_t	mh_depth;
+	multiboot_uint32_t	mh_mode_type;
+	multiboot_uint32_t	mh_width;
+	multiboot_uint32_t	mh_height;
+	multiboot_uint32_t	mh_depth;
 };
 #endif /* !defined(_LOCORE) */
 
@@ -90,78 +97,78 @@
 
 #if !defined(_LOCORE)
 struct multiboot_info {
-	uint32_t	mi_flags;
+	multiboot_uint32_t	mi_flags;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_MEMORY. */
-	uint32_t	mi_mem_lower;
-	uint32_t	mi_mem_upper;
+	multiboot_uint32_t	mi_mem_lower;
+	multiboot_uint32_t	mi_mem_upper;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_BOOT_DEVICE. */
-	uint8_t		mi_boot_device_part3;
-	uint8_t		mi_boot_device_part2;
-	uint8_t		mi_boot_device_part1;
-	uint8_t		mi_boot_device_drive;
+	multiboot_uint8_t	mi_boot_device_part3;
+	multiboot_uint8_t	mi_boot_device_part2;
+	multiboot_uint8_t	mi_boot_device_part1;
+	multiboot_uint8_t	mi_boot_device_drive;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_CMDLINE. */
-	char *		mi_cmdline;
+	multiboot_uint32_t 	mi_cmdline;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_MODS. */
-	uint32_t	mi_mods_count;
-	vaddr_t		mi_mods_addr;
+	multiboot_uint32_t	mi_mods_count;
+	multiboot_uint32_t	mi_mods_addr;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_{AOUT,ELF}_SYMS. */
-	uint32_t	mi_elfshdr_num;
-	uint32_t	mi_elfshdr_size;
-	vaddr_t		mi_elfshdr_addr;
-	uint32_t	mi_elfshdr_shndx;
+	multiboot_uint32_t	mi_elfshdr_num;
+	multiboot_uint32_t	mi_elfshdr_size;
+	multiboot_uint32_t	mi_elfshdr_addr;
+	multiboot_uint32_t	mi_elfshdr_shndx;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_MMAP. */
-	uint32_t	mi_mmap_length;
-	vaddr_t		mi_mmap_addr;
+	multiboot_uint32_t	mi_mmap_length;
+	multiboot_uint32_t	mi_mmap_addr;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_DRIVES. */
-	uint32_t	mi_drives_length;
-	vaddr_t		mi_drives_addr;
+	multiboot_uint32_t	mi_drives_length;
+	multiboot_uint32_t	mi_drives_addr;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_CONFIG_TABLE. */
-	void *		unused_mi_config_table;
+	multiboot_uint32_t	unused_mi_config_table;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_LOADER_NAME. */
-	char *		mi_loader_name;
+	multiboot_uint32_t	mi_loader_name;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_APM. */
-	void *		unused_mi_apm_table;
+	multiboot_uint32_t	unused_mi_apm_table;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_VBE. */
-	void *		unused_mi_vbe_control_info;
-	void *		unused_mi_vbe_mode_info;
-	uint16_t	unused_mi_vbe_mode;
-	uint16_t	unused_mi_vbe_interface_seg;
-	uint16_t	unused_mi_vbe_interface_off;
-	uint16_t	unused_mi_vbe_interface_len;
+	multiboot_uint32_t	unused_mi_vbe_control_info;
+	multiboot_uint32_t	unused_mi_vbe_mode_info;
+	multiboot_uint16_t	unused_mi_vbe_mode;
+	multiboot_uint16_t	unused_mi_vbe_interface_seg;
+	multiboot_uint16_t	unused_mi_vbe_interface_off;
+	multiboot_uint16_t	unused_mi_vbe_interface_len;
 
 	/* Valid if mi_flags sets MULTIBOOT_INFO_HAS_FRAMEBUFFER. */
-	uint64_t	framebuffer_addr;
-	uint32_t	framebuffer_pitch;
-	uint32_t	framebuffer_width;
-	uint32_t	framebuffer_height;
-	uint8_t		framebuffer_bpp;
+	multiboot_uint64_t	framebuffer_addr;
+	multiboot_uint32_t	framebuffer_pitch;
+	multiboot_uint32_t	framebuffer_width;
+	multiboot_uint32_t	framebuffer_height;
+	multiboot_uint8_t		framebuffer_bpp;
 #define MULTIBOOT_FRAMEBUFFER_TYPE_INDEXED 	0
 #define MULTIBOOT_FRAMEBUFFER_TYPE_RGB     	1
 #define MULTIBOOT_FRAMEBUFFER_TYPE_EGA_TEXT     2
-	uint8_t framebuffer_type;
+	multiboot_uint8_t framebuffer_type;
 	union {
 		struct {
-			uint32_t framebuffer_palette_addr;
-			uint16_t framebuffer_palette_num_colors;
+			multiboot_uint32_t framebuffer_palette_addr;
+			multiboot_uint16_t framebuffer_palette_num_colors;
 		};
 		struct {
-			uint8_t framebuffer_red_field_position;
-			uint8_t framebuffer_red_mask_size;
-			uint8_t framebuffer_green_field_position;
-			uint8_t framebuffer_green_mask_size;
-			uint8_t framebuffer_blue_field_position;
-			uint8_t framebuffer_blue_mask_size;
+			multiboot_uint8_t framebuffer_red_field_position;
+			multiboot_uint8_t framebuffer_red_mask_size;
+			multiboot_uint8_t framebuffer_green_field_position;
+			multiboot_uint8_t framebuffer_green_mask_size;
+			multiboot_uint8_t framebuffer_blue_field_position;
+			multiboot_uint8_t framebuffer_blue_mask_size;
 		};
 	};
 
@@ -174,12 +181,12 @@
  * pointed to by mi_drives_addr.
  */
 struct multiboot_drive {
-	uint32_t	md_length;
-	uint8_t		md_number;
-	uint8_t		md_mode;
-	uint16_t	md_cylinders;
-	uint8_t		md_heads;
-	uint8_t		md_sectors;
+	multiboot_uint32_t	md_length;
+	multiboot_uint8_t	md_number;
+	multiboot_uint8_t	md_mode;
+	multiboot_uint16_t	md_cylinders;
+	multiboot_uint8_t	md_heads;
+	multiboot_uint8_t	md_sectors;
 
 	/* The variable-sized 'ports' field comes here, so this structure
 	 * can be longer. */
@@ -196,10 +203,10 @@
  * have to count mm_size + 4 bytes.
  */
 struct multiboot_mmap {
-	uint32_t	mm_size;
-	uint64_t	mm_base_addr;
-	uint64_t	mm_length;
-	uint32_t	mm_type;
+	multiboot_uint32_t	mm_size;
+	multiboot_uint64_t	mm_base_addr;
+	multiboot_uint64_t	mm_length;
+	multiboot_uint32_t	mm_type;
 };
 
 /*
@@ -208,10 +215,10 @@
  */
 
 struct multiboot_module {
-	uint32_t	mmo_start;
-	uint32_t	mmo_end;
-	char *		mmo_string;
-	uint32_t	mmo_reserved;
+	multiboot_uint32_t	mmo_start;
+	multiboot_uint32_t	mmo_end;
+	multiboot_uint32_t	mmo_string;
+	multiboot_uint32_t	mmo_reserved;
 };
 
 #endif /* !defined(_LOCORE) */
Index: i386/stand/efiboot/bootx64/Makefile
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/stand/efiboot/bootx64/Makefile,v
retrieving revision 1.1
diff -u -r1.1 Makefile
--- i386/stand/efiboot/bootx64/Makefile	24 Jan 2017 11:09:14 -0000	1.1
+++ i386/stand/efiboot/bootx64/Makefile	30 Jan 2019 12:36:02 -0000
@@ -4,7 +4,7 @@
 OBJFMT=		pei-x86-64
 NEWVERSWHAT=	"EFI Boot (x64)"
 
-EXTRA_SOURCES=	efibootx64.c startprog64.S
+EXTRA_SOURCES=	efibootx64.c startprog64.S multiboot64.S
 
 COPTS+=		-mno-red-zone
 CPPFLAGS+=	-DEFI_FUNCTION_WRAPPER
Index: i386/stand/efiboot/bootx64/efibootx64.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/stand/efiboot/bootx64/efibootx64.c,v
retrieving revision 1.4
diff -u -r1.4 efibootx64.c
--- i386/stand/efiboot/bootx64/efibootx64.c	27 Mar 2018 14:15:05 -0000	1.4
+++ i386/stand/efiboot/bootx64/efibootx64.c	30 Jan 2019 12:36:02 -0000
@@ -30,18 +30,27 @@
 
 #include <sys/bootblock.h>
 
+#include <i386/multiboot.h>
+
 void startprog64_start(physaddr_t, physaddr_t, physaddr_t, u_long,
     void *, physaddr_t);
 extern void (*startprog64)(physaddr_t, physaddr_t, physaddr_t, u_long,
     void *, physaddr_t);
 extern u_int startprog64_size;
 
+void multiboot64_start(physaddr_t, physaddr_t, physaddr_t, u_long,
+    void *, physaddr_t);
+extern void (*multiboot64)(physaddr_t, physaddr_t, physaddr_t, u_long,
+    void *, physaddr_t);
+extern u_int multiboot64_size;
+
 void
 efi_md_init(void)
 {
 	EFI_STATUS status;
 	EFI_PHYSICAL_ADDRESS addr = EFI_ALLOCATE_MAX_ADDRESS;
-	u_int sz = EFI_SIZE_TO_PAGES(startprog64_size);
+	u_int sz = EFI_SIZE_TO_PAGES(startprog64_size) +
+	    + EFI_SIZE_TO_PAGES(multiboot64_size);
 
 	status = uefi_call_wrapper(BS->AllocatePages, 4, AllocateMaxAddress,
 	    EfiLoaderData, sz, &addr);
@@ -50,6 +59,9 @@
 		    __func__, sz, (uintmax_t)status);
 	startprog64 = (void *)addr;
 	CopyMem(startprog64, startprog64_start, startprog64_size);
+	multiboot64 = (void *)addr +
+	    (EFI_SIZE_TO_PAGES(startprog64_size) << EFI_PAGE_SHIFT);
+	CopyMem(multiboot64, multiboot64_start, multiboot64_size);
 }
 
 /* ARGSUSED */
@@ -72,5 +84,12 @@
 void
 multiboot(physaddr_t entry, physaddr_t header, physaddr_t sp)
 {
-	panic("%s: not implemented", __func__);
+	uint32_t *newsp = (void *)((char *)multiboot64 + multiboot64_size);
+
+	/* Copy the Multiboot information structure to new stack pointer */
+	newsp -= sizeof(struct multiboot_info);
+	memcpy(newsp, (void *)header, sizeof(struct multiboot_info));
+
+	(*multiboot64)(efi_kernel_start, efi_kernel_start + efi_loadaddr,
+	    (physaddr_t)newsp, efi_kernel_size, multiboot64, entry);
 }
Index: i386/stand/lib/exec.c
===================================================================
RCS file: /cvsroot/src/sys/arch/i386/stand/lib/exec.c,v
retrieving revision 1.69
diff -u -r1.69 exec.c
--- i386/stand/lib/exec.c	7 Oct 2017 10:26:38 -0000	1.69
+++ i386/stand/lib/exec.c	30 Jan 2019 12:36:02 -0000
@@ -861,7 +861,7 @@
 		len = strlen(file) + 1 + strlen(args) + 1;
 		cmdline = alloc(len);
 		snprintf(cmdline, len, "%s %s", file, args);
-		mbi->mi_cmdline = (char *) vtophys(cmdline);
+		mbi->mi_cmdline = vtophys(cmdline);
 	}
 
 	/* pull in any modules if necessary */
@@ -877,7 +877,7 @@
 			for (i = 0; i < btinfo_modulelist->num; i++) {
 				mbm[i].mmo_start = bim->base;
 				mbm[i].mmo_end = bim->base + bim->len;
-				mbm[i].mmo_string = (char *)vtophys(bim->path);
+				mbm[i].mmo_string = vtophys(bim->path);
 				mbm[i].mmo_reserved = 0;
 				bim++;
 			}
--- i386/stand/efiboot/bootx64/multiboot64.S.orig	1970-01-01 09:00:00.000000000 +0900
+++ i386/stand/efiboot/bootx64/multiboot64.S	2019-01-25 20:22:04.777791534 +0900
@@ -0,0 +1,269 @@
+/*	$NetBSD: startprog64.S,v 1.3 2017/02/11 10:23:39 nonaka Exp $	*/
+/*	NetBSD: startprog.S,v 1.3 2003/02/01 14:48:18 dsl Exp	*/
+
+/* starts program in protected mode / flat space
+ with given stackframe
+ needs global variables flatcodeseg and flatdataseg
+ (gdt offsets)
+  derived from: NetBSD:sys/arch/i386/boot/asm.S
+ */
+
+/*
+ * Ported to boot 386BSD by Julian Elischer (julian%tfs.com@localhost) Sept 1992
+ *
+ * Mach Operating System
+ * Copyright (c) 1992, 1991 Carnegie Mellon University
+ * All Rights Reserved.
+ *
+ * Permission to use, copy, modify and distribute this software and its
+ * documentation is hereby granted, provided that both the copyright
+ * notice and this permission notice appear in all copies of the
+ * software, derivative works or modified versions, and any portions
+ * thereof, and that both notices appear in supporting documentation.
+ *
+ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
+ * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
+ * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ *
+ * Carnegie Mellon requests users of this software to return to
+ *
+ *  Software Distribution Coordinator  or  Software.Distribution%CS.CMU.EDU@localhost
+ *  School of Computer Science
+ *  Carnegie Mellon University
+ *  Pittsburgh PA 15213-3890
+ *
+ * any improvements or extensions that they make and grant Carnegie Mellon
+ * the rights to redistribute these changes.
+ */
+
+/*
+  Copyright 1988, 1989, 1990, 1991, 1992
+   by Intel Corporation, Santa Clara, California.
+
+                All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and
+its documentation for any purpose and without fee is hereby
+granted, provided that the above copyright notice appears in all
+copies and that both the copyright notice and this permission notice
+appear in supporting documentation, and that the name of Intel
+not be used in advertising or publicity pertaining to distribution
+of the software without specific, written prior permission.
+
+INTEL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE
+INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
+IN NO EVENT SHALL INTEL BE LIABLE FOR ANY SPECIAL, INDIRECT, OR
+CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+LOSS OF USE, DATA OR PROFITS, WHETHER IN ACTION OF CONTRACT,
+NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+*/
+
+#include <machine/asm.h>
+#include <machine/specialreg.h>
+
+#define _LOCORE
+#include <i386/multiboot.h>
+
+#define	CODE_SEGMENT	0x08
+#define	DATA_SEGMENT	0x10
+
+	.align	16
+	.globl _C_LABEL(multiboot64)
+_C_LABEL(multiboot64):
+	.quad 0
+
+	.globl _C_LABEL(multiboot64_size)
+_C_LABEL(multiboot64_size):
+	.long multiboot64_end - _C_LABEL(multiboot64_start)
+
+	.text
+	.p2align 4,,15
+
+/*
+ * multiboot64(kern_start,kern_load,stack,kern_size,loadaddr,entry)
+ */
+ENTRY(multiboot64_start)
+start:
+	/*
+	 * This function is to call the loaded kernel's start() with
+	 * 32bit segment mode from x64 mode.
+	 * %rdi: kernel start address
+	 * %rsi: loaded kernel address
+	 * %rdx: stack address
+	 * %rcx: loaded kernel size
+	 * %r8 : loaded start address
+	 * %r9 : kernel entry address
+	 */
+
+	cld		/* LynxOS depends on it */
+
+	cli
+
+	/* Copy kernel */
+	mov	%rcx, %r12		/* original kernel size */
+	movq	%rdi, %r11		/* for misaligned check */
+
+#if !defined(NO_OVERLAP)
+	movq	%rdi, %r13
+	subq	%rsi, %r13
+#endif
+
+	shrq	$3, %rcx		/* count for copy by words */
+	jz	8f			/* j if less than 8 bytes */
+
+	lea	-8(%rdi, %r12), %r14	/* target address of last 8 */
+	mov	-8(%rsi, %r12), %r15	/* get last word */
+#if !defined(NO_OVERLAP)
+	cmpq	%r12, %r13		/* overlapping? */
+	jb	10f
+#endif
+
+/*
+ * Non-overlaping, copy forwards.
+ * Newer Intel cpus (Nehalem) will do 16byte read/write transfers
+ * if %ecx is more than 76.
+ * AMD might do something similar some day.
+ */
+	and	$7, %r11		/* destination misaligned ? */
+	jnz	2f
+	rep
+	movsq
+	mov	%r15, (%r14)		/* write last word */
+	jmp	.Lcopy_done
+
+/*
+ * Destination misaligned
+ * AMD say it is better to align the destination (not the source).
+ * This will also re-align copies if the source and dest are both
+ * misaligned by the same amount)
+ * (I think Nehalem will use its accelerated copy if the source
+ * and destination have the same alignment.)
+ */
+2:
+	lea	-9(%r11, %r12), %rcx	/* post re-alignment count */
+	neg	%r11			/* now -1 .. -7 */
+	mov	(%rsi), %r12		/* get first word */
+	mov	%rdi, %r13		/* target for first word */
+	lea	8(%rsi, %r11), %rsi
+	lea	8(%rdi, %r11), %rdi
+	shr	$3, %rcx
+	rep
+	movsq
+	mov	%r12, (%r13)		/* write first word */
+	mov	%r15, (%r14)		/* write last word */
+	jmp	.Lcopy_done
+
+#if !defined(NO_OVERLAP)
+/* Must copy backwards.
+ * Reverse copy is probably easy to code faster than 'rep movds'
+ * since that requires (IIRC) an extra clock every 3 iterations (AMD).
+ * However I don't suppose anything cares that much!
+ * The big cost is the std/cld pair - reputedly 50+ cycles on Netburst P4.
+ * The copy is aligned with the buffer start (more likely to
+ * be a multiple of 8 than the end).
+ */
+10:
+	lea	-8(%rsi, %rcx, 8), %rsi
+	lea	-8(%rdi, %rcx, 8), %rdi
+	std
+	rep
+	movsq
+	cld
+	mov	%r15, (%r14)	/* write last bytes */
+	jmp	.Lcopy_done
+#endif
+
+/* Less than 8 bytes to copy, copy by bytes */
+/* Intel Nehalem optimise 'rep movsb' for <= 7 bytes (9-15 clocks).
+ * For longer transfers it is 50+ !
+ */
+8:	mov	%r12, %rcx
+
+#if !defined(NO_OVERLAP)
+	cmpq	%r12, %r13	/* overlapping? */
+	jb	81f
+#endif
+
+	/* nope, copy forwards. */
+	rep
+	movsb
+	jmp	.Lcopy_done
+
+#if !defined(NO_OVERLAP)
+/* Must copy backwards */
+81:
+	lea	-1(%rsi, %rcx), %rsi
+	lea	-1(%rdi, %rcx), %rdi
+	std
+	rep
+	movsb
+	cld
+#endif
+	/* End of copy kernel */
+.Lcopy_done:
+
+	mov	%r8, %rdi	/* %rdi: loaded start address */
+	mov	%r9, %rsi	/* %rsi: kernel entry address */
+
+	/* Prepare jump address */
+	lea	(start32a - start)(%rdi), %rax
+	movl	%eax, (start32r - start)(%rdi)
+
+	/* Setup GDT */
+	lea	(gdt - start)(%rdi), %rax
+	mov	%rax, (gdtrr - start)(%rdi)
+	lgdt	(gdtr - start)(%rdi)
+
+	/* Jump to set %cs */
+	ljmp	*(start32r - start)(%rdi)
+
+	.align	4
+	.code32
+start32a:
+	movl	$DATA_SEGMENT, %eax
+	movw	%ax, %ds
+	movw	%ax, %es
+	movw	%ax, %fs
+	movw	%ax, %gs
+	movw	%ax, %ss
+
+	movl	%edx, %esp
+	movl	%edx, %ebx
+
+	/* Disable Paging in CR0 */
+	movl	%cr0, %eax
+	andl	$(~CR0_PG), %eax
+	orl	$CR0_PE, %eax
+	movl	%eax, %cr0
+
+	/* Disable PAE in CR4 */
+	movl	%cr4, %eax
+	andl	$(~CR4_PAE), %eax
+	movl	%eax, %cr4
+
+	jmp	start32b
+
+	.align	4
+start32b:
+	movl	$MULTIBOOT_INFO_MAGIC,%eax
+	call	*%esi
+
+	.align	16
+start32r:
+	.long	0
+	.long	CODE_SEGMENT
+	.align	16
+gdt:
+	.long	0, 0
+	.byte	0xff, 0xff, 0x00, 0x00, 0x00, 0x9f, 0xcf, 0x00
+	.byte	0xff, 0xff, 0x00, 0x00, 0x00, 0x93, 0xcf, 0x00
+gdtr:
+	.word	gdtr - gdt
+gdtrr:
+	.quad
+start32end:
+	/* Space for the stack */
+	.align	16
+	.space	8192
+multiboot64_end:
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
    2018 The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 8.0 (GENERIC) #0: Tue Jul 17 14:59:51 UTC 2018
	mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/amd64/compile/GENERIC
total memory = 16128 MB
avail memory = 15635 MB
cpu_rng: RDSEED
rnd: seeded with 128 bits
timecounter: Timecounters tick every 10.000 msec
Kernelized RAIDframe activated
running cgd selftest aes-xts-256 aes-xts-512 done
timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
efi: systbl at pa 4f040018
LENOVO 20KGCTO1WW (ThinkPad X1 Carbon 6th)
mainbus0 (root)
ACPI: RSDP 0x000000004FFFE014 000024 (v02 LENOVO)
ACPI: XSDT 0x000000004FFB2188 000124 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: FACP 0x000000004FFEB000 0000F4 (v05 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: DSDT 0x000000004FFC0000 02622C (v02 LENOVO SKL      00000000 INTL 20160527)
ACPI: FACS 0x000000004FF3D000 000040
ACPI: SSDT 0x000000004FFF3000 0099B2 (v02 LENOVO DptfTabl 00001000 INTL 20160527)
ACPI: SSDT 0x000000004FFF2000 0003DB (v02 LENOVO Tpm2Tabl 00001000 INTL 20160527)
ACPI: TPM2 0x000000004FFF1000 000034 (v03 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: UEFI 0x000000004FF53000 000042 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: SSDT 0x000000004FFED000 0030A3 (v02 LENOVO SaSsdt   00003000 INTL 20160527)
ACPI: SSDT 0x000000004FFEC000 0005C6 (v02 LENOVO PerfTune 00001000 INTL 20160527)
ACPI: HPET 0x000000004FFEA000 000038 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: APIC 0x000000004FFE9000 00012C (v03 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: MCFG 0x000000004FFE8000 00003C (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: ECDT 0x000000004FFE7000 000053 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: SSDT 0x000000004FFBE000 001C9C (v02 LENOVO RVP7Rtd3 00001000 INTL 20160527)
ACPI: SSDT 0x000000004FFBC000 0017D7 (v02 LENOVO ProjSsdt 00000010 INTL 20160527)
ACPI: BOOT 0x000000004FFBB000 000028 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: BATB 0x000000004FFBA000 00004A (v02 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: SLIC 0x000000004FFB9000 000176 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: SSDT 0x000000004FFB7000 0017AE (v02 LENOVO CpuSsdt  00003000 INTL 20160527)
ACPI: SSDT 0x000000004FFB6000 00056D (v02 LENOVO CtdpB    00001000 INTL 20160527)
ACPI: SSDT 0x000000004FFB5000 0006BF (v02 LENOVO UsbCTabl 00001000 INTL 20160527)
ACPI: LPIT 0x000000004FFB4000 000094 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: WSMT 0x000000004FFB3000 000028 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: SSDT 0x000000004FFFD000 0001D8 (v02 LENOVO HdaDsp   00000000 INTL 20160527)
ACPI: SSDT 0x000000004FFB1000 000590 (v02 LENOVO TbtTypeC 00000000 INTL 20160527)
ACPI: SSDT 0x000000004FFB0000 0002D1 (v02 LENOVO Wwan     00000001 INTL 20160527)
ACPI: DBGP 0x000000004FFAF000 000034 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: DBG2 0x000000004FFAE000 000054 (v00 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: MSDM 0x000000004FFAD000 000055 (v03 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: DMAR 0x000000004FFAC000 0000CC (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: NHLT 0x000000004FFAB000 00002D (v00 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: ASF! 0x000000004FFAA000 0000A0 (v32 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: FPDT 0x000000004FFA9000 000044 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: UEFI 0x000000004FF2B000 00013E (v01 LENOVO TP-N23   00001300 PTEC 00000002)
ACPI: Executed 20 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: 13 ACPI AML tables successfully acquired and loaded
ioapic0 at mainbus0 apid 2: pa 0xfec00000, version 0x20, 120 pins
cpu0 at mainbus0 apid 0
cpu0: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu0: package 0, core 0, smt 0
cpu1 at mainbus0 apid 2
cpu1: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu1: package 0, core 1, smt 0
cpu2 at mainbus0 apid 4
cpu2: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu2: package 0, core 2, smt 0
cpu3 at mainbus0 apid 6
cpu3: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu3: package 0, core 3, smt 0
cpu4 at mainbus0 apid 1
cpu4: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu4: package 0, core 0, smt 1
cpu5 at mainbus0 apid 3
cpu5: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu5: package 0, core 1, smt 1
cpu6 at mainbus0 apid 5
cpu6: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu6: package 0, core 2, smt 1
cpu7 at mainbus0 apid 7
cpu7: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
cpu7: package 0, core 3, smt 1
acpi0 at mainbus0: Intel ACPICA 20170303
acpi0: X/RSDT: OemId <LENOVO,TP-N23  ,00001300>, AslId <PTEC,00000002>
acpiecdt0 at acpi0: ACPI Embedded Controller via ECDT
acpi0: MCFG: segment 0, bus 0-127, address 0x00000000f0000000
ACPI: Dynamic OEM Table Load:
ACPI: SSDT 0xFFFFFE811CE14808 0003FF (v02 PmRef  Cpu0Cst  00003001 INTL 20160527)
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Dynamic OEM Table Load:
ACPI: SSDT 0xFFFFFE811CE14008 0005EE (v02 PmRef  Cpu0Ist  00003000 INTL 20160527)
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Dynamic OEM Table Load:
ACPI: SSDT 0xFFFFFE811CE68008 000D14 (v02 PmRef  ApIst    00003000 INTL 20160527)
ACPI: Executed 1 blocks of module-level executable AML code
ACPI: Dynamic OEM Table Load:
ACPI: SSDT 0xFFFFFE849D329808 00030A (v02 PmRef  ApCst    00003000 INTL 20160527)
ACPI: Executed 1 blocks of module-level executable AML code
acpi0: SCI interrupting at int 9
timecounter: Timecounter "ACPI-Fast" frequency 3579545 Hz quality 1000
hpet0 at acpi0: high precision event timer (mem 0xfed00000-0xfed00400)
timecounter: Timecounter "hpet0" frequency 24000000 Hz quality 2000
acpiec0 at acpi0 (EC, PNP0C09-0): using acpiecdt0
acpivga0 at acpi0 (GFX0): ACPI Display Adapter
acpiout0 at acpivga0 (DD01, 0x0100): ACPI Display Output Device
acpiout1 at acpivga0 (DD02, 0x0002): ACPI Display Output Device
acpiout2 at acpivga0 (DD03, 0x0200): ACPI Display Output Device
acpiout3 at acpivga0 (DD04, 0x0004): ACPI Display Output Device
acpiout4 at acpivga0 (DD05, 0x0005): ACPI Display Output Device
acpiout5 at acpivga0 (DD06, 0x0006): ACPI Display Output Device
acpiout6 at acpivga0 (DD07, 0x0007): ACPI Display Output Device
acpiout7 at acpivga0 (DD08, 0x0008): ACPI Display Output Device
acpiout8 at acpivga0 (DD09, 0x0009): ACPI Display Output Device
acpiout9 at acpivga0 (DD0A, 0x000a): ACPI Display Output Device
acpiout10 at acpivga0 (DD0B, 0x000b): ACPI Display Output Device
acpiout11 at acpivga0 (DD0C, 0x000c): ACPI Display Output Device
acpiout12 at acpivga0 (DD0D, 0x000d): ACPI Display Output Device
acpiout13 at acpivga0 (DD0E, 0x000e): ACPI Display Output Device
acpiout14 at acpivga0 (DD0F, 0x000f): ACPI Display Output Device
acpiout15 at acpivga0 (DD1F, 0x0400): ACPI Display Output Device
acpiout15: brightness levels: [0-100]
acpiout16 at acpivga0 (SKC0, 0xca00): ACPI Display Output Device
acpivga0: unknown output device acpiout0
acpivga0: unknown output device acpiout1
acpivga0: unknown output device acpiout2
acpivga0: unknown output device acpiout3
acpivga0: unknown output device acpiout4
acpivga0: unknown output device acpiout5
acpivga0: unknown output device acpiout6
acpivga0: unknown output device acpiout7
acpivga0: unknown output device acpiout8
acpivga0: unknown output device acpiout9
acpivga0: unknown output device acpiout10
acpivga0: unknown output device acpiout11
acpivga0: unknown output device acpiout12
acpivga0: unknown output device acpiout13
acpivga0: unknown output device acpiout14
acpivga0: unknown output device acpiout16
acpivga0: connected output devices:
acpivga0:   0x0400 (acpiout15): Unknown Output Device, head 0
IOTR (PNP0C02) at acpi0 not configured
HKEY (LEN0268) at acpi0 not configured
acpiacad0 at acpi0 (AC, ACPI0003-0): ACPI AC Adapter
acpibat0 at acpi0 (BAT0, PNP0C0A-0): ACPI Battery
acpibat0: LGC LiP rechargeable battery
acpibat0: granularity: low->warn 0.-01 Wh, warn->full 0.-01 Wh
acpibat0: ACPI 4.0 functionality present
ITSD (LEN0100) at acpi0 not configured
SEN1 (INT3403) at acpi0 not configured
FWHD (INT0800) at acpi0 not configured
LDRC (PNP0C02) at acpi0 not configured
attimer1 at acpi0 (TIMR, PNP0100): io 0x40-0x43,0x50-0x53 irq 0
CWDT (INT3F0D) at acpi0 not configured
pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
spkr0 at pcppi1: PC Speaker
midi0 at pcppi1: PC speaker
sysbeep0 at pcppi1
pckbc1 at acpi0 (KBD, LEN0071) (kbd port): io 0x60,0x64 irq 1
pckbc2 at acpi0 (MOU, LEN0091) (aux port): irq 12
SIO (PNP0C02) at acpi0 not configured
PDRC (PNP0C02) at acpi0 not configured
EPC (INT0E0C) at acpi0 not configured
acpibut0 at acpi0 (SLPB, PNP0C0E): ACPI Sleep Button
acpiwmi0 at acpi0 (WTBT, PNP0C14-TBFP): ACPI WMI Interface
acpiwmibus at acpiwmi0 not configured
MEM (PNP0C01) at acpi0 not configured
acpilid0 at acpi0 (LID, PNP0C0D): ACPI Lid Switch
acpiwmi1 at acpi0 (WMI1, PNP0C14-1): ACPI WMI Interface
acpiwmibus at acpiwmi1 not configured
acpiwmi2 at acpi0 (WMI2, PNP0C14-2): ACPI WMI Interface
acpiwmibus at acpiwmi2 not configured
acpiwmi3 at acpi0 (WMI3, PNP0C14-3): ACPI WMI Interface
acpiwmibus at acpiwmi3 not configured
PEPD (INT33A1) at acpi0 not configured
IETM (INT3400) at acpi0 not configured
TPM (IFX0763) at acpi0 not configured
PTMD (INT3394) at acpi0 not configured
UBTC (USBC000) at acpi0 not configured
acpitz0 at acpi0 (THM0)
acpitz0: levels: critical 128.0 C, passive cooling
ACPI: Enabled 4 GPEs in block 00 to 7F
attimer1: attached to pcppi1
pckbd0 at pckbc1 (kbd slot)
pckbc1: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard
pms0 at pckbc1 (aux slot)
pms0: Synaptics touchpad version 8.16
pms0: Extended W mode, Passthrough, Palm detect, One button click pad, Multi-finger Report, Multi-finger
pckbc1: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0: vendor 8086 product 5914 (rev. 0x08)
genfb0 at pci0 dev 2 function 0: vendor 8086 product 5917 (rev. 0x07)
genfb0: framebuffer at 0xb0000000, size 800x600, depth 32, stride 3200
wsdisplay0 at genfb0 kbdmux 1: console (default, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
drm at genfb0 not configured
vendor 8086 product 1903 (miscellaneous DASP, revision 0x08) at pci0 dev 4 function 0 not configured
vendor 8086 product 1911 (miscellaneous system) at pci0 dev 8 function 0 not configured
xhci0 at pci0 dev 20 function 0: vendor 8086 product 9d2f (rev. 0x21)
xhci0: interrupting at msi0 vec 0
xhci0: xHCI version 1.0
usb0 at xhci0: USB revision 3.0
usb1 at xhci0: USB revision 2.0
vendor 8086 product 9d31 (miscellaneous DASP, revision 0x21) at pci0 dev 20 function 2 not configured
vendor 8086 product 9d60 (miscellaneous DASP, revision 0x21) at pci0 dev 21 function 0 not configured
vendor 8086 product 9d3a (miscellaneous communications, revision 0x21) at pci0 dev 22 function 0 not configured
vendor 8086 product 9d3d (serial communications, 16550-compat, revision 0x21) at pci0 dev 22 function 3 not configured
ppb0 at pci0 dev 28 function 0: vendor 8086 product 9d10 (rev. 0xf1)
ppb0: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x1 @ 8.0GT/s
ppb0: link is x1 @ 2.5GT/s
pci1 at ppb0 bus 2
pci1: i/o space, memory space enabled
iwm0 at pci1 dev 0 function 0: vendor 8086 product 24fd (rev. 0x78)
iwm0: interrupting at msi1 vec 0
ppb1 at pci0 dev 28 function 4: vendor 8086 product 9d14 (rev. 0xf1)
ppb1: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x4 @ 8.0GT/s
pci2 at ppb1 bus 4
pci2: i/o space, memory space enabled
nvme0 at pci2 dev 0 function 0: vendor 144d product a808 (rev. 0x00)
nvme0: NVMe 1.2
nvme0: for admin queue interrupting at msix2 vec 0
nvme0: SAMSUNG MZVLB512HAJQ-000L7, firmware 4L2QEXA7, serial S3TNNF0K866804
nvme0: for io queue 1 interrupting at msix2 vec 1 affinity to cpu0
nvme0: for io queue 2 interrupting at msix2 vec 2 affinity to cpu1
nvme0: for io queue 3 interrupting at msix2 vec 3 affinity to cpu2
nvme0: for io queue 4 interrupting at msix2 vec 4 affinity to cpu3
nvme0: for io queue 5 interrupting at msix2 vec 5 affinity to cpu4
nvme0: for io queue 6 interrupting at msix2 vec 6 affinity to cpu5
nvme0: for io queue 7 interrupting at msix2 vec 7 affinity to cpu6
nvme0: for io queue 8 interrupting at msix2 vec 8 affinity to cpu7
ld0 at nvme0 nsid 1
ld0: 476 GB, 62260 cyl, 255 head, 63 sec, 512 bytes/sect x 1000215216 sectors
ppb2 at pci0 dev 29 function 0: vendor 8086 product 9d18 (rev. 0xf1)
ppb2: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x4 @ 8.0GT/s
pci3 at ppb2 bus 5
pci3: i/o space, memory space enabled
ppb3 at pci3 dev 0 function 0: vendor 8086 product 15d3 (rev. 0x02)
ppb3: PCI Express capability version 2 <Upstream Port of PCI-E Switch>
pci4 at ppb3 bus 6
pci4: i/o space, memory space enabled
ppb4 at pci4 dev 0 function 0: vendor 8086 product 15d3 (rev. 0x02)
ppb4: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
pci5 at ppb4 bus 7
pci5: i/o space, memory space enabled
vendor 8086 product 15d2 (miscellaneous system, revision 0x02) at pci5 dev 0 function 0 not configured
ppb5 at pci4 dev 1 function 0: vendor 8086 product 15d3 (rev. 0x02)
ppb5: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
pci6 at ppb5 bus 8
pci6: i/o space, memory space enabled
ppb6 at pci4 dev 2 function 0: vendor 8086 product 15d3 (rev. 0x02)
ppb6: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
pci7 at ppb6 bus 59
pci7: i/o space, memory space enabled
xhci1 at pci7 dev 0 function 0: vendor 8086 product 15d4 (rev. 0x02)
xhci1: interrupting at msi3 vec 0
xhci1: xHCI version 1.10 not known to be supported
usb2 at xhci1: USB revision 3.0
usb3 at xhci1: USB revision 2.0
ppb7 at pci4 dev 4 function 0: vendor 8086 product 15d3 (rev. 0x02)
ppb7: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
pci8 at ppb7 bus 60
pci8: i/o space, memory space enabled
pcib0 at pci0 dev 31 function 0: vendor 8086 product 9d4e (rev. 0x21)
vendor 8086 product 9d21 (miscellaneous memory, revision 0x21) at pci0 dev 31 function 2 not configured
hdaudio0 at pci0 dev 31 function 3: HD Audio Controller
hdaudio0: interrupting at msi4 vec 0
hdaudio0: timeout stopping RIRB
hdaudio0: couldn't reset because RIRB is busy
hdaudio0: device driver failed to attach
ichsmb0 at pci0 dev 31 function 4: vendor 8086 product 9d23 (rev. 0x21)
ichsmb0: interrupting at ioapic0 pin 16
iic0 at ichsmb0: I2C bus
wm0 at pci0 dev 31 function 6: I219 LM Ethernet Connection (rev. 0x21)
wm0: interrupting at msi4 vec 0
wm0: PCI-Express bus
wm0: 4096 words FLASH
wm0: Ethernet address 8c:16:45:64:74:60
wm0: 0xa4080<FLASH,PCIE,ASF_FIRM,AMT>
ihphy0 at wm0 phy 2: i217 10/100/1000 media interface, rev. 6
ihphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
isa0 at pcib0
tpm0 at isa0 iomem 0xfed40000-0xfed44fff irq 7: device 0x001b15d1 rev 0x10
acpicpu0 at cpu0: ACPI CPU
acpicpu0: C1: FFH, lat   1 us, pow  1000 mW
acpicpu0: C2: FFH, lat 151 us, pow   200 mW
acpicpu0: C3: FFH, lat 1034 us, pow   200 mW
acpicpu0: P0: FFH, lat  10 us, pow 15000 mW, 2101 MHz, turbo boost
acpicpu0: P1: FFH, lat  10 us, pow 15000 mW, 2100 MHz
acpicpu0: P2: FFH, lat  10 us, pow 13193 mW, 1900 MHz
acpicpu0: P3: FFH, lat  10 us, pow 12317 mW, 1800 MHz
acpicpu0: P4: FFH, lat  10 us, pow 11459 mW, 1700 MHz
acpicpu0: P5: FFH, lat  10 us, pow 10759 mW, 1600 MHz
acpicpu0: P6: FFH, lat  10 us, pow  9936 mW, 1500 MHz
acpicpu0: P7: FFH, lat  10 us, pow  9127 mW, 1400 MHz
acpicpu0: P8: FFH, lat  10 us, pow  7696 mW, 1200 MHz
acpicpu0: P9: FFH, lat  10 us, pow  6937 mW, 1100 MHz
acpicpu0: P10: FFH, lat  10 us, pow  6196 mW, 1000 MHz
acpicpu0: P11: FFH, lat  10 us, pow  4888 mW,  800 MHz
acpicpu0: P12: FFH, lat  10 us, pow  4193 mW,  700 MHz
acpicpu0: P13: FFH, lat  10 us, pow  3514 mW,  600 MHz
acpicpu0: P14: FFH, lat  10 us, pow  2850 mW,  500 MHz
acpicpu0: P15: FFH, lat  10 us, pow  2325 mW,  400 MHz
acpicpu0: T0: I/O, lat   1 us, pow     0 mW, 100 %
acpicpu0: T1: I/O, lat   1 us, pow     0 mW,  88 %
acpicpu0: T2: I/O, lat   1 us, pow     0 mW,  76 %
acpicpu0: T3: I/O, lat   1 us, pow     0 mW,  64 %
acpicpu0: T4: I/O, lat   1 us, pow     0 mW,  52 %
acpicpu0: T5: I/O, lat   1 us, pow     0 mW,  40 %
acpicpu0: T6: I/O, lat   1 us, pow     0 mW,  28 %
acpicpu0: T7: I/O, lat   1 us, pow     0 mW,  16 %
coretemp0 at cpu0: thermal sensor, 1 C resolution, Tjmax=100
acpicpu1 at cpu1: ACPI CPU
coretemp1 at cpu1: thermal sensor, 1 C resolution, Tjmax=100
acpicpu2 at cpu2: ACPI CPU
coretemp2 at cpu2: thermal sensor, 1 C resolution, Tjmax=100
acpicpu3 at cpu3: ACPI CPU
coretemp3 at cpu3: thermal sensor, 1 C resolution, Tjmax=100
acpicpu4 at cpu4: ACPI CPU
acpicpu5 at cpu5: ACPI CPU
acpicpu6 at cpu6: ACPI CPU
acpicpu7 at cpu7: ACPI CPU
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "TSC" frequency 2112499040 Hz quality 3000
acpiacad0: AC adapter online.
uhub0 at usb0: vendor 8086 (0x8086) xHCI Root Hub (0000), class 9/0, rev 1.00/1.00, addr 0
uhub0: 6 ports with 6 removable, self powered
uhub1 at usb1: vendor 8086 (0x8086) xHCI Root Hub (0000), class 9/0, rev 2.00/1.00, addr 0
uhub1: 12 ports with 12 removable, self powered
uhub2 at usb2: vendor 8086 (0x8086) xHCI Root Hub (0000), class 9/0, rev 1.00/1.00, addr 0
uhub2: 2 ports with 2 removable, self powered
uhub3 at usb3: vendor 8086 (0x8086) xHCI Root Hub (0000), class 9/0, rev 2.00/1.00, addr 0
uhub3: 2 ports with 2 removable, self powered
ld0: GPT GUID: b2b2901a-9f75-4da9-b339-2b60cfc8247b
IPsec: Initialized Security Association Processing.
dk0 at ld0: "EFI system partition", 532480 blocks at 2048, type: msdos
dk1 at ld0: "Microsoft reserved partition", 32768 blocks at 534528, type: <unknown>
dk2 at ld0: "Basic data partition", 193544192 blocks at 567296, type: <unknown>
dk3 at ld0: "61c8ad6b-0761-4c32-9ef4-20fe58dc68c8", 2048000 blocks at 998166528, type: <unknown>
ld0: wedge named 'Basic data partition' already existed, using '61c8ad6b-0761-4c32-9ef4-20fe58dc68c8'
dk4 at ld0: "NetBSD", 25165824 blocks at 194113536, type: ffs
ubt0 at uhub1 port 7
ubt0: vendor 8087 (0x8087) product 0a2b (0xa2b), rev 2.00/0.10, addr 2
umass0 at uhub0 port 3 configuration 1 interface 0
umass0: Generic (0xbda) USB3.0-CRW (0x328), rev 3.00/29.08, addr 1
umass0: using SCSI over Bulk-Only
scsibus0 at umass0: 2 targets, 1 lun per target
sd0 at scsibus0 target 0 lun 0: <Generic-, SD/MMC CRW, 1.00> disk removable
uvideo0 at uhub1 port 8 configuration 1 interface 0: Chicony Electronics Co.,Ltd. (0x4f2) Integrated Camera (0xb61e), rev 2.01/4.25, addr 3
video0 at uvideo0: Chicony Electronics Co.,Ltd. (0x4f2) Integrated Camera (0xb61e), rev 2.01/4.25, addr 3
ugen0 at uhub1 port 9
ugen0: vendor 06cb (0x6cb) product 009a (0x9a), rev 2.00/1.64, addr 4
sd0: drive offline
pad0: outputs: 44100Hz, 16-bit, stereo
audio0 at pad0: half duplex, playback, capture, mmap
pad0: Virtual format configured - Format SLINEAR, precision 16, channels 2, frequency 44100
pad0: Latency: 139 milliseconds
spkr1 at audio0: PC Speaker (synthesized)
WARNING: 20 errors while detecting hardware; check system log.
boot device: ld0
root on dk4
root file system type: ffs
kern.module.path=/stand/amd64/8.0/modules
iwm0: hw rev 0x230, fw ver 22.361476.0, address 18:56:80:1f:a0:0e
iwm0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
iwm0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
iwm0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wsdisplay0: screen 1 added (default, vt100 emulation)
wsdisplay0: screen 2 added (default, vt100 emulation)
wsdisplay0: screen 3 added (default, vt100 emulation)
wsdisplay0: screen 4 added (default, vt100 emulation)
acpibat0: normal capacity on 'charge state'
[   1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[   1.0000000]     2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[   1.0000000]     2018, 2019 The NetBSD Foundation, Inc.  All rights reserved.
[   1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
[   1.0000000]     The Regents of the University of California.  All rights reserved.

[   1.0000000] NetBSD 8.99.30 (XEN3_DOM0_DK4) #0: Wed Jan 30 17:20:30 JST 2019
[   1.0000000] 	XXXX%examples.com@localhost:/usr/src/sys/arch/amd64/compile/XEN3_DOM0_DK4
[   1.0000000] total memory = 512 MB
[   1.0000000] avail memory = 477 MB
[   1.0000000] cpu_rng: RDSEED
[   1.0000000] timecounter: Timecounters tick every 10.000 msec
[   1.0000000] Kernelized RAIDframe activated
[   1.0000000] running cgd selftest aes-xts-256 aes-xts-512 done
[   1.0000000] LENOVO 20KGCTO1WW (ThinkPad X1 Carbon 6th)
[   1.0000000] mainbus0 (root)
[   1.0000000] ACPI: RSDP 0x00000000000F0140 000024 (v02 LENOVO)
[   1.0000000] ACPI: XSDT 0x000000004FFB2188 000124 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: FACP 0x000000004FFEB000 0000F4 (v05 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: DSDT 0x000000004FFC0000 02622C (v02 LENOVO SKL      00000000 INTL 20160527)
[   1.0000000] ACPI: FACS 0x000000004FF3D000 000040
[   1.0000000] ACPI: SSDT 0x000000004FFF3000 0099B2 (v02 LENOVO DptfTabl 00001000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFF2000 0003DB (v02 LENOVO Tpm2Tabl 00001000 INTL 20160527)
[   1.0000000] ACPI: TPM2 0x000000004FFF1000 000034 (v03 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: UEFI 0x000000004FF53000 000042 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: SSDT 0x000000004FFED000 0030A3 (v02 LENOVO SaSsdt   00003000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFEC000 0005C6 (v02 LENOVO PerfTune 00001000 INTL 20160527)
[   1.0000000] ACPI: HPET 0x000000004FFEA000 000038 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: APIC 0x000000004FFE9000 00012C (v03 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: MCFG 0x000000004FFE8000 00003C (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: ECDT 0x000000004FFE7000 000053 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: SSDT 0x000000004FFBE000 001C9C (v02 LENOVO RVP7Rtd3 00001000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFBC000 0017D7 (v02 LENOVO ProjSsdt 00000010 INTL 20160527)
[   1.0000000] ACPI: BOOT 0x000000004FFBB000 000028 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: BATB 0x000000004FFBA000 00004A (v02 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: SLIC 0x000000004FFB9000 000176 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: SSDT 0x000000004FFB7000 0017AE (v02 LENOVO CpuSsdt  00003000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFB6000 00056D (v02 LENOVO CtdpB    00001000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFB5000 0006BF (v02 LENOVO UsbCTabl 00001000 INTL 20160527)
[   1.0000000] ACPI: LPIT 0x000000004FFB4000 000094 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: WSMT 0x000000004FFB3000 000028 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: SSDT 0x000000004FFFD000 0001D8 (v02 LENOVO HdaDsp   00000000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFB1000 000590 (v02 LENOVO TbtTypeC 00000000 INTL 20160527)
[   1.0000000] ACPI: SSDT 0x000000004FFB0000 0002D1 (v02 LENOVO Wwan     00000001 INTL 20160527)
[   1.0000000] ACPI: DBGP 0x000000004FFAF000 000034 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: DBG2 0x000000004FFAE000 000054 (v00 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: MSDM 0x000000004FFAD000 000055 (v03 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: RMAD 0x000000004FFAC000 0000CC (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: NHLT 0x000000004FFAB000 00002D (v00 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: ASF! 0x000000004FFAA000 0000A0 (v32 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: FPDT 0x000000004FFA9000 000044 (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: UEFI 0x000000004FF2B000 00013E (v01 LENOVO TP-N23   00001300 PTEC 00000002)
[   1.0000000] ACPI: 13 ACPI AML tables successfully acquired and loaded
[   1.0000000] ioapic0 at mainbus0 apid 2: pa 0xfec00000, version 0x20, 120 pins
[   1.0000000] cpu0 at mainbus0 apid 0
[   1.0000000] cpu1 at mainbus0 apid 2
[   1.0000000] cpu2 at mainbus0 apid 4
[   1.0000000] cpu3 at mainbus0 apid 6
[   1.0000000] cpu4 at mainbus0 apid 1
[   1.0000000] cpu5 at mainbus0 apid 3
[   1.0000000] cpu6 at mainbus0 apid 5
[   1.0000000] cpu7 at mainbus0 apid 7
[   1.0000000] hypervisor0 at mainbus0: Xen version 4.11.0nb1
[   1.0000000] hypervisor0: features:  pae_pgdir_above_4gb mmu_pt_update_preserve_ad highmem_assist gnttab_map_avail_bits
[   1.0000000] VIRQ_DEBUG interrupt using event channel 1
[   1.0000000] vcpu0 at hypervisor0
[   1.0000000] vcpu0: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, id 0x806ea
[   1.0000000] vcpu0: package 0, core 0, smt 0
[   1.0000000] xenbus0 at hypervisor0: Xen Virtual Bus Interface
[   1.0000000] xencons0 at hypervisor0: Xen Virtual Console Driver
[   1.0000000] acpi0 at hypervisor0: Intel ACPICA 20181213
[   1.0000000] acpi0: X/RSDT: OemId <LENOVO,TP-N23  ,00001300>, AslId <PTEC,00000002>
[   1.0000000] acpiecdt0 at acpi0: ACPI Embedded Controller via ECDT
[   1.0000000] acpi0: MCFG: segment 0, bus 0-127, address 0x00000000f0000000
[   1.0000000] acpi0: SCI interrupting at int 9
[   1.0000000] acpi0: fixed power button present
[   1.0000000] timecounter: Timecounter "ACPI-Safe" frequency 3579545 Hz quality 900
[   1.0000030] acpiec0 at acpi0 (EC, PNP0C09-0): using acpiecdt0
[   1.0000030] IOTR (PNP0C02) at acpi0 not configured
[   1.0000030] HKEY (LEN0268) at acpi0 not configured
[   1.0000030] acpiacad0 at acpi0 (AC, ACPI0003-0): ACPI AC Adapter
[   1.0000030] acpibat0 at acpi0 (BAT0, PNP0C0A-0): ACPI Battery
[   1.0000030] acpibat0: ACPI 4.0 functionality present
[   1.0000030] ITSD (LEN0100) at acpi0 not configured
[   1.0000030] SEN1 (INT3403) at acpi0 not configured
[   1.0000030] FWHD (INT0800) at acpi0 not configured
[   1.0000030] HPET (PNP0103) at acpi0 not configured
[   1.0000030] LDRC (PNP0C02) at acpi0 not configured
[   1.0000030] TIMR (PNP0100) at acpi0 not configured
[   1.0000030] CWDT (INT3F0D) at acpi0 not configured
[   1.0000030] pcppi0 at acpi0 (SPKR, PNP0800): io 0x61
[   1.0000030] pckbc1 at acpi0 (KBD, LEN0071) (kbd port): io 0x60,0x64 irq 1
[   1.0000030] pckbc2 at acpi0 (MOU, LEN0091) (aux port): irq 12
[   1.0000030] SIO (PNP0C02) at acpi0 not configured
[   1.0000030] PDRC (PNP0C02) at acpi0 not configured
[   1.0000030] EPC (INT0E0C) at acpi0 not configured
[   1.0000030] acpibut0 at acpi0 (SLPB, PNP0C0E): ACPI Sleep Button
[   1.0000030] WTBT (PNP0C14) at acpi0 not configured
[   1.0000030] PEPD (INT33A1) at acpi0 not configured
[   1.0000030] MEM (PNP0C01) at acpi0 not configured
[   1.0000030] acpilid0 at acpi0 (LID, PNP0C0D): ACPI Lid Switch
[   1.0000030] WMI1 (PNP0C14) at acpi0 not configured
[   1.0000030] WMI2 (PNP0C14) at acpi0 not configured
[   1.0000030] WMI3 (PNP0C14) at acpi0 not configured
[   1.0000030] IETM (INT3400) at acpi0 not configured
[   1.0000030] TPM (IFX0763) at acpi0 not configured
[   1.0000030] PTMD (INT3394) at acpi0 not configured
[   1.0000030] UBTC (USBC000) at acpi0 not configured
[   1.0000030] acpitz0 at acpi0 (THM0)
[   1.0000030] acpitz0: levels: critical 128.0 C, passive cooling
[   1.0000030] ACPI: Enabled 4 GPEs in block 00 to 7F
[   1.0000030] pckbd0 at pckbc1 (kbd slot)
[   1.0000030] pckbc1: using irq 1 for kbd slot
[   1.0000030] wskbd0 at pckbd0: console keyboard
[   1.0000030] pms0 at pckbc1 (aux slot)
[   1.0000030] pms0: Synaptics touchpad version 8.16
[   1.0000030] pms0: Extended W mode, Passthrough, Palm detect, One button click pad, Multi-finger Report, Multi-finger
[   1.0000030] pckbc1: using irq 12 for aux slot
[   1.0000030] wsmouse0 at pms0 mux 0
[   1.0000030] pci0 at hypervisor0 bus 0: configuration mode 1
[   1.0000030] pci0: i/o space, memory space enabled
[   1.0000030] pchb0 at pci0 dev 0 function 0: vendor 8086 product 5914 (rev. 0x08)
[   1.0000030] vga0 at pci0 dev 2 function 0: vendor 8086 product 5917 (rev. 0x07)
[   1.0000030] wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
[   1.0000030] wsmux1: connecting to wsdisplay0
[   1.0000030] drm at vga0 not configured
[   1.0000030] vendor 8086 product 1903 (miscellaneous DASP, revision 0x08) at pci0 dev 4 function 0 not configured
[   1.0000030] vendor 8086 product 1911 (miscellaneous system) at pci0 dev 8 function 0 not configured
[   1.0000030] xhci0 at pci0 dev 20 function 0: vendor 8086 product 9d2f (rev. 0x21)
[   1.0000030] xhci0: interrupting at ioapic0 pin 16
[   1.0000030] xhci0: xHCI version 1.0
[   1.0000030] usb0 at xhci0: USB revision 3.0
[   1.0000030] usb1 at xhci0: USB revision 2.0
[   1.0000030] vendor 8086 product 9d31 (miscellaneous DASP, revision 0x21) at pci0 dev 20 function 2 not configured
[   1.0000030] dwiic0 at pci0 dev 21 function 0status 0x100002
[   1.0000030] reset 0xffffffff
[   1.0000030] rlo 0xffffffff
[   1.0000030] rho 0xffffffff
[   1.0000030] : I2C controller instance 0
[   1.0000030] dwiic0: interrupting at ioapic0 pin 16
[   1.0000030] status 0x100002
[   1.0000030] reset 0x3
[   1.0000030] rlo 0xfb01e004
[   1.0000030] rho 0x2f
[   1.0000030] iic0 at dwiic0: I2C bus
[   1.0000030] vendor 8086 product 9d3a (miscellaneous communications, revision 0x21) at pci0 dev 22 function 0 not configured
[   1.0000030] vendor 8086 product 9d3d (serial communications, 16550-compat, revision 0x21) at pci0 dev 22 function 3 not configured
[   1.0000030] ppb0 at pci0 dev 28 function 0: vendor 8086 product 9d10 (rev. 0xf1)
[   1.0000030] ppb0: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x1 @ 8.0GT/s
[   1.0000030] ppb0: link is x1 @ 2.5GT/s
[   1.0000030] pci1 at ppb0 bus 2
[   1.0000030] pci1: i/o space, memory space enabled
[   1.0000030] iwm0 at pci1 dev 0 function 0: vendor 8086 product 24fd (rev. 0x78)
[   1.0000030] iwm0: interrupting at ioapic0 pin 16
[   1.0000030] ppb1 at pci0 dev 28 function 4: vendor 8086 product 9d14 (rev. 0xf1)
[   1.0000030] ppb1: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x4 @ 8.0GT/s
[   1.0000030] pci2 at ppb1 bus 4
[   1.0000030] pci2: i/o space, memory space enabled
[   1.0000030] nvme0 at pci2 dev 0 function 0: vendor 144d product a808 (rev. 0x00)
[   1.0000030] nvme0: NVMe 1.2
[   1.0000030] nvme0: interrupting at ioapic0 pin 16
[   1.0000030] nvme0: SAMSUNG MZVLB512HAJQ-000L7, firmware 4L2QEXA7, serial S3TNNF0K866804
[   1.0000030] ld0 at nvme0 nsid 1
[   1.0000030] ld0: 476 GB, 62260 cyl, 255 head, 63 sec, 512 bytes/sect x 1000215216 sectors
[   1.0000030] ppb2 at pci0 dev 29 function 0: vendor 8086 product 9d18 (rev. 0xf1)
[   1.0000030] ppb2: PCI Express capability version 2 <Root Port of PCI-E Root Complex> x4 @ 8.0GT/s
[   1.0000030] pci3 at ppb2 bus 5
[   1.0000030] pci3: i/o space, memory space enabled
[   1.0000030] ppb3 at pci3 dev 0 function 0: vendor 8086 product 15d3 (rev. 0x02)
[   1.0000030] ppb3: PCI Express capability version 2 <Upstream Port of PCI-E Switch>
[   1.0000030] pci4 at ppb3 bus 6
[   1.0000030] pci4: i/o space, memory space enabled
[   1.0000030] ppb4 at pci4 dev 0 function 0: vendor 8086 product 15d3 (rev. 0x02)
[   1.0000030] ppb4: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
[   1.0000030] pci5 at ppb4 bus 7
[   1.0000030] pci5: i/o space, memory space enabled
[   1.0000030] vendor 8086 product 15d2 (miscellaneous system, revision 0x02) at pci5 dev 0 function 0 not configured
[   1.0000030] ppb5 at pci4 dev 1 function 0: vendor 8086 product 15d3 (rev. 0x02)
[   1.0000030] ppb5: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
[   1.0000030] pci6 at ppb5 bus 8
[   1.0000030] pci6: i/o space, memory space enabled
[   1.0000030] ppb6 at pci4 dev 2 function 0: vendor 8086 product 15d3 (rev. 0x02)
[   1.0000030] ppb6: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
[   1.0000030] pci7 at ppb6 bus 59
[   1.0000030] pci7: i/o space, memory space enabled
[   1.0000030] xhci1 at pci7 dev 0 function 0: vendor 8086 product 15d4 (rev. 0x02)
[   1.0000030] xhci1: interrupting at ioapic0 pin 18
[   1.0000030] xhci1: xHCI version 1.10
[   1.0000030] usb2 at xhci1: USB revision 3.0
[   1.0000030] usb3 at xhci1: USB revision 2.0
[   1.0000030] ppb7 at pci4 dev 4 function 0: vendor 8086 product 15d3 (rev. 0x02)
[   1.0000030] ppb7: PCI Express capability version 2 <Downstream Port of PCI-E Switch> x4 @ 2.5GT/s
[   1.0000030] pci8 at ppb7 bus 60
[   1.0000030] pci8: i/o space, memory space enabled
[   1.0000030] pcib0 at pci0 dev 31 function 0: vendor 8086 product 9d4e (rev. 0x21)
[   1.0000030] vendor 8086 product 9d21 (miscellaneous memory, revision 0x21) at pci0 dev 31 function 2 not configured
[   1.0000030] hdaudio0 at pci0 dev 31 function 3: HD Audio Controller
[   1.0000030] hdaudio0: interrupting at ioapic0 pin 16
[   1.0000030] hdafg0 at hdaudio0: vendor 10ec product 0285
[   1.0000030] hdafg0: DAC00 2ch: Speaker [Built-In]
[   1.0000030] hdafg0: DAC01 2ch: HP Out [Jack]
[   1.0000030] hdafg0: ADC02 2ch: Mic In [Built-In]
[   1.0000030] hdafg0: ADC03 2ch: Mic In [Jack]
[   1.0000030] hdafg0: 2ch/2ch 44100Hz 48000Hz 96000Hz 192000Hz PCM16 PCM20 PCM24
[   1.0000030] audio0 at hdafg0: full duplex, playback, capture, mmap, independent
[   1.0000030] hdafg0: Virtual format configured - Format SLINEAR, precision 16, channels 2, frequency 48000
[   1.0000030] hdafg0: Latency: 128 milliseconds
[   1.0000030] spkr0 at audio0: PC Speaker (synthesized)
[   1.0000030] wsbell at spkr0 not configured
[   1.0000030] hdafg1 at hdaudio0: vendor 8086 product 280b
[   1.0000030] hdafg1: DP00 8ch: Digital Out [Jack]
[   1.0000030] hdafg1: 8ch/0ch 48000Hz PCM16*
[   1.0000030] ichsmb0 at pci0 dev 31 function 4: vendor 8086 product 9d23 (rev. 0x21)
[   1.0000030] ichsmb0: interrupting at ioapic0 pin 16
[   1.0000030] iic1 at ichsmb0: I2C bus
[   1.0000030] wm0 at pci0 dev 31 function 6: I219 LM Ethernet Connection (rev. 0x21)
[   1.0000030] wm0: interrupting at ioapic0 pin 16
[   1.0000030] wm0: PCI-Express bus
[   1.0000030] wm0: 4096 words FLASH
[   1.0000030] wm0: Ethernet address 8c:16:45:64:74:60
[   1.0000030] wm0: 0x6a4080<FLASH,PCIE,ASF_FIRM,AMT,WOL,EEE>
[   1.0000030] ihphy0 at wm0 phy 2: i217 10/100/1000 media interface, rev. 6
[   1.0000030] ihphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
[   1.0000030] isa0 at pcib0
[   1.0000030] timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
[   1.0000030] timecounter: Timecounter "xen_system_time" frequency 1000000000 Hz quality 10000
[   1.0000030] Xen vcpu0 clock: using event channel 7
[   1.0000030] xenbus0: using event channel 8
[   1.0000030] uhub0 at usb0: NetBSD (0000) xHCI root hub (0000), class 9/0, rev 3.00/1.00, addr 0
[   1.0000030] uhub0: 6 ports with 6 removable, self powered
[   1.0000030] uhub1 at usb1: NetBSD (0000) xHCI root hub (0000), class 9/0, rev 2.00/1.00, addr 0
[   1.0000030] uhub1: 12 ports with 12 removable, self powered
[   1.0000030] uhub2 at usb2: NetBSD (0000) xHCI root hub (0000), class 9/0, rev 3.00/1.00, addr 0
[   1.0000030] uhub2: 2 ports with 2 removable, self powered
[   1.0000030] uhub3 at usb3: NetBSD (0000) xHCI root hub (0000), class 9/0, rev 2.00/1.00, addr 0
[   1.0000030] uhub3: 2 ports with 2 removable, self powered
[   1.0000030] acpiacad0: AC adapter online.
[   1.0200439] acpibat0: LGC LiP rechargeable battery
[   1.0200439] acpibat0: granularity: low->warn 0.-01 Wh, warn->full 0.-01 Wh
[   1.0300294] ld0: GPT GUID: b2b2901a-9f75-4da9-b339-2b60cfc8247b
[   1.0300294] dk0 at ld0: "EFI system partition", 532480 blocks at 2048, type: msdos
[   1.0300294] dk1 at ld0: "Microsoft reserved partition", 32768 blocks at 534528, type: <unknown>
[   1.0300294] dk2 at ld0: "Basic data partition", 193544192 blocks at 567296, type: <unknown>
[   1.0300294] dk3 at ld0: "61c8ad6b-0761-4c32-9ef4-20fe58dc68c8", 2048000 blocks at 998166528, type: <unknown>
[   1.0300294] autoconfiguration error: ld0: wedge named 'Basic data partition' already existed, using '61c8ad6b-0761-4c32-9ef4-20fe58dc68c8'
[   1.0300294] dk4 at ld0: "NetBSD", 25165824 blocks at 194113536, type: ffs
[   1.0300294] IPsec: Initialized Security Association Processing.
[   2.6305449] ubt0 at uhub1 port 7
[   2.6305449] ubt0: vendor 8087 (0x8087) product 0a2b (0xa2b), rev 2.00/0.10, addr 2
[   2.6400308] umass0 at uhub0 port 3 configuration 1 interface 0
[   2.6400308] umass0: Generic (0xbda) USB3.0-CRW (0x328), rev 3.00/29.08, addr 1
[   2.6400308] umass0: using SCSI over Bulk-Only
[   2.6500322] scsibus0 at umass0: 2 targets, 1 lun per target
[   2.6500322] sd0 at scsibus0 target 0 lun 0: <Generic-, SD/MMC CRW, 1.00> disk removable
[   3.5701752] ugen0 at uhub1 port 8
[   3.5701752] ugen0: Chicony Electronics Co.,Ltd. (0x4f2) Integrated Camera (0xb61e), rev 2.01/4.25, addr 3
[   4.5105494] ugen1 at uhub1 port 9
[   4.5105494] ugen1: vendor 06cb (0x6cb) product 009a (0x9a), rev 2.00/1.64, addr 4
[   6.5801298] sd0: drive offline
[  10.5100320] WARNING: 1 error while detecting hardware; check system log.
[  10.5100320] boot device: dk0
[  10.5100320] root on dk4
[  10.5200803] root file system type: ffs
[  10.5200803] kern.module.path=/stand/amd64-xen/8.99.30/modules
[  10.5705564] iwm0: autoconfiguration error: hardware error, stopping device
[  17.1000790] iwm0: autoconfiguration error: hardware error, stopping device
[  31.0205486] acpibat0: normal capacity on 'charge state'
[  47.2500299] wsdisplay0: screen 1 added (80x25, vt100 emulation)
[  47.2500299] wsdisplay0: screen 2 added (80x25, vt100 emulation)
[  47.2500299] wsdisplay0: screen 3 added (80x25, vt100 emulation)
[  47.2600306] wsdisplay0: screen 4 added (80x25, vt100 emulation)


Home | Main Index | Thread Index | Old Index