@@ -235,4 +235,6 @@ source "drivers/interconnect/Kconfig"
source "drivers/counter/Kconfig"
source "drivers/most/Kconfig"
+
+source "drivers/mpool/Kconfig"
endmenu
@@ -188,3 +188,4 @@ obj-$(CONFIG_GNSS) += gnss/
obj-$(CONFIG_INTERCONNECT) += interconnect/
obj-$(CONFIG_COUNTER) += counter/
obj-$(CONFIG_MOST) += most/
+obj-$(CONFIG_MPOOL) += mpool/
new file mode 100644
@@ -0,0 +1,28 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Object Storage Media Pool (mpool) configuration
+#
+
+config MPOOL
+ tristate "Object Storage Media Pool"
+ depends on BLOCK
+ default n
+ help
+ This module implements a simple transactional object store on top of
+ block storage devices.
+
+ Mpool provides a high-performance alternative to file systems or
+ raw block devices for applications that can benefit from its simple
+ object storage model and unique features.
+
+ If you want to use mpool, choose M here: the module will be called mpool.
+
+config MPOOL_ASSERT
+ bool "Object Storage Media Pool assert support"
+ depends on MPOOL
+ default n
+ help
+ Enables runtime assertion checking for mpool.
+
+ This is a developer only config. If this config is enabled and any of the
+ asserts trigger, it results in a panic.
new file mode 100644
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Makefile for Object Storage Media Pool (mpool)
+#
+
+obj-$(CONFIG_MPOOL) += mpool.o
+
+mpool-y := init.o pd.o mclass.o smap.o omf.o \
+ upgrade.o sb.o pmd_obj.o mblock.o \
+ mlog_utils.o mlog.o mdc.o mpcore.o pmd.o \
+ mp.o mpctl.o sysfs.o mcache.o reaper.o