aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2022-07-26 10:17:07 +0200
committerDaniel Golle <daniel@makrotopia.org>2022-07-30 19:04:36 +0200
commitdbe53352e38d20bb5245158b19d4ff810c209548 (patch)
tree3772ee3739819a0ce8da27bcf3f1633272cc91e5 /package/kernel
parent4a28537e4c858888f918c1b6f1210964da2da160 (diff)
downloadupstream-dbe53352e38d20bb5245158b19d4ff810c209548.tar.gz
upstream-dbe53352e38d20bb5245158b19d4ff810c209548.tar.bz2
upstream-dbe53352e38d20bb5245158b19d4ff810c209548.zip
kernel: add kmod-nvme package
Add driver for NVM Express block devices, ie. PCIe connected SSDs. Targets which allow booting from NVMe (x86, maybe some mvebu boards come to mind) should have it built-in, so rootfs can be mounted from there. For targets without NVMe support in bootloader or BIOS/firmware it's sufficient to provide the kernel module package. On targets having the NVMe driver built-in the resulting kmod package is an empty dummy. In any case, depending on or installing kmod-nvme results in driver support being available (either because it was already built-in or because the relevant kernel modules are added and loaded). Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'package/kernel')
-rw-r--r--package/kernel/linux/modules/block.mk23
1 files changed, 23 insertions, 0 deletions
diff --git a/package/kernel/linux/modules/block.mk b/package/kernel/linux/modules/block.mk
index 72f670b603..40a14a9be2 100644
--- a/package/kernel/linux/modules/block.mk
+++ b/package/kernel/linux/modules/block.mk
@@ -508,6 +508,29 @@ endef
$(eval $(call KernelPackage,nbd))
+define KernelPackage/nvme
+ SUBMENU:=$(BLOCK_MENU)
+ TITLE:=NVM Express block device
+ DEPENDS:=@PCI_SUPPORT
+ KCONFIG:= \
+ CONFIG_NVME_CORE \
+ CONFIG_BLK_DEV_NVME \
+ CONFIG_NVME_MULTIPATH=n \
+ CONFIG_NVME_HWMON=n
+ FILES:= \
+ $(LINUX_DIR)/drivers/nvme/host/nvme-core.ko \
+ $(LINUX_DIR)/drivers/nvme/host/nvme.ko
+ AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme)
+endef
+
+define KernelPackage/nvme/description
+ Kernel module for NVM Express solid state drives directly
+ connected to the PCI or PCI Express bus.
+endef
+
+$(eval $(call KernelPackage,nvme))
+
+
define KernelPackage/scsi-core
SUBMENU:=$(BLOCK_MENU)
TITLE:=SCSI device support