-
Notifications
You must be signed in to change notification settings - Fork 241
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
60 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,3 @@ | ||
From 9769a5f2c287ce094dcd498e222db8f0f90c341e Mon Sep 17 00:00:00 2001 | ||
From: Jake Day <[email protected]> | ||
Date: Thu, 1 Feb 2018 19:22:02 -0500 | ||
Subject: Intel Precise Touch & Stylus(IPTS) support | ||
|
||
|
||
diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.txt b/Documentation/devicetree/bindings/input/hid-over-i2c.txt | ||
index 28e8bd8..4d3da9d 100644 | ||
--- a/Documentation/devicetree/bindings/input/hid-over-i2c.txt | ||
|
@@ -32,7 +26,7 @@ index 2e034ef..635b8c6 100644 | |
i915-$(CONFIG_DRM_I915_CAPTURE_ERROR) += i915_gpu_error.o | ||
i915-$(CONFIG_DRM_I915_SELFTEST) += \ | ||
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c | ||
index 5c5cb2c..8c70195 100644 | ||
index 562220e..bd9cb5c 100644 | ||
--- a/drivers/gpu/drm/i915/i915_drv.c | ||
+++ b/drivers/gpu/drm/i915/i915_drv.c | ||
@@ -51,6 +51,7 @@ | ||
|
@@ -64,10 +58,10 @@ index 5c5cb2c..8c70195 100644 | |
|
||
if (i915_gem_suspend(dev_priv)) | ||
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h | ||
index 18d9da5..12d86d1 100644 | ||
index 3f81841..8038f63 100644 | ||
--- a/drivers/gpu/drm/i915/i915_drv.h | ||
+++ b/drivers/gpu/drm/i915/i915_drv.h | ||
@@ -3658,6 +3658,9 @@ void i915_gem_object_do_bit_17_swizzle(struct drm_i915_gem_object *obj, | ||
@@ -3659,6 +3659,9 @@ void i915_gem_object_do_bit_17_swizzle(struct drm_i915_gem_object *obj, | ||
void i915_gem_object_save_bit_17_swizzle(struct drm_i915_gem_object *obj, | ||
struct sg_table *pages); | ||
|
||
|
@@ -114,7 +108,7 @@ index 8afd2ce..00871aa 100644 | |
{ | ||
struct i915_gem_context *ctx; | ||
diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c | ||
index 48a1e93..ee9bc8a 100644 | ||
index 48a1e93..75b5cc2 100644 | ||
--- a/drivers/gpu/drm/i915/i915_guc_submission.c | ||
+++ b/drivers/gpu/drm/i915/i915_guc_submission.c | ||
@@ -87,6 +87,7 @@ static inline bool is_high_priority(struct i915_guc_client* client) | ||
|
@@ -252,9 +246,18 @@ index b63893e..5a0313b 100644 | |
GT_RENDER_USER_INTERRUPT << GEN8_BCS_IRQ_SHIFT | | ||
GT_CONTEXT_SWITCH_INTERRUPT << GEN8_BCS_IRQ_SHIFT, | ||
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c | ||
index 8ab003d..db55910 100644 | ||
index 8ab003d..3cb1ac4 100644 | ||
--- a/drivers/gpu/drm/i915/i915_params.c | ||
+++ b/drivers/gpu/drm/i915/i915_params.c | ||
@@ -35,7 +35,7 @@ struct i915_params i915 __read_mostly = { | ||
.enable_rc6 = -1, | ||
.enable_dc = -1, | ||
.enable_fbc = -1, | ||
- .enable_execlists = -1, | ||
+ .enable_execlists = 0, | ||
.enable_hangcheck = true, | ||
.enable_ppgtt = -1, | ||
.enable_psr = -1, | ||
@@ -56,8 +56,8 @@ struct i915_params i915 __read_mostly = { | ||
.verbose_state_checks = 1, | ||
.nuclear_pageflip = 0, | ||
|
@@ -266,6 +269,15 @@ index 8ab003d..db55910 100644 | |
.guc_log_level = -1, | ||
.guc_firmware_path = NULL, | ||
.huc_firmware_path = NULL, | ||
@@ -144,7 +144,7 @@ MODULE_PARM_DESC(enable_ppgtt, | ||
module_param_named_unsafe(enable_execlists, i915.enable_execlists, int, 0400); | ||
MODULE_PARM_DESC(enable_execlists, | ||
"Override execlists usage. " | ||
- "(-1=auto [default], 0=disabled, 1=enabled)"); | ||
+ "(-1=auto, 0=disabled [default], 1=enabled)"); | ||
|
||
module_param_named_unsafe(enable_psr, i915.enable_psr, int, 0600); | ||
MODULE_PARM_DESC(enable_psr, "Enable PSR " | ||
@@ -225,12 +225,12 @@ MODULE_PARM_DESC(edp_vswing, | ||
module_param_named_unsafe(enable_guc_loading, i915.enable_guc_loading, int, 0400); | ||
MODULE_PARM_DESC(enable_guc_loading, | ||
|
@@ -1075,7 +1087,7 @@ index 22ae52b..c7765f9 100644 | |
+ | ||
#endif | ||
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c | ||
index 9e8c4d2..97c7c99 100644 | ||
index 6598501..a80c018 100644 | ||
--- a/drivers/hid/hid-multitouch.c | ||
+++ b/drivers/hid/hid-multitouch.c | ||
@@ -140,6 +140,7 @@ struct mt_device { | ||
|
@@ -1118,7 +1130,7 @@ index 9e8c4d2..97c7c99 100644 | |
static int mt_compute_slot(struct mt_device *td, struct input_dev *input) | ||
{ | ||
__s32 quirks = td->mtclass.quirks; | ||
@@ -929,9 +944,11 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, | ||
@@ -942,9 +957,11 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, | ||
field->application != HID_DG_TOUCHSCREEN && | ||
field->application != HID_DG_PEN && | ||
field->application != HID_DG_TOUCHPAD && | ||
|
@@ -1130,7 +1142,7 @@ index 9e8c4d2..97c7c99 100644 | |
field->application != HID_GD_WIRELESS_RADIO_CTLS && | ||
!(field->application == HID_VD_ASUS_CUSTOM_MEDIA_KEYS && | ||
td->mtclass.quirks & MT_QUIRK_ASUS_CUSTOM_UP)) | ||
@@ -994,10 +1011,8 @@ static int mt_input_mapped(struct hid_device *hdev, struct hid_input *hi, | ||
@@ -1007,10 +1024,8 @@ static int mt_input_mapped(struct hid_device *hdev, struct hid_input *hi, | ||
return 0; | ||
|
||
if (field->application == HID_DG_TOUCHSCREEN || | ||
|
@@ -1143,15 +1155,15 @@ index 9e8c4d2..97c7c99 100644 | |
|
||
/* let hid-core decide for the others */ | ||
return 0; | ||
@@ -1140,6 +1155,7 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
@@ -1153,6 +1168,7 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
suffix = "Pen"; | ||
/* force BTN_STYLUS to allow tablet matching in udev */ | ||
__set_bit(BTN_STYLUS, hi->input->keybit); | ||
+ __set_bit(INPUT_PROP_DIRECT, hi->input->propbit); | ||
} else { | ||
switch (field->application) { | ||
case HID_GD_KEYBOARD: | ||
@@ -1155,9 +1171,10 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
@@ -1168,9 +1184,10 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
suffix = "Pen"; | ||
/* force BTN_STYLUS to allow tablet matching in udev */ | ||
__set_bit(BTN_STYLUS, hi->input->keybit); | ||
|
@@ -1163,15 +1175,15 @@ index 9e8c4d2..97c7c99 100644 | |
break; | ||
case HID_DG_TOUCHPAD: | ||
suffix = "Touchpad"; | ||
@@ -1286,6 +1303,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
@@ -1299,6 +1316,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
td->inputmode_value = MT_INPUTMODE_TOUCHSCREEN; | ||
td->cc_index = -1; | ||
td->mt_report_id = -1; | ||
+ cc_seen = 0; | ||
hid_set_drvdata(hdev, td); | ||
|
||
td->fields = devm_kzalloc(&hdev->dev, sizeof(struct mt_fields), | ||
@@ -1332,7 +1350,6 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
@@ -1345,7 +1363,6 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
hdev->quirks |= HID_QUIRK_NO_INIT_REPORTS; | ||
|
||
setup_timer(&td->release_timer, mt_expired_timeout, (long)hdev); | ||
|
@@ -5990,7 +6002,7 @@ index 0000000..1fcd021 | |
+ | ||
+#endif // _IPTS_H_ | ||
diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/hw-me-regs.h | ||
index 0ccccba..c29f128 100644 | ||
index e4b10b2..883b185 100644 | ||
--- a/drivers/misc/mei/hw-me-regs.h | ||
+++ b/drivers/misc/mei/hw-me-regs.h | ||
@@ -119,6 +119,7 @@ | ||
|
@@ -6002,7 +6014,7 @@ index 0ccccba..c29f128 100644 | |
#define MEI_DEV_ID_SPT_H_2 0xA13B /* Sunrise Point H 2 */ | ||
|
||
diff --git a/drivers/misc/mei/pci-me.c b/drivers/misc/mei/pci-me.c | ||
index d46cb1f..b86f9f6 100644 | ||
index c77e08c..5773a6c 100644 | ||
--- a/drivers/misc/mei/pci-me.c | ||
+++ b/drivers/misc/mei/pci-me.c | ||
@@ -86,6 +86,7 @@ static const struct pci_device_id mei_me_pci_tbl[] = { | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,3 @@ | ||
From 32de729864dc8bb31ca3133f02561edd62673a93 Mon Sep 17 00:00:00 2001 | ||
From: Jake Day <[email protected]> | ||
Date: Fri, 2 Feb 2018 16:02:54 -0500 | ||
Subject: Intel Precise Touch & Stylus(IPTS) support | ||
|
||
|
||
diff --git a/Documentation/devicetree/bindings/input/hid-over-i2c.txt b/Documentation/devicetree/bindings/input/hid-over-i2c.txt | ||
index 28e8bd8..4d3da9d 100644 | ||
--- a/Documentation/devicetree/bindings/input/hid-over-i2c.txt | ||
|
@@ -32,7 +26,7 @@ index 2acf3b3..ab69d8d 100644 | |
i915-$(CONFIG_DRM_I915_CAPTURE_ERROR) += i915_gpu_error.o | ||
i915-$(CONFIG_DRM_I915_SELFTEST) += \ | ||
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c | ||
index 2cf10d1..25cb2ee 100644 | ||
index 62004ea..94bce13 100644 | ||
--- a/drivers/gpu/drm/i915/i915_drv.c | ||
+++ b/drivers/gpu/drm/i915/i915_drv.c | ||
@@ -51,6 +51,7 @@ | ||
|
@@ -101,7 +95,7 @@ index f782cf2..a8dd495 100644 | |
{ | ||
struct i915_gem_context *ctx; | ||
diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c | ||
index f84c267..c29d64b 100644 | ||
index f84c267..9c1e595 100644 | ||
--- a/drivers/gpu/drm/i915/i915_guc_submission.c | ||
+++ b/drivers/gpu/drm/i915/i915_guc_submission.c | ||
@@ -88,6 +88,7 @@ static inline bool is_high_priority(struct i915_guc_client* client) | ||
|
@@ -239,9 +233,18 @@ index f820584..d7d68d7 100644 | |
GT_RENDER_USER_INTERRUPT << GEN8_BCS_IRQ_SHIFT | | ||
GT_CONTEXT_SWITCH_INTERRUPT << GEN8_BCS_IRQ_SHIFT, | ||
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c | ||
index b4faeb6..38774d6 100644 | ||
index b4faeb6..a906694 100644 | ||
--- a/drivers/gpu/drm/i915/i915_params.c | ||
+++ b/drivers/gpu/drm/i915/i915_params.c | ||
@@ -101,7 +101,7 @@ i915_param_named_unsafe(enable_ppgtt, int, 0400, | ||
|
||
i915_param_named_unsafe(enable_execlists, int, 0400, | ||
"Override execlists usage. " | ||
- "(-1=auto [default], 0=disabled, 1=enabled)"); | ||
+ "(-1=auto, 0=disabled [default], 1=enabled)"); | ||
|
||
i915_param_named_unsafe(enable_psr, int, 0600, | ||
"Enable PSR " | ||
@@ -164,11 +164,11 @@ i915_param_named_unsafe(edp_vswing, int, 0400, | ||
|
||
i915_param_named_unsafe(enable_guc_loading, int, 0400, | ||
|
@@ -257,10 +260,16 @@ index b4faeb6..38774d6 100644 | |
i915_param_named(guc_log_level, int, 0400, | ||
"GuC firmware logging level (-1:disabled (default), 0-3:enabled)"); | ||
diff --git a/drivers/gpu/drm/i915/i915_params.h b/drivers/gpu/drm/i915/i915_params.h | ||
index c729226..c38cef0 100644 | ||
index c729226..2336695 100644 | ||
--- a/drivers/gpu/drm/i915/i915_params.h | ||
+++ b/drivers/gpu/drm/i915/i915_params.h | ||
@@ -44,8 +44,8 @@ | ||
@@ -39,13 +39,13 @@ | ||
param(int, enable_dc, -1) \ | ||
param(int, enable_fbc, -1) \ | ||
param(int, enable_ppgtt, -1) \ | ||
- param(int, enable_execlists, -1) \ | ||
+ param(int, enable_execlists, 0) \ | ||
param(int, enable_psr, -1) \ | ||
param(int, disable_power_well, -1) \ | ||
param(int, enable_ips, 1) \ | ||
param(int, invert_brightness, 0) \ | ||
|
@@ -1066,7 +1075,7 @@ index adc51e4..a3294c4 100644 | |
|
||
static void pch_enable_backlight(const struct intel_crtc_state *crtc_state, | ||
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c | ||
index 65ea23b..80c2899 100644 | ||
index 3975929..94488a5 100644 | ||
--- a/drivers/hid/hid-multitouch.c | ||
+++ b/drivers/hid/hid-multitouch.c | ||
@@ -145,6 +145,7 @@ struct mt_device { | ||
|
@@ -1109,7 +1118,7 @@ index 65ea23b..80c2899 100644 | |
static int mt_compute_slot(struct mt_device *td, struct input_dev *input) | ||
{ | ||
__s32 quirks = td->mtclass.quirks; | ||
@@ -972,9 +987,11 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, | ||
@@ -985,9 +1000,11 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, | ||
field->application != HID_DG_TOUCHSCREEN && | ||
field->application != HID_DG_PEN && | ||
field->application != HID_DG_TOUCHPAD && | ||
|
@@ -1121,7 +1130,7 @@ index 65ea23b..80c2899 100644 | |
field->application != HID_GD_WIRELESS_RADIO_CTLS && | ||
!(field->application == HID_VD_ASUS_CUSTOM_MEDIA_KEYS && | ||
td->mtclass.quirks & MT_QUIRK_ASUS_CUSTOM_UP)) | ||
@@ -1037,10 +1054,8 @@ static int mt_input_mapped(struct hid_device *hdev, struct hid_input *hi, | ||
@@ -1050,10 +1067,8 @@ static int mt_input_mapped(struct hid_device *hdev, struct hid_input *hi, | ||
return 0; | ||
|
||
if (field->application == HID_DG_TOUCHSCREEN || | ||
|
@@ -1134,15 +1143,15 @@ index 65ea23b..80c2899 100644 | |
|
||
/* let hid-core decide for the others */ | ||
return 0; | ||
@@ -1183,6 +1198,7 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
@@ -1196,6 +1211,7 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
suffix = "Pen"; | ||
/* force BTN_STYLUS to allow tablet matching in udev */ | ||
__set_bit(BTN_STYLUS, hi->input->keybit); | ||
+ __set_bit(INPUT_PROP_DIRECT, hi->input->propbit); | ||
} else { | ||
switch (field->application) { | ||
case HID_GD_KEYBOARD: | ||
@@ -1198,9 +1214,10 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
@@ -1211,9 +1227,10 @@ static int mt_input_configured(struct hid_device *hdev, struct hid_input *hi) | ||
suffix = "Pen"; | ||
/* force BTN_STYLUS to allow tablet matching in udev */ | ||
__set_bit(BTN_STYLUS, hi->input->keybit); | ||
|
@@ -1154,7 +1163,7 @@ index 65ea23b..80c2899 100644 | |
break; | ||
case HID_DG_TOUCHPAD: | ||
suffix = "Touchpad"; | ||
@@ -1330,6 +1347,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
@@ -1343,6 +1360,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id) | ||
td->inputmode_value = MT_INPUTMODE_TOUCHSCREEN; | ||
td->cc_index = -1; | ||
td->mt_report_id = -1; | ||
|
@@ -5973,7 +5982,7 @@ index 0000000..1fcd021 | |
+ | ||
+#endif // _IPTS_H_ | ||
diff --git a/drivers/misc/mei/hw-me-regs.h b/drivers/misc/mei/hw-me-regs.h | ||
index 0ccccba..c29f128 100644 | ||
index e4b10b2..883b185 100644 | ||
--- a/drivers/misc/mei/hw-me-regs.h | ||
+++ b/drivers/misc/mei/hw-me-regs.h | ||
@@ -119,6 +119,7 @@ | ||
|
@@ -5985,7 +5994,7 @@ index 0ccccba..c29f128 100644 | |
#define MEI_DEV_ID_SPT_H_2 0xA13B /* Sunrise Point H 2 */ | ||
|
||
diff --git a/drivers/misc/mei/pci-me.c b/drivers/misc/mei/pci-me.c | ||
index 4a0ccda..bf71d31 100644 | ||
index ea4e152..4d301ba 100644 | ||
--- a/drivers/misc/mei/pci-me.c | ||
+++ b/drivers/misc/mei/pci-me.c | ||
@@ -86,6 +86,7 @@ static const struct pci_device_id mei_me_pci_tbl[] = { | ||
|