[PATCH v0 2/5] Make it possible to enable/disable SRG mouse reporting

From: Tammo Block
Date: Fri Jun 26 2020 - 03:27:47 EST


The report protocol stored in vc_report_mouse is not a bitmask, the
protocols are mutually exclusive, last one wins. Values are chosen to
maximize compatibility.

Signed-off-by: Tammo Block <tammo.block@xxxxxxxxx>
---
drivers/tty/vt/vt.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index 48a8199f7845..d52ac57034e0 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -1890,13 +1890,22 @@ static void set_mode(struct vc_data *vc, int on_off)
clr_kbd(vc, decarm);
break;
case 9:
- vc->vc_report_mouse = on_off ? 1 : 0;
+ vc->vc_report_mouse = on_off ? TIOCL_REPORTBTNPRESS : 0;
break;
case 25: /* Cursor on/off */
vc->vc_deccm = on_off;
break;
case 1000:
- vc->vc_report_mouse = on_off ? 2 : 0;
+ vc->vc_report_mouse = on_off ? TIOCL_REPORTRELEASE : 0;
+ break;
+ case 1002:
+ vc->vc_report_mouse = on_off ? TIOCL_REPORTDRAG : 0;
+ break;
+ case 1003:
+ vc->vc_report_mouse = on_off ? TIOCL_REPORTANYMOVE : 0;
+ break;
+ case 1006:
+ vc->vc_proto_mouse = on_off ? 1 : 0;
break;
}
} else {
--
2.27.0