Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
cd510679
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
cd510679
编写于
4月 06, 2020
作者:
D
Dmitry Torokhov
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'next' into for-linus
Prepare input updates for 5.7 merge window.
上级
4134252a
3a857962
变更
8
展开全部
隐藏空白更改
内联
并排
Showing
8 changed file
with
651 addition
and
210 deletion
+651
-210
Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
...tion/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
+0
-77
Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.yaml
...ion/devicetree/bindings/input/touchscreen/edt-ft5x06.yaml
+125
-0
Documentation/devicetree/bindings/input/touchscreen/goodix.yaml
...ntation/devicetree/bindings/input/touchscreen/goodix.yaml
+2
-0
drivers/input/serio/i8042-x86ia64io.h
drivers/input/serio/i8042-x86ia64io.h
+11
-0
drivers/input/touchscreen/elants_i2c.c
drivers/input/touchscreen/elants_i2c.c
+1
-0
drivers/input/touchscreen/goodix.c
drivers/input/touchscreen/goodix.c
+494
-114
drivers/input/touchscreen/of_touchscreen.c
drivers/input/touchscreen/of_touchscreen.c
+17
-18
include/uapi/linux/input-event-codes.h
include/uapi/linux/input-event-codes.h
+1
-1
未找到文件。
Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.txt
已删除
100644 → 0
浏览文件 @
4134252a
FocalTech EDT-FT5x06 Polytouch driver
=====================================
There are 5 variants of the chip for various touch panel sizes
FT5206GE1 2.8" .. 3.8"
FT5306DE4 4.3" .. 7"
FT5406EE8 7" .. 8.9"
FT5506EEG 7" .. 8.9"
FT5726NEI 5.7” .. 11.6"
The software interface is identical for all those chips, so that
currently there is no need for the driver to distinguish between the
different chips. Nevertheless distinct compatible strings are used so
that a distinction can be added if necessary without changing the DT
bindings.
Required properties:
- compatible: "edt,edt-ft5206"
or: "edt,edt-ft5306"
or: "edt,edt-ft5406"
or: "edt,edt-ft5506"
or: "evervision,ev-ft5726"
or: "focaltech,ft6236"
- reg: I2C slave address of the chip (0x38)
- interrupts: interrupt specification for the touchdetect
interrupt
Optional properties:
- reset-gpios: GPIO specification for the RESET input
- wake-gpios: GPIO specification for the WAKE input
- vcc-supply: Regulator that supplies the touchscreen
- pinctrl-names: should be "default"
- pinctrl-0: a phandle pointing to the pin settings for the
control gpios
- wakeup-source: If present the device will act as wakeup-source
- threshold: allows setting the "click"-threshold in the range
from 0 to 80.
- gain: allows setting the sensitivity in the range from 0 to
31. Note that lower values indicate higher
sensitivity.
- offset: allows setting the edge compensation in the range from
0 to 31.
- offset-x: Same as offset, but applies only to the horizontal position.
Range from 0 to 80, only supported by evervision,ev-ft5726
devices.
- offset-y: Same as offset, but applies only to the vertical position.
Range from 0 to 80, only supported by evervision,ev-ft5726
devices.
- touchscreen-size-x : See touchscreen.txt
- touchscreen-size-y : See touchscreen.txt
- touchscreen-fuzz-x : See touchscreen.txt
- touchscreen-fuzz-y : See touchscreen.txt
- touchscreen-inverted-x : See touchscreen.txt
- touchscreen-inverted-y : See touchscreen.txt
- touchscreen-swapped-x-y : See touchscreen.txt
Example:
polytouch: edt-ft5x06@38 {
compatible = "edt,edt-ft5406", "edt,edt-ft5x06";
reg = <0x38>;
pinctrl-names = "default";
pinctrl-0 = <&edt_ft5x06_pins>;
interrupt-parent = <&gpio2>;
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
};
Documentation/devicetree/bindings/input/touchscreen/edt-ft5x06.yaml
0 → 100644
浏览文件 @
cd510679
# SPDX-License-Identifier: GPL-2.0
%YAML
1.2
---
$id
:
http://devicetree.org/schemas/input/touchscreen/edt-ft5x06.yaml#
$schema
:
http://devicetree.org/meta-schemas/core.yaml#
title
:
FocalTech EDT-FT5x06 Polytouch Bindings
description
:
|
There are 5 variants of the chip for various touch panel sizes
FT5206GE1 2.8" .. 3.8"
FT5306DE4 4.3" .. 7"
FT5406EE8 7" .. 8.9"
FT5506EEG 7" .. 8.9"
FT5726NEI 5.7” .. 11.6"
maintainers
:
-
Dmitry Torokhov <dmitry.torokhov@gmail.com>
allOf
:
-
$ref
:
touchscreen.yaml#
-
if
:
properties
:
compatible
:
contains
:
enum
:
-
evervision,ev-ft5726
then
:
properties
:
offset-x
:
true
offset-y
:
true
properties
:
compatible
:
enum
:
-
edt,edt-ft5206
-
edt,edt-ft5306
-
edt,edt-ft5406
-
edt,edt-ft5506
-
evervision,ev-ft5726
-
focaltech,ft6236
reg
:
const
:
0x38
interrupts
:
maxItems
:
1
reset-gpios
:
maxItems
:
1
wake-gpios
:
maxItems
:
1
wakeup-source
:
true
vcc-supply
:
maxItems
:
1
gain
:
description
:
Allows setting the sensitivity in the range from 0 to 31.
Note that lower values indicate higher sensitivity.
allOf
:
-
$ref
:
/schemas/types.yaml#/definitions/uint32
-
minimum
:
0
-
maximum
:
31
offset
:
description
:
Allows setting the edge compensation in the range from 0 to 31.
allOf
:
-
$ref
:
/schemas/types.yaml#/definitions/uint32
-
minimum
:
0
-
maximum
:
31
offset-x
:
description
:
Same as offset, but applies only to the horizontal position.
Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
allOf
:
-
$ref
:
/schemas/types.yaml#/definitions/uint32
-
minimum
:
0
-
maximum
:
80
offset-y
:
description
:
Same as offset, but applies only to the vertical position.
Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
allOf
:
-
$ref
:
/schemas/types.yaml#/definitions/uint32
-
minimum
:
0
-
maximum
:
80
touchscreen-size-x
:
true
touchscreen-size-y
:
true
touchscreen-fuzz-x
:
true
touchscreen-fuzz-y
:
true
touchscreen-inverted-x
:
true
touchscreen-inverted-y
:
true
touchscreen-swapped-x-y
:
true
interrupt-controller
:
true
additionalProperties
:
false
required
:
-
compatible
-
reg
-
interrupts
examples
:
-
|
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
i2c@00000000 {
#address-cells = <1>;
#size-cells = <0>;
edt-ft5x06@38 {
compatible = "edt,edt-ft5406";
reg = <0x38>;
interrupt-parent = <&gpio2>;
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
};
};
...
Documentation/devicetree/bindings/input/touchscreen/goodix.yaml
浏览文件 @
cd510679
...
...
@@ -21,6 +21,8 @@ properties:
-
goodix,gt911
-
goodix,gt9110
-
goodix,gt912
-
goodix,gt9147
-
goodix,gt917s
-
goodix,gt927
-
goodix,gt9271
-
goodix,gt928
...
...
drivers/input/serio/i8042-x86ia64io.h
浏览文件 @
cd510679
...
...
@@ -530,6 +530,17 @@ static const struct dmi_system_id __initconst i8042_dmi_nomux_table[] = {
DMI_MATCH
(
DMI_PRODUCT_VERSION
,
"Lenovo LaVie Z"
),
},
},
{
/*
* Acer Aspire 5738z
* Touchpad stops working in mux mode when dis- + re-enabled
* with the touchpad enable/disable toggle hotkey
*/
.
matches
=
{
DMI_MATCH
(
DMI_SYS_VENDOR
,
"Acer"
),
DMI_MATCH
(
DMI_PRODUCT_NAME
,
"Aspire 5738"
),
},
},
{
}
};
...
...
drivers/input/touchscreen/elants_i2c.c
浏览文件 @
cd510679
...
...
@@ -1309,6 +1309,7 @@ static int elants_i2c_probe(struct i2c_client *client,
input_set_abs_params
(
ts
->
input
,
ABS_MT_PRESSURE
,
0
,
255
,
0
,
0
);
input_abs_set_res
(
ts
->
input
,
ABS_MT_POSITION_X
,
ts
->
x_res
);
input_abs_set_res
(
ts
->
input
,
ABS_MT_POSITION_Y
,
ts
->
y_res
);
input_abs_set_res
(
ts
->
input
,
ABS_MT_TOUCH_MAJOR
,
1
);
error
=
input_register_device
(
ts
->
input
);
if
(
error
)
{
...
...
drivers/input/touchscreen/goodix.c
浏览文件 @
cd510679
此差异已折叠。
点击以展开。
drivers/input/touchscreen/of_touchscreen.c
浏览文件 @
cd510679
...
...
@@ -66,7 +66,7 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
{
struct
device
*
dev
=
input
->
dev
.
parent
;
struct
input_absinfo
*
absinfo
;
unsigned
int
axis
;
unsigned
int
axis
,
axis_x
,
axis_y
;
unsigned
int
minimum
,
maximum
,
fuzz
;
bool
data_present
;
...
...
@@ -74,33 +74,34 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
if
(
!
input
->
absinfo
)
return
;
axis
=
multitouch
?
ABS_MT_POSITION_X
:
ABS_X
;
axis_x
=
multitouch
?
ABS_MT_POSITION_X
:
ABS_X
;
axis_y
=
multitouch
?
ABS_MT_POSITION_Y
:
ABS_Y
;
data_present
=
touchscreen_get_prop_u32
(
dev
,
"touchscreen-min-x"
,
input_abs_get_min
(
input
,
axis
),
input_abs_get_min
(
input
,
axis
_x
),
&
minimum
)
|
touchscreen_get_prop_u32
(
dev
,
"touchscreen-size-x"
,
input_abs_get_max
(
input
,
axis
)
+
1
,
axis
_x
)
+
1
,
&
maximum
)
|
touchscreen_get_prop_u32
(
dev
,
"touchscreen-fuzz-x"
,
input_abs_get_fuzz
(
input
,
axis
),
input_abs_get_fuzz
(
input
,
axis
_x
),
&
fuzz
);
if
(
data_present
)
touchscreen_set_params
(
input
,
axis
,
minimum
,
maximum
-
1
,
fuzz
);
touchscreen_set_params
(
input
,
axis
_x
,
minimum
,
maximum
-
1
,
fuzz
);
axis
=
multitouch
?
ABS_MT_POSITION_Y
:
ABS_Y
;
data_present
=
touchscreen_get_prop_u32
(
dev
,
"touchscreen-min-y"
,
input_abs_get_min
(
input
,
axis
),
input_abs_get_min
(
input
,
axis
_y
),
&
minimum
)
|
touchscreen_get_prop_u32
(
dev
,
"touchscreen-size-y"
,
input_abs_get_max
(
input
,
axis
)
+
1
,
axis
_y
)
+
1
,
&
maximum
)
|
touchscreen_get_prop_u32
(
dev
,
"touchscreen-fuzz-y"
,
input_abs_get_fuzz
(
input
,
axis
),
input_abs_get_fuzz
(
input
,
axis
_y
),
&
fuzz
);
if
(
data_present
)
touchscreen_set_params
(
input
,
axis
,
minimum
,
maximum
-
1
,
fuzz
);
touchscreen_set_params
(
input
,
axis
_y
,
minimum
,
maximum
-
1
,
fuzz
);
axis
=
multitouch
?
ABS_MT_PRESSURE
:
ABS_PRESSURE
;
data_present
=
touchscreen_get_prop_u32
(
dev
,
...
...
@@ -117,15 +118,13 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
if
(
!
prop
)
return
;
axis
=
multitouch
?
ABS_MT_POSITION_X
:
ABS_X
;
prop
->
max_x
=
input_abs_get_max
(
input
,
axis
);
prop
->
max_y
=
input_abs_get_max
(
input
,
axis
+
1
);
prop
->
max_x
=
input_abs_get_max
(
input
,
axis_x
);
prop
->
max_y
=
input_abs_get_max
(
input
,
axis_y
);
prop
->
invert_x
=
device_property_read_bool
(
dev
,
"touchscreen-inverted-x"
);
if
(
prop
->
invert_x
)
{
absinfo
=
&
input
->
absinfo
[
axis
];
absinfo
=
&
input
->
absinfo
[
axis
_x
];
absinfo
->
maximum
-=
absinfo
->
minimum
;
absinfo
->
minimum
=
0
;
}
...
...
@@ -133,7 +132,7 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
prop
->
invert_y
=
device_property_read_bool
(
dev
,
"touchscreen-inverted-y"
);
if
(
prop
->
invert_y
)
{
absinfo
=
&
input
->
absinfo
[
axis
+
1
];
absinfo
=
&
input
->
absinfo
[
axis
_y
];
absinfo
->
maximum
-=
absinfo
->
minimum
;
absinfo
->
minimum
=
0
;
}
...
...
@@ -141,7 +140,7 @@ void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
prop
->
swap_x_y
=
device_property_read_bool
(
dev
,
"touchscreen-swapped-x-y"
);
if
(
prop
->
swap_x_y
)
swap
(
input
->
absinfo
[
axis
],
input
->
absinfo
[
axis
+
1
]);
swap
(
input
->
absinfo
[
axis
_x
],
input
->
absinfo
[
axis_y
]);
}
EXPORT_SYMBOL
(
touchscreen_parse_properties
);
...
...
include/uapi/linux/input-event-codes.h
浏览文件 @
cd510679
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/* SPDX-License-Identifier: GPL-2.0
-only
WITH Linux-syscall-note */
/*
* Input event codes
*
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录