From a64df5bd240324b9551cffbf9171888ccaa3fdeb Mon Sep 17 00:00:00 2001 From: Daniel Hillenbrand Date: Fri, 23 Aug 2013 21:54:03 +0200 Subject: cypress-touchkey: remove backlight timeout feature Userspace implementation: http://review.cyanogenmod.org/48796 http://review.cyanogenmod.org/48872 http://review.cyanogenmod.org/48884 Change-Id: Id4ac50168220310e82aa4aae367dad4e72e3a9c3 --- drivers/input/keyboard/cypress/cypress-touchkey.c | 518 ++++++++-------------- drivers/input/keyboard/cypress/cypress-touchkey.h | 23 - drivers/input/touchscreen/mms152_ts.c | 34 -- drivers/input/touchscreen/mms_ts.c | 9 - drivers/input/touchscreen/mxt224_u1.c | 6 - 5 files changed, 175 insertions(+), 415 deletions(-) delete mode 100644 drivers/input/keyboard/cypress/cypress-touchkey.h (limited to 'drivers') diff --git a/drivers/input/keyboard/cypress/cypress-touchkey.c b/drivers/input/keyboard/cypress/cypress-touchkey.c index 1944e56..ef8a6b8 100644 --- a/drivers/input/keyboard/cypress/cypress-touchkey.c +++ b/drivers/input/keyboard/cypress/cypress-touchkey.c @@ -37,8 +37,6 @@ #include #include "issp_extern.h" -#include "cypress-touchkey.h" - #ifdef CONFIG_TOUCHSCREEN_ATMEL_MXT540E #include #else @@ -66,7 +64,7 @@ static int touchkey_keycode[] = { 0, KEY_MENU, KEY_ENTER, KEY_BACK, KEY_END, #elif defined(TK_USE_4KEY_TYPE_NA) - KEY_SEARCH, KEY_BACK, KEY_HOME, KEY_MENU, + KEY_SEARCH, KEY_BACK, KEY_HOMEPAGE, KEY_MENU, #elif defined(TK_USE_2KEY_TYPE_M0) KEY_BACK, KEY_MENU, @@ -78,11 +76,6 @@ static int touchkey_keycode[] = { 0, }; static const int touchkey_count = sizeof(touchkey_keycode) / sizeof(int); -struct touchkey_i2c *tkey_i2c_local; -struct timer_list touch_led_timer; -int touch_led_timeout = 3; // timeout for the touchkey backlight in secs -int touch_led_disabled = 0; // 1= force disable the touchkey backlight - #if defined(TK_HAS_AUTOCAL) static u16 raw_data0; static u16 raw_data1; @@ -115,8 +108,8 @@ static bool g_debug_tkey = FALSE; static int touchkey_i2c_check(struct touchkey_i2c *tkey_i2c); -static u8 menu_sensitivity; -static u8 back_sensitivity; +static u16 menu_sensitivity; +static u16 back_sensitivity; #if defined(TK_USE_4KEY) static u8 home_sensitivity; static u8 search_sensitivity; @@ -161,10 +154,10 @@ static ssize_t brightness_control(struct device *dev, int data; if (sscanf(buf, "%d\n", &data) == 1) { - pr_err("[TouchKey] touch_led_brightness: %d\n", data); + printk(KERN_ERR "[TouchKey] touch_led_brightness: %d\n", data); change_touch_key_led_voltage(data); } else { - pr_err("[TouchKey] touch_led_brightness Error\n"); + printk(KERN_ERR "[TouchKey] touch_led_brightness Error\n"); } return size; @@ -191,7 +184,7 @@ static int i2c_touchkey_read(struct i2c_client *client, if ((client == NULL) || !(touchkey_enable == 1) || !touchkey_probe) { - pr_err("[TouchKey] touchkey is not enabled. %d\n", + printk(KERN_ERR "[TouchKey] touchkey is not enabled. %d\n", __LINE__); return -ENODEV; } @@ -210,7 +203,7 @@ static int i2c_touchkey_read(struct i2c_client *client, if (err >= 0) return 0; - pr_err("[TouchKey] %s %d i2c transfer error\n", + printk(KERN_ERR "[TouchKey] %s %d i2c transfer error\n", __func__, __LINE__); mdelay(10); } @@ -229,7 +222,7 @@ static int i2c_touchkey_write(struct i2c_client *client, if ((client == NULL) || !(touchkey_enable == 1) || !touchkey_probe) { - pr_err("[TouchKey] touchkey is not enabled. %d\n", + printk(KERN_ERR "[TouchKey] touchkey is not enabled. %d\n", __LINE__); return -ENODEV; } @@ -249,7 +242,7 @@ static int i2c_touchkey_write(struct i2c_client *client, if (err >= 0) return 0; - pr_debug("[TouchKey] %s %d i2c transfer error\n", + printk(KERN_DEBUG "[TouchKey] %s %d i2c transfer error\n", __func__, __LINE__); mdelay(10); } @@ -272,10 +265,11 @@ static int touchkey_autocalibration(struct touchkey_i2c *tkey_i2c) while (retry < 3) { ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 4); if (ret < 0) { - pr_err("[TouchKey]i2c read fail.\n"); + printk(KERN_ERR "[TouchKey]i2c read fail.\n"); return ret; } - pr_debug("[TouchKey] data[0]=%x data[1]=%x data[2]=%x data[3]=%x\n", + printk(KERN_DEBUG + "[TouchKey] data[0]=%x data[1]=%x data[2]=%x data[3]=%x\n", data[0], data[1], data[2], data[3]); /* Send autocal Command */ @@ -290,23 +284,24 @@ static int touchkey_autocalibration(struct touchkey_i2c *tkey_i2c) ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 6); if ((data[5] & TK_BIT_AUTOCAL)) { - pr_debug("[Touchkey] autocal Enabled\n"); + printk(KERN_DEBUG "[Touchkey] autocal Enabled\n"); break; } else - pr_debug("[Touchkey] autocal disabled, retry %d\n", + printk(KERN_DEBUG + "[Touchkey] autocal disabled, retry %d\n", retry); retry = retry + 1; } if (retry == 3) - pr_debug("[Touchkey] autocal failed\n"); + printk(KERN_DEBUG "[Touchkey] autocal failed\n"); return count; } #endif -#if 0 /* CONFIG_TARGET_LOCALE_NAATT */ +#ifdef CONFIG_TARGET_LOCALE_NAATT static ssize_t set_touchkey_autocal_testmode(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) @@ -317,7 +312,7 @@ static ssize_t set_touchkey_autocal_testmode(struct device *dev, int on_off; if (sscanf(buf, "%d\n", &on_off) == 1) { - pr_err("[TouchKey] Test Mode : %d\n", on_off); + printk(KERN_ERR "[TouchKey] Test Mode : %d\n", on_off); if (on_off == 1) { set_data = 0x40; @@ -333,7 +328,7 @@ static ssize_t set_touchkey_autocal_testmode(struct device *dev, #endif } } else { - pr_err("[TouchKey] touch_led_brightness Error\n"); + printk(KERN_ERR "[TouchKey] touch_led_brightness Error\n"); } return count; @@ -348,24 +343,24 @@ static ssize_t touchkey_raw_data0_show(struct device *dev, u8 data[26] = { 0, }; int ret; - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 26); #if defined(CONFIG_TARGET_LOCALE_NA) - pr_debug("called %s data[18] =%d,data[19] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[18] =%d,data[19] = %d\n", __func__, data[18], data[19]); raw_data0 = ((0x00FF & data[18]) << 8) | data[19]; #elif defined(CONFIG_MACH_M0) || defined(CONFIG_MACH_C1)\ || defined(CONFIG_MACH_M3)\ || defined(CONFIG_MACH_T0) - pr_debug("called %s data[16] =%d,data[17] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[16] =%d,data[17] = %d\n", __func__, data[16], data[17]); raw_data0 = ((0x00FF & data[16]) << 8) | data[17]; /* menu*/ #elif defined(CONFIG_MACH_Q1_BD) - pr_debug("called %s data[16] =%d,data[17] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[16] =%d,data[17] = %d\n", __func__, data[16], data[17]); raw_data0 = ((0x00FF & data[14]) << 8) | data[15]; #else - pr_debug("called %s data[18] =%d,data[19] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[18] =%d,data[19] = %d\n", __func__, data[10], data[11]); raw_data0 = ((0x00FF & data[10]) << 8) | data[11]; #endif @@ -379,24 +374,24 @@ static ssize_t touchkey_raw_data1_show(struct device *dev, u8 data[26] = { 0, }; int ret; - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 26); #if defined(CONFIG_TARGET_LOCALE_NA) - pr_debug("called %s data[20] =%d,data[21] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[20] =%d,data[21] = %d\n", __func__, data[20], data[21]); raw_data1 = ((0x00FF & data[20]) << 8) | data[21]; #elif defined(CONFIG_MACH_M0) || defined(CONFIG_MACH_C1)\ || defined(CONFIG_MACH_M3)\ || defined(CONFIG_MACH_T0) - pr_debug("called %s data[14] =%d,data[15] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[14] =%d,data[15] = %d\n", __func__, data[14], data[15]); raw_data1 = ((0x00FF & data[14]) << 8) | data[15]; /*back*/ #elif defined(CONFIG_MACH_Q1_BD) - pr_debug("called %s data[14] =%d,data[15] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[14] =%d,data[15] = %d\n", __func__, data[14], data[15]); raw_data1 = ((0x00FF & data[16]) << 8) | data[17]; #else - pr_debug("called %s data[20] =%d,data[21] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[20] =%d,data[21] = %d\n", __func__, data[12], data[13]); raw_data1 = ((0x00FF & data[12]) << 8) | data[13]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -410,14 +405,14 @@ static ssize_t touchkey_raw_data2_show(struct device *dev, u8 data[26] = { 0, }; int ret; - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 26); #if defined(CONFIG_TARGET_LOCALE_NA) - pr_debug("called %s data[22] =%d,data[23] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[22] =%d,data[23] = %d\n", __func__, data[22], data[23]); raw_data2 = ((0x00FF & data[22]) << 8) | data[23]; #else - pr_debug("called %s data[22] =%d,data[23] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[22] =%d,data[23] = %d\n", __func__, data[14], data[15]); raw_data2 = ((0x00FF & data[14]) << 8) | data[15]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -431,14 +426,14 @@ static ssize_t touchkey_raw_data3_show(struct device *dev, u8 data[26] = { 0, }; int ret; - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 26); #if defined(CONFIG_TARGET_LOCALE_NA) - pr_debug("called %s data[24] =%d,data[25] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[24] =%d,data[25] = %d\n", __func__, data[24], data[25]); raw_data3 = ((0x00FF & data[24]) << 8) | data[25]; #else - pr_debug("called %s data[24] =%d,data[25] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[24] =%d,data[25] = %d\n", __func__, data[16], data[17]); raw_data3 = ((0x00FF & data[16]) << 8) | data[17]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -456,9 +451,9 @@ static ssize_t touchkey_idac0_show(struct device *dev, return 0; #endif - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); - pr_debug("called %s data[6] =%d\n", __func__, data[6]); + printk(KERN_DEBUG "called %s data[6] =%d\n", __func__, data[6]); idac0 = data[6]; return sprintf(buf, "%d\n", idac0); } @@ -474,9 +469,9 @@ static ssize_t touchkey_idac1_show(struct device *dev, return 0; #endif - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); - pr_debug("called %s data[7] = %d\n", __func__, data[7]); + printk(KERN_DEBUG "called %s data[7] = %d\n", __func__, data[7]); idac1 = data[7]; return sprintf(buf, "%d\n", idac1); } @@ -492,9 +487,9 @@ static ssize_t touchkey_idac2_show(struct device *dev, return 0; #endif - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); - pr_debug("called %s data[8] =%d\n", __func__, data[8]); + printk(KERN_DEBUG "called %s data[8] =%d\n", __func__, data[8]); idac2 = data[8]; return sprintf(buf, "%d\n", idac2); } @@ -510,9 +505,9 @@ static ssize_t touchkey_idac3_show(struct device *dev, return 0; #endif - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); - pr_debug("called %s data[9] = %d\n", __func__, data[9]); + printk(KERN_DEBUG "called %s data[9] = %d\n", __func__, data[9]); idac3 = data[9]; return sprintf(buf, "%d\n", idac3); } @@ -524,9 +519,9 @@ static ssize_t touchkey_threshold_show(struct device *dev, u8 data[10]; int ret; - pr_debug("called %s\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); - pr_debug("called %s data[4] = %d\n", __func__, data[4]); + printk(KERN_DEBUG "called %s data[4] = %d\n", __func__, data[4]); touchkey_threshold = data[4]; return sprintf(buf, "%d\n", touchkey_threshold); } @@ -544,12 +539,13 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); if (ret < 0) { - pr_debug("[TouchKey] i2c read fail. do not excute firm update.\n"); + printk(KERN_DEBUG + "[TouchKey] i2c read fail. do not excute firm update.\n"); data[1] = 0; data[2] = 0; } - pr_err("%s F/W version: 0x%x, Module version:0x%x\n", __func__, + printk(KERN_ERR "%s F/W version: 0x%x, Module version:0x%x\n", __func__, data[1], data[2]); tkey_i2c->firmware_ver = data[1]; @@ -563,34 +559,39 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) if ((tkey_i2c->firmware_ver < TK_FIRMWARE_VER) && (tkey_i2c->module_ver == TK_MODULE_VER)) { #endif - pr_debug("[TouchKey] firmware auto update excute\n"); + printk(KERN_DEBUG "[TouchKey] firmware auto update excute\n"); tkey_i2c->update_status = TK_UPDATE_DOWN; while (retry--) { if (ISSP_main(tkey_i2c) == 0) { - pr_debug("[TouchKey]firmware update succeeded\n"); + printk(KERN_DEBUG + "[TouchKey]firmware update succeeded\n"); tkey_i2c->update_status = TK_UPDATE_PASS; msleep(50); break; } msleep(50); - pr_debug("[TouchKey] firmware update failed. retry\n"); + printk(KERN_DEBUG + "[TouchKey] firmware update failed. retry\n"); } if (retry <= 0) { tkey_i2c->pdata->power_on(0); tkey_i2c->update_status = TK_UPDATE_FAIL; - pr_debug("[TouchKey] firmware update failed.\n"); + printk(KERN_DEBUG + "[TouchKey] firmware update failed.\n"); } ret = touchkey_i2c_check(tkey_i2c); if (ret < 0) { - pr_debug("[TouchKey] i2c read fail.\n"); + printk(KERN_DEBUG + "[TouchKey] i2c read fail.\n"); return TK_UPDATE_FAIL; } #if defined(CONFIG_TARGET_LOCALE_KOR) ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); if (ret < 0) { - pr_debug("[TouchKey] i2c read fail. do not excute firm update.\n"); + printk(KERN_DEBUG + "[TouchKey] i2c read fail. do not excute firm update.\n"); } tkey_i2c->firmware_ver = data[1]; tkey_i2c->module_ver = data[2]; @@ -598,10 +599,13 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) printk(KERN_DEBUG "[TouchKey] firm ver = %d, module ver = %d\n", tkey_i2c->firmware_ver, tkey_i2c->module_ver); } else { - pr_debug("[TouchKey] firmware auto update do not excute\n"); - pr_debug("[TouchKey] firmware_ver(banary=%d, current=%d)\n", + printk(KERN_DEBUG + "[TouchKey] firmware auto update do not excute\n"); + printk(KERN_DEBUG + "[TouchKey] firmware_ver(banary=%d, current=%d)\n", TK_FIRMWARE_VER, tkey_i2c->firmware_ver); - pr_debug("[TouchKey] module_ver(banary=%d, current=%d)\n", + printk(KERN_DEBUG + "[TouchKey] module_ver(banary=%d, current=%d)\n", TK_MODULE_VER, tkey_i2c->module_ver); } enable_irq(tkey_i2c->irq); @@ -616,11 +620,12 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); if (ret < 0) { - pr_debug("[TouchKey] i2c read fail. do not excute firm update.\n"); + printk(KERN_DEBUG + "[TouchKey] i2c read fail. do not excute firm update.\n"); return ret; } - pr_err("%s F/W version: 0x%x, Module version:0x%x\n", __func__, + printk(KERN_ERR "%s F/W version: 0x%x, Module version:0x%x\n", __func__, data[1], data[2]); retry = 3; @@ -631,11 +636,12 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) tkey_i2c->update_status = TK_UPDATE_DOWN; while (retry--) { if (ISSP_main(tkey_i2c) == 0) { - pr_err("[TOUCHKEY]Touchkey_update succeeded\n"); + printk(KERN_ERR + "[TOUCHKEY]Touchkey_update succeeded\n"); tkey_i2c->update_status = TK_UPDATE_PASS; break; } - pr_err("touchkey_update failed...retry...\n"); + printk(KERN_ERR "touchkey_update failed...retry...\n"); } if (retry <= 0) { tkey_i2c->pdata->power_on(0); @@ -644,9 +650,11 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) } } else { if (tkey_i2c->firmware_ver >= 0x0A) { - pr_err("[TouchKey] Not F/W update. Cypess touch-key F/W version is latest\n"); + printk(KERN_ERR + "[TouchKey] Not F/W update. Cypess touch-key F/W version is latest\n"); } else { - pr_err("[TouchKey] Not F/W update. Cypess touch-key version(module or F/W) is not valid\n"); + printk(KERN_ERR + "[TouchKey] Not F/W update. Cypess touch-key version(module or F/W) is not valid\n"); } } return ret; @@ -657,7 +665,6 @@ static int touchkey_firmware_update(struct touchkey_i2c *tkey_i2c) static irqreturn_t touchkey_interrupt(int irq, void *dev_id) { struct touchkey_i2c *tkey_i2c = dev_id; - static const int ledCmd[] = {TK_CMD_LED_ON, TK_CMD_LED_OFF}; u8 data[3]; int ret; int retry = 10; @@ -672,7 +679,8 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) if (!ret) break; else { - pr_debug("[TouchKey] i2c read failed, ret:%d, retry: %d\n", + printk(KERN_DEBUG + "[TouchKey] i2c read failed, ret:%d, retry: %d\n", ret, retry); continue; } @@ -686,58 +694,33 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) pressed = !(data[0] & TK_BIT_PRESS_EV); if (keycode_type <= 0 || keycode_type >= touchkey_count) { - pr_debug("[Touchkey] keycode_type err\n"); + printk(KERN_DEBUG "[Touchkey] keycode_type err\n"); return IRQ_HANDLED; } - if (pressed) { + if (pressed) set_touchkey_debug('P'); - // enable lights on keydown - if (touch_led_disabled == 0) { - if (touchkey_led_status == TK_CMD_LED_OFF) { - pr_debug("[Touchkey] %s: keydown - LED ON\n", __func__); - i2c_touchkey_write(tkey_i2c->client, (u8 *) &ledCmd[0], 1); - touchkey_led_status = TK_CMD_LED_ON; - } - if (timer_pending(&touch_led_timer) == 1) { - mod_timer(&touch_led_timer, jiffies + (HZ * touch_led_timeout)); - } - } - - } else { - // touch led timeout on keyup - if (touch_led_disabled == 0) { - if (timer_pending(&touch_led_timer) == 0) { - pr_debug("[Touchkey] %s: keyup - add_timer\n", __func__); - touch_led_timer.expires = jiffies + (HZ * touch_led_timeout); - add_timer(&touch_led_timer); - } else { - mod_timer(&touch_led_timer, jiffies + (HZ * touch_led_timeout)); - } - } - } - if (get_tsp_status() && pressed) - pr_debug("[TouchKey] touchkey pressed but don't send event because touch is pressed.\n"); + printk(KERN_DEBUG "[TouchKey] touchkey pressed but don't send event because touch is pressed.\n"); else { input_report_key(tkey_i2c->input_dev, touchkey_keycode[keycode_type], pressed); input_sync(tkey_i2c->input_dev); #if !defined(CONFIG_SAMSUNG_PRODUCT_SHIP) - pr_debug("[TouchKey] keycode:%d pressed:%d\n", + printk(KERN_DEBUG "[TouchKey] keycode:%d pressed:%d\n", touchkey_keycode[keycode_type], pressed); #else - pr_debug("[TouchKey] pressed:%d\n", + printk(KERN_DEBUG "[TouchKey] pressed:%d\n", pressed); #endif #if defined(CONFIG_TARGET_LOCALE_KOR) if (g_debug_tkey == true) { - pr_debug("[TouchKey] keycode[%d]=%d pressed:%d\n", + printk(KERN_DEBUG "[TouchKey] keycode[%d]=%d pressed:%d\n", keycode_type, touchkey_keycode[keycode_type], pressed); } else { - pr_debug("[TouchKey] pressed:%d\n", pressed); + printk(KERN_DEBUG "[TouchKey] pressed:%d\n", pressed); } #endif } @@ -756,7 +739,7 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) #if 0 if (gpio_get_value(_3_GPIO_TOUCH_INT)) { - pr_debug("[TouchKey] Unknown state.\n", __func__); + printk(KERN_DEBUG "[TouchKey] Unknown state.\n", __func__); return IRQ_HANDLED; } #endif @@ -780,7 +763,8 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) if (!ret) break; else { - pr_debug("[TouchKey] i2c read failed, ret:%d, retry: %d\n", + printk(KERN_DEBUG + "[TouchKey] i2c read failed, ret:%d, retry: %d\n", ret, retry); continue; } @@ -821,16 +805,15 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) pressed = !(data[0] & TK_BIT_PRESS_EV); if (keycode_type <= 0 || keycode_type >= touchkey_count) { - pr_debug("[Touchkey] keycode_type err\n"); + printk(KERN_DEBUG "[Touchkey] keycode_type err\n"); return IRQ_HANDLED; } - if (pressed) { + if (pressed) set_touchkey_debug('P'); - } if (get_tsp_status() && pressed) - pr_debug("[TouchKey] touchkey pressed" + printk(KERN_DEBUG "[TouchKey] touchkey pressed" " but don't send event because touch is pressed.\n"); else { input_report_key(touchkey_driver->input_dev, @@ -844,14 +827,14 @@ static irqreturn_t touchkey_interrupt(int irq, void *dev_id) printk(KERN_DEBUG "search key sensitivity = %d\n", search_sensitivity); if (keycode_type == 2) - pr_debug("back key sensitivity = %d\n", + printk(KERN_DEBUG "back key sensitivity = %d\n", back_sensitivity); #ifdef CONFIG_TARGET_LOCALE_NA if (keycode_type == 3) - pr_debug("home key sensitivity = %d\n", + printk(KERN_DEBUG "home key sensitivity = %d\n", home_sensitivity); if (keycode_type == 4) - pr_debug("menu key sensitivity = %d\n", + printk(KERN_DEBUG "menu key sensitivity = %d\n", menu_sensitivity); #endif @@ -871,7 +854,7 @@ static int sec_touchkey_early_suspend(struct early_suspend *h) disable_irq(tkey_i2c->irq); ret = cancel_work_sync(&tkey_i2c->update_work); if (ret) { - pr_debug("[Touchkey] enable_irq ret=%d\n", ret); + printk(KERN_DEBUG "[Touchkey] enable_irq ret=%d\n", ret); enable_irq(tkey_i2c->irq); } @@ -884,9 +867,9 @@ static int sec_touchkey_early_suspend(struct early_suspend *h) touchkey_enable = 0; set_touchkey_debug('S'); - pr_debug("[TouchKey] sec_touchkey_early_suspend\n"); + printk(KERN_DEBUG "[TouchKey] sec_touchkey_early_suspend\n"); if (touchkey_enable < 0) { - pr_debug("[TouchKey] ---%s---touchkey_enable: %d\n", + printk(KERN_DEBUG "[TouchKey] ---%s---touchkey_enable: %d\n", __func__, touchkey_enable); return 0; } @@ -909,13 +892,13 @@ static int sec_touchkey_late_resume(struct early_suspend *h) #endif set_touchkey_debug('R'); - pr_debug("[TouchKey] sec_touchkey_late_resume\n"); + printk(KERN_DEBUG "[TouchKey] sec_touchkey_late_resume\n"); /* enable ldo11 */ tkey_i2c->pdata->power_on(1); if (touchkey_enable < 0) { - pr_debug("[TouchKey] ---%s---touchkey_enable: %d\n", + printk(KERN_DEBUG "[TouchKey] ---%s---touchkey_enable: %d\n", __func__, touchkey_enable); return 0; } @@ -932,7 +915,7 @@ static int sec_touchkey_late_resume(struct early_suspend *h) touchled_cmd_reversed = 0; i2c_touchkey_write(tkey_i2c->client, (u8 *) &touchkey_led_status, 1); - pr_debug("[Touchkey] LED returned on\n"); + printk(KERN_DEBUG "[Touchkey] LED returned on\n"); } #ifdef TEST_JIG_MODE i2c_touchkey_write(tkey_i2c->client, &get_touch, 1); @@ -951,7 +934,7 @@ static int touchkey_i2c_check(struct touchkey_i2c *tkey_i2c) ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); if (ret < 0) { - pr_err("[TouchKey] module version read fail\n"); + printk(KERN_ERR "[TouchKey] module version read fail\n"); return ret; } @@ -983,8 +966,8 @@ static ssize_t touch_version_read(struct device *dev, count = sprintf(buf, "0x%x\n", data[1]); - pr_debug("[TouchKey] touch_version_read 0x%x\n", data[1]); - pr_debug("[TouchKey] module_version_read 0x%x\n", data[2]); + printk(KERN_DEBUG "[TouchKey] touch_version_read 0x%x\n", data[1]); + printk(KERN_DEBUG "[TouchKey] module_version_read 0x%x\n", data[2]); return count; } @@ -1006,15 +989,16 @@ void touchkey_update_func(struct work_struct *work) #if defined(CONFIG_TARGET_LOCALE_NAATT) char data[3]; i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); - pr_debug("[Touchkey] %s: F/W version: 0x%x, Module version:0x%x\n", + printk(KERN_DEBUG "[%s] F/W version: 0x%x, Module version:0x%x\n", __func__, data[1], data[2]); #endif tkey_i2c->update_status = TK_UPDATE_DOWN; - pr_debug("[Touchkey] %s: start\n", __func__); + printk(KERN_DEBUG "[TouchKey] %s start\n", __func__); touchkey_enable = 0; while (retry--) { if (ISSP_main(tkey_i2c) == 0) { - pr_debug("[TouchKey] touchkey_update succeeded\n"); + printk(KERN_DEBUG + "[TouchKey] touchkey_update succeeded\n"); msleep(50); touchkey_enable = 1; #if defined(TK_HAS_AUTOCAL) @@ -1078,17 +1062,6 @@ static ssize_t touch_update_read(struct device *dev, return count; } -static ssize_t touchkey_led_control_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - int ret; - - ret = sprintf(buf, "%d\n", touchkey_led_status); - pr_info("[Touchkey] %s: touchkey_led_status=%d\n", __func__, touchkey_led_status); - - return ret; -} - static ssize_t touchkey_led_control(struct device *dev, struct device_attribute *attr, const char *buf, size_t size) @@ -1104,13 +1077,13 @@ static ssize_t touchkey_led_control(struct device *dev, #endif ret = sscanf(buf, "%d", &data); if (ret != 1) { - printk(KERN_DEBUG "[Touchkey] %s: %d err\n", + printk(KERN_DEBUG "[TouchKey] %s, %d err\n", __func__, __LINE__); return size; } if (data != 1 && data != 2) { - printk(KERN_DEBUG "[Touchkey] %s: wrong cmd %x\n", + printk(KERN_DEBUG "[TouchKey] %s wrong cmd %x\n", __func__, data); return size; } @@ -1122,154 +1095,17 @@ static ssize_t touchkey_led_control(struct device *dev, data = ledCmd[data-1]; #endif - if (touch_led_disabled == 0) { - ret = i2c_touchkey_write(tkey_i2c->client, (u8 *) &data, 1); - } - - if(data == ledCmd[0]) { - if (touch_led_disabled == 0) { - if (timer_pending(&touch_led_timer) == 0) { - pr_debug("[Touchkey] %s: add_timer\n", __func__); - touch_led_timer.expires = jiffies + (HZ * touch_led_timeout); - add_timer(&touch_led_timer); - } else { - mod_timer(&touch_led_timer, jiffies + (HZ * touch_led_timeout)); - } - } - } else { - if (timer_pending(&touch_led_timer) == 1) { - pr_debug("[Touchkey] %s: del_timer\n", __func__); - del_timer(&touch_led_timer); - } - } - - if (ret == -ENODEV) { - pr_err("[Touchkey] error to write i2c\n"); + ret = i2c_touchkey_write(tkey_i2c->client, (u8 *) &data, 1); + + if (ret == -ENODEV) touchled_cmd_reversed = 1; - } - pr_debug("[Touchkey] %s: touchkey_led_status=%d\n", __func__, data); touchkey_led_status = data; return size; } -static ssize_t touch_led_force_disable_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - int ret; - - ret = sprintf(buf, "%d\n", touch_led_disabled); - pr_info("[Touchkey] %s: touch_led_disabled=%d\n", __func__, touch_led_disabled); - - return ret; -} - -static ssize_t touch_led_force_disable_store(struct device *dev, - struct device_attribute *attr, const char *buf, - size_t size) -{ - struct touchkey_i2c *tkey_i2c = dev_get_drvdata(dev); - static const int ledCmd[] = {TK_CMD_LED_ON, TK_CMD_LED_OFF}; - int data, ret; - - ret = sscanf(buf, "%d\n", &data); - if (unlikely(ret != 1)) { - pr_err("[Touchkey] %s: err\n", __func__); - return -EINVAL; - } - pr_info("[Touchkey] %s: value=%d\n", __func__, data); - - if (data == 1) { - i2c_touchkey_write(tkey_i2c->client, (u8 *) &ledCmd[1], 1); - touchkey_led_status = TK_CMD_LED_OFF; - } - touch_led_disabled = data; - - return size; -} -static DEVICE_ATTR(force_disable, S_IRUGO | S_IWUSR | S_IWGRP, - touch_led_force_disable_show, touch_led_force_disable_store); - -static ssize_t touch_led_timeout_show(struct device *dev, - struct device_attribute *attr, char *buf) -{ - int ret; - - ret = sprintf(buf, "%d\n", touch_led_timeout); - pr_info("[Touchkey] %s: touch_led_timeout=%d\n", __func__, touch_led_timeout); - - return ret; -} - -static ssize_t touch_led_timeout_store(struct device *dev, - struct device_attribute *attr, const char *buf, - size_t size) -{ - int data; - int ret; - - ret = sscanf(buf, "%d\n", &data); - if (unlikely(ret != 1)) { - pr_err("[Touchkey] %s: err\n", __func__); - return -EINVAL; - } - pr_info("[Touchkey] %s: new timeout=%d\n", __func__, data); - touch_led_timeout = data; - - return size; -} -static DEVICE_ATTR(timeout, S_IRUGO | S_IWUSR | S_IWGRP, - touch_led_timeout_show, touch_led_timeout_store); - -void touch_led_timedout(unsigned long ptr) -{ - queue_work(tkey_i2c_local->wq, &tkey_i2c_local->work); -} - -void touch_led_timedout_work(struct work_struct *work) -{ - struct touchkey_i2c *tkey_i2c = container_of(work, struct touchkey_i2c, work); - static const int ledCmd[] = {TK_CMD_LED_ON, TK_CMD_LED_OFF}; - - if (touch_led_timeout != 0) - { - pr_debug("[Touchkey] %s: disabling touchled\n", __func__); - i2c_touchkey_write(tkey_i2c->client, (u8 *) &ledCmd[1], 1); - touchkey_led_status = TK_CMD_LED_OFF; - } -} - -void touchscreen_state_report(int state) -{ - static const int ledCmd[] = {TK_CMD_LED_ON, TK_CMD_LED_OFF}; - - if (touch_led_disabled == 0) { - if (state == 1) { - if(touchkey_led_status == TK_CMD_LED_OFF) { - pr_debug("[Touchkey] %s: enable touchleds\n", __func__); - i2c_touchkey_write(tkey_i2c_local->client, (u8 *) &ledCmd[0], 1); - touchkey_led_status = TK_CMD_LED_ON; - } else { - if (timer_pending(&touch_led_timer) == 1) { - pr_debug("[Touchkey] %s: mod_timer\n", __func__); - mod_timer(&touch_led_timer, jiffies + (HZ * touch_led_timeout)); - } - } - } else if (state == 0) { - if (timer_pending(&touch_led_timer) == 1) { - pr_debug("[Touchkey] %s: mod_timer\n", __func__); - mod_timer(&touch_led_timer, jiffies + (HZ * touch_led_timeout)); - } else if (touchkey_led_status == TK_CMD_LED_ON){ - pr_debug("[Touchkey] %s: add_timer\n", __func__); - touch_led_timer.expires = jiffies + (HZ * touch_led_timeout); - add_timer(&touch_led_timer); - } - } - } -} - -#if defined(TK_USE_4KEY) || defined(CONFIG_TARGET_LOCALE_NAATT) || defined(CONFIG_TARGET_LOCALE_NA) +#if defined(TK_USE_4KEY) static ssize_t touchkey_menu_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -1277,20 +1113,20 @@ static ssize_t touchkey_menu_show(struct device *dev, u8 data[18] = { 0, }; int ret; - pr_debug("[Touchkey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 18); #ifdef CONFIG_TARGET_LOCALE_NA if (tkey_i2c->module_ver < 8) { - pr_debug("[Touchkey] %s: data[12] =%d,data[13] = %d\n", + printk(KERN_DEBUG "called %s data[12] =%d,data[13] = %d\n", __func__, data[12], data[13]); menu_sensitivity = ((0x00FF & data[12]) << 8) | data[13]; } else { - pr_debug("[Touchkey] %s: data[17] =%d\n", __func__, + printk(KERN_DEBUG "called %s data[17] =%d\n", __func__, data[17]); menu_sensitivity = data[17]; } #else - pr_debug("[Touchkey] %s: data[10] =%d,data[11] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[10] =%d,data[11] = %d\n", __func__, data[10], data[11]); menu_sensitivity = ((0x00FF & data[10]) << 8) | data[11]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -1304,20 +1140,20 @@ static ssize_t touchkey_home_show(struct device *dev, u8 data[18] = { 0, }; int ret; - pr_debug("[TouchKey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 18); #ifdef CONFIG_TARGET_LOCALE_NA if (tkey_i2c->module_ver < 8) { - pr_debug("[Touchkey] %s: data[10] =%d,data[11] = %d\n", + printk(KERN_DEBUG "called %s data[10] =%d,data[11] = %d\n", __func__, data[10], data[11]); home_sensitivity = ((0x00FF & data[10]) << 8) | data[11]; } else { - pr_debug("[Touchkey] %s: data[15] =%d\n", __func__, + printk(KERN_DEBUG "called %s data[15] =%d\n", __func__, data[15]); home_sensitivity = data[15]; } #else - pr_debug("[Touchkey] %s: data[12] =%d,data[13] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[12] =%d,data[13] = %d\n", __func__, data[12], data[13]); home_sensitivity = ((0x00FF & data[12]) << 8) | data[13]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -1331,20 +1167,20 @@ static ssize_t touchkey_back_show(struct device *dev, u8 data[18] = { 0, }; int ret; - pr_debug("[TouchKey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 18); #ifdef CONFIG_TARGET_LOCALE_NA if (tkey_i2c->module_ver < 8) { - pr_debug("[Touchkey] %s: data[8] =%d,data[9] = %d\n", + printk(KERN_DEBUG "called %s data[8] =%d,data[9] = %d\n", __func__, data[8], data[9]); back_sensitivity = ((0x00FF & data[8]) << 8) | data[9]; } else { - pr_debug("[Touchkey] %s: data[13] =%d\n", __func__, + printk(KERN_DEBUG "called %s data[13] =%d\n", __func__, data[13]); back_sensitivity = data[13]; } #else - pr_debug("[Touchkey] %s: data[14] =%d,data[15] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[14] =%d,data[15] = %d\n", __func__, data[14], data[15]); back_sensitivity = ((0x00FF & data[14]) << 8) | data[15]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -1358,20 +1194,20 @@ static ssize_t touchkey_search_show(struct device *dev, u8 data[18] = { 0, }; int ret; - pr_debug("[TouchKey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 18); #ifdef CONFIG_TARGET_LOCALE_NA if (tkey_i2c->module_ver < 8) { - pr_debug("[Touchkey] %s: data[6] =%d,data[7] = %d\n", + printk(KERN_DEBUG "called %s data[6] =%d,data[7] = %d\n", __func__, data[6], data[7]); search_sensitivity = ((0x00FF & data[6]) << 8) | data[7]; } else { - pr_debug("[Touchkey] %s: data[11] =%d\n", __func__, + printk(KERN_DEBUG "called %s data[11] =%d\n", __func__, data[11]); search_sensitivity = data[11]; } #else - pr_debug("[Touchkey] %s: data[16] =%d,data[17] = %d\n", __func__, + printk(KERN_DEBUG "called %s data[16] =%d,data[17] = %d\n", __func__, data[16], data[17]); search_sensitivity = ((0x00FF & data[16]) << 8) | data[17]; #endif /* CONFIG_TARGET_LOCALE_NA */ @@ -1390,13 +1226,17 @@ static ssize_t touchkey_menu_show(struct device *dev, ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 14); - pr_debug("[Touchkey] %s: data[13] =%d\n", __func__, data[13]); - menu_sensitivity = data[13]; + printk(KERN_DEBUG "called %s data[12] = %d, data[13] =%d\n", __func__, + data[12], data[13]); + menu_sensitivity = ((0x00FF & data[12]) << 8) | data[13]; + printk(KERN_DEBUG "called %s menu_sensitivity =%d\n", __func__, + menu_sensitivity); + #else u8 data[10]; int ret; - pr_debug("[TouchKey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); menu_sensitivity = data[7]; #endif @@ -1415,13 +1255,16 @@ static ssize_t touchkey_back_show(struct device *dev, ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 14); - pr_debug("[Touchkey] %s: data[11] =%d\n", __func__, data[11]); - back_sensitivity = data[11]; + printk(KERN_DEBUG "called %s data[10] = %d, data[11] =%d\n", __func__, + data[10], data[11]); + back_sensitivity =((0x00FF & data[10]) << 8) | data[11]; + printk(KERN_DEBUG "called %s back_sensitivity =%d\n", __func__, + back_sensitivity); #else u8 data[10]; int ret; - pr_debug("[TouchKey] %s called\n", __func__); + printk(KERN_DEBUG "called %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 10); back_sensitivity = data[9]; #endif @@ -1452,7 +1295,7 @@ static ssize_t autocalibration_status(struct device *dev, int ret; struct touchkey_i2c *tkey_i2c = dev_get_drvdata(dev); - pr_debug("[Touchkey] %s\n", __func__); + printk(KERN_DEBUG "[Touchkey] %s\n", __func__); ret = i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 6); if ((data[5] & TK_BIT_AUTOCAL)) @@ -1498,19 +1341,20 @@ static ssize_t set_touchkey_update_show(struct device *dev, while (retry--) { if (ISSP_main(tkey_i2c) == 0) { - pr_err("[TouchKey] Touchkey_update succeeded\n"); + printk(KERN_ERR + "[TouchKey]Touchkey_update succeeded\n"); tkey_i2c->update_status = TK_UPDATE_PASS; count = 1; msleep(50); break; } - pr_err("[TouchKey] touchkey_update failed... retry...\n"); + printk(KERN_ERR "touchkey_update failed... retry...\n"); } if (retry <= 0) { /* disable ldo11 */ tkey_i2c->pdata->power_on(0); count = 0; - pr_err("[TouchKey] Touchkey_update fail\n"); + printk(KERN_ERR "[TouchKey]Touchkey_update fail\n"); tkey_i2c->update_status = TK_UPDATE_FAIL; enable_irq(tkey_i2c->irq); return count; @@ -1541,8 +1385,8 @@ static ssize_t set_touchkey_firm_version_read_show(struct device *dev, i2c_touchkey_read(tkey_i2c->client, KEYCODE_REG, data, 3); count = sprintf(buf, "0x%x\n", data[1]); - pr_debug("[TouchKey] touch_version_read 0x%x\n", data[1]); - pr_debug("[TouchKey] module_version_read 0x%x\n", data[2]); + printk(KERN_DEBUG "[TouchKey] touch_version_read 0x%x\n", data[1]); + printk(KERN_DEBUG "[TouchKey] module_version_read 0x%x\n", data[2]); return count; } @@ -1553,7 +1397,8 @@ static ssize_t set_touchkey_firm_status_show(struct device *dev, struct touchkey_i2c *tkey_i2c = dev_get_drvdata(dev); int count = 0; - pr_debug("[TouchKey] touch_update_read: update_status %d\n", + printk(KERN_DEBUG + "[TouchKey] touch_update_read: update_status %d\n", tkey_i2c->update_status); if (tkey_i2c->update_status == TK_UPDATE_PASS) @@ -1570,7 +1415,7 @@ static DEVICE_ATTR(recommended_version, S_IRUGO | S_IWUSR | S_IWGRP, touch_version_read, touch_version_write); static DEVICE_ATTR(updated_version, S_IRUGO | S_IWUSR | S_IWGRP, touch_update_read, touch_update_write); -static DEVICE_ATTR(brightness, S_IRUGO | S_IWUSR | S_IWGRP, touchkey_led_control_show, +static DEVICE_ATTR(brightness, S_IRUGO | S_IWUSR | S_IWGRP, NULL, touchkey_led_control); static DEVICE_ATTR(touchkey_menu, S_IRUGO | S_IWUSR | S_IWGRP, touchkey_menu_show, NULL); @@ -1597,7 +1442,7 @@ static DEVICE_ATTR(touchkey_brightness, S_IRUGO | S_IWUSR | S_IWGRP, NULL, brightness_control); #endif -#if 0 /* #if defined(CONFIG_TARGET_LOCALE_NAATT) */ +#if defined(CONFIG_TARGET_LOCALE_NAATT) static DEVICE_ATTR(touchkey_autocal_start, S_IRUGO | S_IWUSR | S_IWGRP, NULL, set_touchkey_autocal_testmode); #endif @@ -1636,7 +1481,7 @@ static struct attribute *touchkey_attributes[] = { #ifdef LED_LDO_WITH_REGULATOR &dev_attr_touchkey_brightness.attr, #endif -#if 0/* defined(CONFIG_TARGET_LOCALE_NAATT) */ +#if defined(CONFIG_TARGET_LOCALE_NAATT) &dev_attr_touchkey_autocal_start.attr, #endif #if defined(TK_HAS_AUTOCAL) @@ -1652,8 +1497,6 @@ static struct attribute *touchkey_attributes[] = { &dev_attr_autocal_enable.attr, &dev_attr_autocal_stat.attr, #endif - &dev_attr_timeout.attr, - &dev_attr_force_disable.attr, NULL, }; @@ -1673,7 +1516,7 @@ static int i2c_touchkey_probe(struct i2c_client *client, int i; int ret; - pr_debug("[TouchKey] i2c_touchkey_probe\n"); + printk(KERN_DEBUG "[TouchKey] i2c_touchkey_probe\n"); if (pdata == NULL) { printk(KERN_ERR "%s: no pdata\n", __func__); @@ -1683,7 +1526,7 @@ static int i2c_touchkey_probe(struct i2c_client *client, /*Check I2C functionality */ ret = i2c_check_functionality(client->adapter, I2C_FUNC_I2C); if (ret == 0) { - pr_err("[Touchkey] No I2C functionality found\n"); + printk(KERN_ERR "[Touchkey] No I2C functionality found\n"); ret = -ENODEV; return ret; } @@ -1691,15 +1534,14 @@ static int i2c_touchkey_probe(struct i2c_client *client, /*Obtain kernel memory space for touchkey i2c */ tkey_i2c = kzalloc(sizeof(struct touchkey_i2c), GFP_KERNEL); if (NULL == tkey_i2c) { - pr_err("[Touchkey] failed to allocate tkey_i2c.\n"); + printk(KERN_ERR "[Touchkey] failed to allocate tkey_i2c.\n"); return -ENOMEM; } - tkey_i2c_local = tkey_i2c; input_dev = input_allocate_device(); if (!input_dev) { - pr_err("[Touchkey] failed to allocate input device\n"); + printk(KERN_ERR"[Touchkey] failed to allocate input device\n"); kfree(tkey_i2c); return -ENOMEM; } @@ -1728,7 +1570,7 @@ static int i2c_touchkey_probe(struct i2c_client *client, ret = input_register_device(input_dev); if (ret) { - pr_err("[Touchkey] failed to register input device\n"); + printk(KERN_ERR"[Touchkey] failed to register input device\n"); input_free_device(input_dev); kfree(tkey_i2c); return err; @@ -1746,24 +1588,27 @@ static int i2c_touchkey_probe(struct i2c_client *client, tkey_i2c->dev = device_create(sec_class, NULL, 0, NULL, "sec_touchkey"); if (IS_ERR(tkey_i2c->dev)) { - pr_err("[TouchKey] Failed to create device(tkey_i2c->dev)!\n"); + printk(KERN_ERR "Failed to create device(tkey_i2c->dev)!\n"); input_unregister_device(input_dev); } else { dev_set_drvdata(tkey_i2c->dev, tkey_i2c); ret = sysfs_create_group(&tkey_i2c->dev->kobj, &touchkey_attr_group); if (ret) { - pr_err("[TouchKey]: failed to create sysfs group\n"); + printk(KERN_ERR + "[TouchKey]: failed to create sysfs group\n"); } } #if defined(CONFIG_MACH_M0) || defined(CONFIG_MACH_C1) gpio_request(GPIO_OLED_DET, "OLED_DET"); ret = gpio_get_value(GPIO_OLED_DET); - pr_debug("[TouchKey] OLED_DET = %d\n", ret); + printk(KERN_DEBUG + "[TouchKey] OLED_DET = %d\n", ret); if (ret == 0) { - pr_debug("[TouchKey] device wasn't connected to board\n"); + printk(KERN_DEBUG + "[TouchKey] device wasn't connected to board\n"); input_unregister_device(input_dev); touchkey_probe = false; @@ -1772,7 +1617,7 @@ static int i2c_touchkey_probe(struct i2c_client *client, #else ret = touchkey_i2c_check(tkey_i2c); if (ret < 0) { - pr_debug("[TouchKey] probe failed\n"); + printk(KERN_DEBUG"[TouchKey] probe failed\n"); input_unregister_device(input_dev); touchkey_probe = false; return -EBUSY; @@ -1784,7 +1629,8 @@ static int i2c_touchkey_probe(struct i2c_client *client, IRQF_DISABLED | IRQF_TRIGGER_FALLING | IRQF_ONESHOT, tkey_i2c->name, tkey_i2c); if (ret < 0) { - pr_err("[Touchkey]: failed to request irq(%d) - %d\n", + printk(KERN_ERR + "[Touchkey]: failed to request irq(%d) - %d\n", tkey_i2c->irq, ret); input_unregister_device(input_dev); touchkey_probe = false; @@ -1796,7 +1642,8 @@ static int i2c_touchkey_probe(struct i2c_client *client, #if defined(TK_HAS_FIRMWARE_UPDATE) ret = touchkey_firmware_update(tkey_i2c); if (ret < 0) { - pr_err("[Touchkey]: failed firmware updating process (%d)\n", + printk(KERN_ERR + "[Touchkey]: failed firmware updating process (%d)\n", ret); input_unregister_device(input_dev); touchkey_probe = false; @@ -1816,17 +1663,6 @@ static int i2c_touchkey_probe(struct i2c_client *client, touchkey_autocalibration(tkey_i2c); #endif set_touchkey_debug('K'); - - // init workqueue - tkey_i2c->wq = create_singlethread_workqueue("tkey_i2c_wq"); - if (!tkey_i2c->wq) { - ret = -ENOMEM; - pr_err("[Touchkey] %s: could not create workqueue\n", __func__); - } - - /* this is the thread function we run on the work queue */ - INIT_WORK(&tkey_i2c->work, touch_led_timedout_work); - return 0; } @@ -1844,13 +1680,13 @@ static int __init touchkey_init(void) #if defined(CONFIG_MACH_M0) if (system_rev < TOUCHKEY_FW_UPDATEABLE_HW_REV) { - pr_debug("[Touchkey] Doesn't support this board rev %d\n", + printk(KERN_DEBUG "[Touchkey] Doesn't support this board rev %d\n", system_rev); return 0; } #elif defined(CONFIG_MACH_C1) if (system_rev < TOUCHKEY_FW_UPDATEABLE_HW_REV) { - pr_debug("[Touchkey] Doesn't support this board rev %d\n", + printk(KERN_DEBUG "[Touchkey] Doesn't support this board rev %d\n", system_rev); return 0; } @@ -1863,23 +1699,19 @@ static int __init touchkey_init(void) ret = i2c_add_driver(&touchkey_i2c_driver); if (ret) { - pr_err("[TouchKey] registration failed, module not inserted.ret= %d\n", + printk(KERN_ERR + "[TouchKey] registration failed, module not inserted.ret= %d\n", ret); } #ifdef TEST_JIG_MODE i2c_touchkey_write(tkey_i2c->client, &get_touch, 1); #endif - - // init the touchled timer - init_timer(&touch_led_timer); - touch_led_timer.function = touch_led_timedout; - return ret; } static void __exit touchkey_exit(void) { - pr_debug("[TouchKey] %s\n", __func__); + printk(KERN_DEBUG "[TouchKey] %s\n", __func__); i2c_del_driver(&touchkey_i2c_driver); } diff --git a/drivers/input/keyboard/cypress/cypress-touchkey.h b/drivers/input/keyboard/cypress/cypress-touchkey.h deleted file mode 100644 index 61abce2..0000000 --- a/drivers/input/keyboard/cypress/cypress-touchkey.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (C) 2012 The CyanogenMod Project - * - * Authors: Daniel Hillenbrand - * Marco Hillenbrand - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ - -void touchscreen_state_report(int state); diff --git a/drivers/input/touchscreen/mms152_ts.c b/drivers/input/touchscreen/mms152_ts.c index ad1dc98..fa1d295 100644 --- a/drivers/input/touchscreen/mms152_ts.c +++ b/drivers/input/touchscreen/mms152_ts.c @@ -49,8 +49,6 @@ #include -#include "../keyboard/cypress/cypress-touchkey.h" - #ifdef CONFIG_INPUT_FBSUSPEND #ifdef CONFIG_DRM #include @@ -977,10 +975,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) if (info->panel == 'M') { if (info->finger_state[id] != 0) { info->finger_state[id] = 0; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(0); - #ifdef CONFIG_LCD_FREQ_SWITCH dev_notice(&client->dev, "R(%c)(%d) [%2d]", info->ldi, @@ -994,10 +988,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) } else { if (info->finger_state[id] != 0) { info->finger_state[id] = 0; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(0); - dev_notice(&client->dev, "R [%2d]", id); } @@ -1006,10 +996,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) if (info->panel == 'M') { if (info->finger_state[id] != 0) { info->finger_state[id] = 0; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(0); - #ifdef CONFIG_LCD_FREQ_SWITCH dev_notice(&client->dev, "R(%c)(%d) [%2d],([%4d],[%3d])", @@ -1025,10 +1011,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) } else { if (info->finger_state[id] != 0) { info->finger_state[id] = 0; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(0); - dev_notice(&client->dev, "R [%2d],([%4d],[%3d]),S:%d W:%d", id, x, y, tmp[4], tmp[5]); @@ -1058,10 +1040,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) #ifdef CONFIG_SAMSUNG_PRODUCT_SHIP if (info->finger_state[id] == 0) { info->finger_state[id] = 1; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(1); - #ifdef CONFIG_LCD_FREQ_SWITCH dev_notice(&client->dev, "P(%c)(%d) [%2d]", info->ldi, @@ -1074,10 +1052,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) #else if (info->finger_state[id] == 0) { info->finger_state[id] = 1; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(1); - #ifdef CONFIG_LCD_FREQ_SWITCH dev_notice(&client->dev, "P(%c)(%d) [%2d],([%4d],[%3d]) w=%d, major=%d, minor=%d, angle=%d, palm=%d", @@ -1108,20 +1082,12 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) #ifdef CONFIG_SAMSUNG_PRODUCT_SHIP if (info->finger_state[id] == 0) { info->finger_state[id] = 1; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(1); - dev_notice(&client->dev, "P [%2d]", id); } #else if (info->finger_state[id] == 0) { info->finger_state[id] = 1; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(1); - dev_notice(&client->dev, "P [%2d],([%4d],[%3d]),S:%d W:%d", id, x, y, tmp[4], tmp[5]); diff --git a/drivers/input/touchscreen/mms_ts.c b/drivers/input/touchscreen/mms_ts.c index ebca68c..cdb47f7 100644 --- a/drivers/input/touchscreen/mms_ts.c +++ b/drivers/input/touchscreen/mms_ts.c @@ -50,8 +50,6 @@ #include -#include "../keyboard/cypress/cypress-touchkey.h" - #define MAX_FINGERS 10 #define MAX_WIDTH 30 #define MAX_PRESSURE 255 @@ -682,9 +680,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) , angle, palm); #else if (info->finger_state[id] != 0) { - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(0); - dev_notice(&client->dev, "finger [%d] up, palm %d\n", id, palm); } @@ -723,10 +718,6 @@ static irqreturn_t mms_ts_interrupt(int irq, void *dev_id) #else if (info->finger_state[id] == 0) { info->finger_state[id] = 1; - - // report state to cypress-touchkey for backlight timeout - touchscreen_state_report(1); - dev_notice(&client->dev, "finger [%d] down, palm %d\n", id, palm); } diff --git a/drivers/input/touchscreen/mxt224_u1.c b/drivers/input/touchscreen/mxt224_u1.c index cd0674f..5a243fb 100644 --- a/drivers/input/touchscreen/mxt224_u1.c +++ b/drivers/input/touchscreen/mxt224_u1.c @@ -28,8 +28,6 @@ #include #include -#include "../keyboard/cypress/cypress-touchkey.h" - #define OBJECT_TABLE_START_ADDRESS 7 #define OBJECT_TABLE_ELEMENT_SIZE 6 @@ -1339,10 +1337,6 @@ static void report_input_data(struct mxt224_data *data) copy_data->lock_status = 1; } } - - /* tell cypress keypad we had finger activity */ - touchscreen_state_report(touch_is_pressed); - } void palm_recovery(void) -- cgit v1.1