diff --git a/package/kernel/modules/other.mk b/package/kernel/modules/other.mk
index f27e2efabe07473712ee609ae902a789066651f0..59ddde370a0153a96bf2e87c7b242ed40d8e70e2 100644
--- a/package/kernel/modules/other.mk
+++ b/package/kernel/modules/other.mk
@@ -552,7 +552,7 @@ define KernelPackage/rfkill
     CONFIG_RFKILL \
     CONFIG_RFKILL_INPUT=y \
     CONFIG_RFKILL_LEDS=y
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.31)),1)
+ifeq ($(CONFIG_LINUX_2_6_30),)
   FILES:= \
     $(LINUX_DIR)/net/rfkill/rfkill.ko
   AUTOLOAD:=$(call AutoLoad,20,rfkill)
diff --git a/package/kernel/modules/pcmcia.mk b/package/kernel/modules/pcmcia.mk
index 9dee29817e4c79990e74195163272bed56111471..c7cc8f8abc38599947ac8c65ae0f385b3d31a465 100644
--- a/package/kernel/modules/pcmcia.mk
+++ b/package/kernel/modules/pcmcia.mk
@@ -54,7 +54,8 @@ define KernelPackage/pcmcia-yenta
   KCONFIG:= \
 	CONFIG_PCCARD_NONSTATIC \
 	CONFIG_YENTA
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.35)),1)
+# For Linux 2.6.35+
+ifneq ($(wildcard $(LINUX_DIR)/drivers/pcmcia/pcmcia_rsrc.ko),)
   FILES:= \
 	$(LINUX_DIR)/drivers/pcmcia/pcmcia_rsrc.ko \
 	$(LINUX_DIR)/drivers/pcmcia/yenta_socket.ko
diff --git a/package/kernel/modules/usb.mk b/package/kernel/modules/usb.mk
index 71448331587ff0cbfbeef750fe6f2f576e2f5bfb..45f69f638b2cf17cb920b37fc7cd5b8a86e6f67c 100644
--- a/package/kernel/modules/usb.mk
+++ b/package/kernel/modules/usb.mk
@@ -145,7 +145,8 @@ define KernelPackage/usb-audio
 	CONFIG_SND_USB_AUDIO
   $(call AddDepends/usb)
   $(call AddDepends/sound)
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.35)),1)
+# For Linux 2.6.35+
+ifneq ($(wildcard $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko),)
   FILES:= \
 	$(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
 	$(LINUX_DIR)/sound/usb/snd-usb-audio.ko