aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/linux
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2022-07-26 10:17:07 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2022-10-23 13:20:32 +0200
commit08969f61b0ef622f89f96e28a9a094ac8c0e8245 (patch)
treeaff9538485283416a28c6819ce7ab8f0e6116853 /package/kernel/linux
parentc1c85629b98374639baa7e0d6033bfb068d6d4d8 (diff)
downloadupstream-08969f61b0ef622f89f96e28a9a094ac8c0e8245.tar.gz
upstream-08969f61b0ef622f89f96e28a9a094ac8c0e8245.tar.bz2
upstream-08969f61b0ef622f89f96e28a9a094ac8c0e8245.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> (cherry picked from commit dbe53352e38d20bb5245158b19d4ff810c209548)
Diffstat (limited to 'package/kernel/linux')
-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 2be9ef0c64..52541f2592 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