When building mtd-rw for a target based on Kernel 5.10 which has
CONFIG_MTD disabled the build fails with
ERROR: "put_mtd_device" [../mtd-rw.ko] undefined!
ERROR: "get_mtd_device" [../mtd-rw.ko] undefined!
Omit building the package for such a target.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit
c6b3d949295e687c54a6d87f60f49f7ccc4bdcdf)
PKG_NAME:=mtd-rw
PKG_VERSION:=git-20160214
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_MIRROR_HASH:=c44db17c3e05079116a1704f277642c9ce6f5ca4fa380c60f7e6d44509dc16be
SUBMENU:=Other modules
TITLE:=Write-enabler for MTD partitions
FILES:=$(PKG_BUILD_DIR)/mtd-rw.ko
+ DEPENDS:=@!(TARGET_x86||TARGET_bcm27xx||TARGET_octeontx)
endef
define KernelPackage/mtd-rw/description
--- /dev/null
+--- a/mtd-rw.c
++++ b/mtd-rw.c
+@@ -54,7 +54,11 @@ MODULE_PARM_DESC(i_want_a_brick, "Make a
+
+ static int set_writeable(unsigned n, bool w)
+ {
++#ifndef CONFIG_MTD
++ struct mtd_info *mtd = -ENOSYS;
++#else
+ struct mtd_info *mtd = get_mtd_device(NULL, n);
++#endif
+ int err;
+
+ if (IS_ERR(mtd)) {
+@@ -76,7 +80,9 @@ static int set_writeable(unsigned n, boo
+ err = 0;
+ }
+
++#ifdef CONFIG_MTD
+ put_mtd_device(mtd);
++#endif
+ return err;
+ }
+