To compile this driver as a module, choose M here: the
          module will be called gpio-keys.
 
+config KEYBOARD_TSC2301
+       tristate "TSC2301 keypad support"
+       depends on SPI_TSC2301
+       help
+         Say Y here for if you are using the keypad features of TSC2301.
+
 endif
 
 obj-$(CONFIG_OMAP_PS2)                 += innovator_ps2.o
 obj-$(CONFIG_KEYBOARD_AAED2000)         += aaed2000_kbd.o
 obj-$(CONFIG_KEYBOARD_GPIO)            += gpio_keys.o
+obj-$(CONFIG_KEYBOARD_TSC2301)         += tsc2301_kp.o
 
 
          To compile this driver as a module, choose M here: the
          module will be called ucb1400_ts.
 
+config TOUCHSCREEN_TSC2301
+       tristate "TSC2301 touchscreen support"
+       depends on SPI_TSC2301
+       help
+         Say Y here for if you are using the touchscreen features of TSC2301.
+
 endif
 
 obj-$(CONFIG_TOUCHSCREEN_UCB1400)      += ucb1400_ts.o
 obj-$(CONFIG_TOUCHSCREEN_TSC2102)      += tsc2102_ts.o
 obj-$(CONFIG_TOUCHSCREEN_OMAP) += omap/
+obj-$(CONFIG_TOUCHSCREEN_TSC2301)      += tsc2301_ts.o
 
          To compile this driver as a module, choose M here: the
          module will be called tsc2301.
 
-config SPI_TSC2301_KEYPAD
-       boolean "TSC2301 keypad support"
-       depends on SPI_TSC2301
-       select INPUT_KEYBOARD
-       help
-         Say Y here for if you are using the keypad features of TSC2301.
-
-config SPI_TSC2301_TOUCHSCREEN
-       boolean "TSC2301 touchscreen support"
-       depends on SPI_TSC2301
-       select INPUT_TOUCHSCREEN
-       help
-         Say Y here for if you are using the touchscreen features of TSC2301.
-
 config SPI_TSC2301_AUDIO
        boolean "TSC2301 audio support"
        depends on SPI_TSC2301 && SND
 
 obj-$(CONFIG_SPI_AT25)         += at25.o
 obj-$(CONFIG_SPI_TSC2301)              += tsc2301.o
 tsc2301-objs                                   := tsc2301-core.o
-tsc2301-$(CONFIG_SPI_TSC2301_TOUCHSCREEN)      += tsc2301-ts.o
-tsc2301-$(CONFIG_SPI_TSC2301_KEYPAD)           += tsc2301-kp.o
 tsc2301-$(CONFIG_SPI_TSC2301_AUDIO)            += tsc2301-mixer.o
 #      ... add above this line ...
 
 
 }                                                                      \
 static inline void tsc2301_##module##_resume(struct tsc2301 *tsc) {}
 
-#ifdef CONFIG_SPI_TSC2301_KEYPAD
+#ifdef CONFIG_KEYBOARD_TSC2301
 TSC2301_DECL_MOD(kp)
 void tsc2301_kp_restart(struct tsc2301 *tsc);
 #else
 TSC2301_DECL_EMPTY_MOD(kp)
-void tsc2301_kp_restart(struct tsc2301 *tsc) {}
+static inline void tsc2301_kp_restart(struct tsc2301 *tsc) {}
 #endif
 
-#ifdef CONFIG_SPI_TSC2301_TOUCHSCREEN
+#ifdef CONFIG_TOUCHSCREEN_TSC2301
 TSC2301_DECL_MOD(ts)
 #else
 TSC2301_DECL_EMPTY_MOD(ts)