rfkill: add fake rfkill support
authorJohn Crispin <john@phrozen.org>
Tue, 27 Sep 2016 17:06:07 +0000 (19:06 +0200)
committerJohn Crispin <john@phrozen.org>
Tue, 27 Sep 2016 18:27:26 +0000 (20:27 +0200)
allow building of modules depending on RFKILL even if RFKILL is not enabled.

Signed-off-by: John Crispin <john@phrozen.org>
package/kernel/linux/modules/other.mk
target/linux/generic/patches-4.4/280-rfkill-stubs.patch [new file with mode: 0644]

index 358e83a4d4c28a3df85d8855d3b444fc64689c4e..ffb7b88ec152211f4b570a461f31a1138fb2ba94 100644 (file)
@@ -398,7 +398,7 @@ define KernelPackage/rfkill
   TITLE:=RF switch subsystem support
   DEPENDS:=@USE_RFKILL +kmod-input-core
   KCONFIG:= \
-    CONFIG_RFKILL \
+    CONFIG_RFKILL_FULL \
     CONFIG_RFKILL_INPUT=y \
     CONFIG_RFKILL_LEDS=y \
     CONFIG_RFKILL_GPIO=y
diff --git a/target/linux/generic/patches-4.4/280-rfkill-stubs.patch b/target/linux/generic/patches-4.4/280-rfkill-stubs.patch
new file mode 100644 (file)
index 0000000..8864902
--- /dev/null
@@ -0,0 +1,87 @@
+Index: linux-4.4.21/net/rfkill/Kconfig
+===================================================================
+--- linux-4.4.21.orig/net/rfkill/Kconfig       2016-09-15 08:29:29.000000000 +0200
++++ linux-4.4.21/net/rfkill/Kconfig    2016-09-27 18:23:27.210404930 +0200
+@@ -1,7 +1,11 @@
+ #
+ # RF switch subsystem configuration
+ #
+-menuconfig RFKILL
++config RFKILL
++      bool
++      default y
++
++menuconfig RFKILL_FULL
+       tristate "RF switch subsystem support"
+       help
+         Say Y here if you want to have control over RF switches
+@@ -13,19 +17,19 @@
+ # LED trigger support
+ config RFKILL_LEDS
+       bool
+-      depends on RFKILL
++      depends on RFKILL_FULL
+       depends on LEDS_TRIGGERS = y || RFKILL = LEDS_TRIGGERS
+       default y
+ config RFKILL_INPUT
+       bool "RF switch input support" if EXPERT
+-      depends on RFKILL
++      depends on RFKILL_FULL
+       depends on INPUT = y || RFKILL = INPUT
+       default y if !EXPERT
+ config RFKILL_REGULATOR
+       tristate "Generic rfkill regulator driver"
+-      depends on RFKILL || !RFKILL
++      depends on RFKILL_FULL || !RFKILL_FULL
+       depends on REGULATOR
+       help
+           This options enable controlling radio transmitters connected to
+@@ -36,7 +40,7 @@
+ config RFKILL_GPIO
+       tristate "GPIO RFKILL driver"
+-      depends on RFKILL
++      depends on RFKILL_FULL
+       depends on GPIOLIB || COMPILE_TEST
+       default n
+       help
+Index: linux-4.4.21/net/rfkill/Makefile
+===================================================================
+--- linux-4.4.21.orig/net/rfkill/Makefile      2016-09-15 08:29:29.000000000 +0200
++++ linux-4.4.21/net/rfkill/Makefile   2016-09-27 18:22:12.373010155 +0200
+@@ -4,6 +4,6 @@
+ rfkill-y                      += core.o
+ rfkill-$(CONFIG_RFKILL_INPUT) += input.o
+-obj-$(CONFIG_RFKILL)          += rfkill.o
++obj-$(CONFIG_RFKILL_FULL)     += rfkill.o
+ obj-$(CONFIG_RFKILL_REGULATOR)        += rfkill-regulator.o
+ obj-$(CONFIG_RFKILL_GPIO)     += rfkill-gpio.o
+Index: linux-4.4.21/net/Makefile
+===================================================================
+--- linux-4.4.21.orig/net/Makefile     2016-09-15 08:29:29.000000000 +0200
++++ linux-4.4.21/net/Makefile  2016-09-27 18:23:43.954773045 +0200
+@@ -49,7 +49,7 @@
+ obj-$(CONFIG_TIPC)            += tipc/
+ obj-$(CONFIG_NETLABEL)                += netlabel/
+ obj-$(CONFIG_IUCV)            += iucv/
+-obj-$(CONFIG_RFKILL)          += rfkill/
++obj-$(CONFIG_RFKILL_FULL)     += rfkill/
+ obj-$(CONFIG_NET_9P)          += 9p/
+ obj-$(CONFIG_CAIF)            += caif/
+ ifneq ($(CONFIG_DCB),)
+Index: linux-4.4.21/include/linux/rfkill.h
+===================================================================
+--- linux-4.4.21.orig/include/linux/rfkill.h   2016-09-15 08:29:29.000000000 +0200
++++ linux-4.4.21/include/linux/rfkill.h        2016-09-27 18:47:20.426653801 +0200
+@@ -64,7 +64,7 @@
+       int     (*set_block)(void *data, bool blocked);
+ };
+-#if defined(CONFIG_RFKILL) || defined(CONFIG_RFKILL_MODULE)
++#if defined(CONFIG_RFKILL_FULL) || defined(CONFIG_RFKILL_FULL_MODULE)
+ /**
+  * rfkill_alloc - allocate rfkill structure
+  * @name: name of the struct -- the string is not copied internally