No hardware that I know of supports rotary, and I would bet money
this code is not tested.  Let's remove it until we have hardware
that requires this support.

Signed-off-by: Kristen Carlson Accardi <[email protected]>
---
 drivers/input/keyboard/intel_mid_keypad.c |   68 -----------------------------
 1 files changed, 0 insertions(+), 68 deletions(-)

diff --git a/drivers/input/keyboard/intel_mid_keypad.c 
b/drivers/input/keyboard/intel_mid_keypad.c
index 2679f96..e5d6d77 100644
--- a/drivers/input/keyboard/intel_mid_keypad.c
+++ b/drivers/input/keyboard/intel_mid_keypad.c
@@ -217,22 +217,6 @@ struct mrst_keypad {
 
        unsigned short keycode[MAX_MATRIX_KEY_NUM];
        unsigned short direct_keycode[MAX_DIRECT_KEY_NUM];
-
-       /* rotary encoders 0 */
-       int enable_rotary0;
-       int rotary0_rel_code;
-       int rotary0_up_key;
-       int rotary0_down_key;
-
-       /* rotary encoders 1 */
-       int enable_rotary1;
-       int rotary1_rel_code;
-       int rotary1_up_key;
-       int rotary1_down_key;
-
-       int rotary_rel_code[2];
-       int rotary_up_key[2];
-       int rotary_down_key[2];
 };
 
 static void mrst_keypad_build_keycode(struct mrst_keypad *keypad)
@@ -344,55 +328,6 @@ scan:
        memcpy(keypad->matrix_key_state, new_state, sizeof(new_state));
 }
 
-#define DEFAULT_KPREC  (0x007f007f)
-
-static inline int rotary_delta(uint32_t kprec)
-{
-       if (kprec & KPREC_OF0)
-               return (kprec & 0xff) + 0x7f;
-       else if (kprec & KPREC_UF0)
-               return (kprec & 0xff) - 0x7f - 0xff;
-       else
-               return (kprec & 0xff) - 0x7f;
-}
-
-static void report_rotary_event(struct mrst_keypad *keypad, int r, int delta)
-{
-       struct input_dev *dev = keypad->input_dev;
-
-       if (delta == 0)
-               return;
-
-       if (keypad->rotary_up_key[r] && keypad->rotary_down_key[r]) {
-               int keycode = (delta > 0) ? keypad->rotary_up_key[r] :
-                                           keypad->rotary_down_key[r];
-
-               /* simulate a press-n-release */
-               input_report_key(dev, keycode, 1);
-               input_sync(dev);
-               input_report_key(dev, keycode, 0);
-               input_sync(dev);
-       } else {
-               input_report_rel(dev, keypad->rotary_rel_code[r], delta);
-               input_sync(dev);
-       }
-}
-
-static void mrst_keypad_scan_rotary(struct mrst_keypad *keypad)
-{
-       unsigned int kprec;
-
-       /* read and reset to default count value */
-       kprec = keypad_readl(KPREC);
-       keypad_writel(KPREC, DEFAULT_KPREC);
-
-       if (keypad->enable_rotary0)
-               report_rotary_event(keypad, 0, rotary_delta(kprec));
-
-       if (keypad->enable_rotary1)
-               report_rotary_event(keypad, 1, rotary_delta(kprec >> 16));
-}
-
 static void mrst_keypad_scan_direct(struct mrst_keypad *keypad)
 {
        unsigned int new_state;
@@ -401,9 +336,6 @@ static void mrst_keypad_scan_direct(struct mrst_keypad 
*keypad)
 
        kpdk = keypad_readl(KPDK);
 
-       if (keypad->enable_rotary0 || keypad->enable_rotary1)
-               mrst_keypad_scan_rotary(keypad);
-
        if (!keypad->direct_key_num) {
                keypad->direct_key_state = 0;
                return;
-- 
1.7.3.1

_______________________________________________
MeeGo-kernel mailing list
[email protected]
http://lists.meego.com/listinfo/meego-kernel

Reply via email to