View | Details | Raw Unified | Return to bug 233960
Collapse All | Expand All

(-)src_new/sys/amd64/conf/GENERIC (+3 lines)
Lines 189-194 Link Here
189
device		nvme			# base NVMe driver
189
device		nvme			# base NVMe driver
190
device		nvd			# expose NVMe namespaces as disks, depends on nvme
190
device		nvd			# expose NVMe namespaces as disks, depends on nvme
191
191
192
# Volume Management Device (VMD) support
193
device		vmd			# Currently unsupported platform pcie device
194
192
# atkbdc0 controls both the keyboard and the PS/2 mouse
195
# atkbdc0 controls both the keyboard and the PS/2 mouse
193
device		atkbdc			# AT keyboard controller
196
device		atkbdc			# AT keyboard controller
194
device		atkbd			# AT keyboard
197
device		atkbd			# AT keyboard
(-)src_new/sys/conf/files.amd64 (+1 lines)
Lines 362-367 Link Here
362
dev/nvme/nvme_sysctl.c		optional	nvme
362
dev/nvme/nvme_sysctl.c		optional	nvme
363
dev/nvme/nvme_test.c		optional	nvme
363
dev/nvme/nvme_test.c		optional	nvme
364
dev/nvme/nvme_util.c		optional	nvme
364
dev/nvme/nvme_util.c		optional	nvme
365
dev/vmd/vmd.c			optional	vmd
365
dev/nvram/nvram.c		optional	nvram isa
366
dev/nvram/nvram.c		optional	nvram isa
366
dev/random/ivy.c		optional	rdrand_rng
367
dev/random/ivy.c		optional	rdrand_rng
367
dev/random/nehemiah.c		optional	padlock_rng
368
dev/random/nehemiah.c		optional	padlock_rng
(-)src_new/sys/dev/vmd/vmd.c (+66 lines)
Line 0 Link Here
1
/*-
2
 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3
 *
4
 * Copyright (C) 2018 Intel Corporation
5
 * All rights reserved.
6
 *
7
 * Redistribution and use in source and binary forms, with or without
8
 * modification, are permitted provided that the following conditions
9
 * are met:
10
 * 1. Redistributions of source code must retain the above copyright
11
 *    notice, this list of conditions and the following disclaimer.
12
 * 2. Redistributions in binary form must reproduce the above copyright
13
 *    notice, this list of conditions and the following disclaimer in the
14
 *    documentation and/or other materials provided with the distribution.
15
 *
16
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26
 * SUCH DAMAGE.
27
 */
28
29
#include <sys/cdefs.h>
30
__FBSDID("$FreeBSD$");
31
32
#include <sys/types.h>
33
#include <sys/param.h>
34
#include <sys/bus.h>
35
#include <sys/conf.h>
36
#include <sys/kernel.h>
37
#include <sys/module.h>
38
#include <sys/systm.h>
39
40
#include <dev/pci/pcireg.h>
41
#include <dev/pci/pcivar.h>
42
43
#include <machine/bus.h>
44
45
46
static int
47
vmd_probe(device_t dev)
48
{
49
	uint16_t devid = pci_get_device(dev);
50
	if (pci_get_vendor(dev) == 0x8086 && (devid == 0x201d || devid == 0x28c0)) {
51
		device_printf(dev, "Unsupported Volume Management Device (VMD) controller enabled.\n");
52
		printf("Please disable VMD/VROC in BIOS to see all PCI devices.\n");
53
	}
54
	return (ENXIO);
55
}
56
57
static device_method_t vmd_pci_methods[] = {
58
	/* Device interface */
59
	DEVMETHOD(device_probe,     vmd_probe),
60
	DEVMETHOD_END
61
};
62
63
static devclass_t vmd_devclass;
64
65
DEFINE_CLASS_0(vmd, vmd_pci_driver, vmd_pci_methods, 0);
66
DRIVER_MODULE(vmd, pci, vmd_pci_driver, vmd_devclass, 0, 0);
(-)src_new/sys/modules/Makefile (+2 lines)
Lines 385-390 Link Here
385
	${_viawd} \
385
	${_viawd} \
386
	videomode \
386
	videomode \
387
	vkbd \
387
	vkbd \
388
	${_vmd} \
388
	${_vmm} \
389
	${_vmm} \
389
	${_vmware} \
390
	${_vmware} \
390
	${_vpo} \
391
	${_vpo} \
Lines 735-740 Link Here
735
_sgx=		sgx
736
_sgx=		sgx
736
_sgx_linux=	sgx_linux
737
_sgx_linux=	sgx_linux
737
_smartpqi=	smartpqi
738
_smartpqi=	smartpqi
739
_vmd=		vmd
738
740
739
.if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
741
.if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
740
_vmm=		vmm
742
_vmm=		vmm
(-)src_new/sys/modules/vmd/Makefile (+13 lines)
Line 0 Link Here
1
# $FreeBSD$
2
3
.PATH: ${SRCTOP}/sys/dev/vmd
4
5
KMOD=	vmd
6
7
SRCS=	vmd.c		\
8
			\
9
	bus_if.h	\
10
	device_if.h	\
11
	pci_if.h
12
13
.include <bsd.kmod.mk>

Return to bug 233960