提交 de8c8b06 编写于 作者: J Jochen Friedrich 提交者: Samuel Ortiz

mfd: Add BTN_TOUCH event to ucb1x00-ts

Add BTN_TOUCH event reporting to ucb1x00_ts touchscreen driver.
This will make this touchscreen driver behave consistently wrt.
BTN_TOUCH.
Signed-off-by: NJochen Friedrich <jochen@scram.de>
Acked-by: NDmitry Torokhov <dtor@mail.ru>
Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
上级 ce5d4a43
...@@ -60,6 +60,7 @@ static inline void ucb1x00_ts_evt_add(struct ucb1x00_ts *ts, u16 pressure, u16 x ...@@ -60,6 +60,7 @@ static inline void ucb1x00_ts_evt_add(struct ucb1x00_ts *ts, u16 pressure, u16 x
input_report_abs(idev, ABS_X, x); input_report_abs(idev, ABS_X, x);
input_report_abs(idev, ABS_Y, y); input_report_abs(idev, ABS_Y, y);
input_report_abs(idev, ABS_PRESSURE, pressure); input_report_abs(idev, ABS_PRESSURE, pressure);
input_report_key(idev, BTN_TOUCH, 1);
input_sync(idev); input_sync(idev);
} }
...@@ -68,6 +69,7 @@ static inline void ucb1x00_ts_event_release(struct ucb1x00_ts *ts) ...@@ -68,6 +69,7 @@ static inline void ucb1x00_ts_event_release(struct ucb1x00_ts *ts)
struct input_dev *idev = ts->idev; struct input_dev *idev = ts->idev;
input_report_abs(idev, ABS_PRESSURE, 0); input_report_abs(idev, ABS_PRESSURE, 0);
input_report_key(idev, BTN_TOUCH, 0);
input_sync(idev); input_sync(idev);
} }
...@@ -384,7 +386,8 @@ static int ucb1x00_ts_add(struct ucb1x00_dev *dev) ...@@ -384,7 +386,8 @@ static int ucb1x00_ts_add(struct ucb1x00_dev *dev)
idev->open = ucb1x00_ts_open; idev->open = ucb1x00_ts_open;
idev->close = ucb1x00_ts_close; idev->close = ucb1x00_ts_close;
__set_bit(EV_ABS, idev->evbit); idev->evbit[0] = BIT_MASK(EV_ABS) | BIT_MASK(EV_KEY);
idev->keybit[BIT_WORD(BTN_TOUCH)] = BIT_MASK(BTN_TOUCH);
input_set_drvdata(idev, ts); input_set_drvdata(idev, ts);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册