Hopeful someone can help me out. I have a laptop with a malfunctioning touch device. The device can't be disabled in the bios or by any other means (other than replacing the screen where the cost exceeds the value of the laptop). Disconnecting is behind a glued screen that will shatter when removed.
I want to disable this device outright or blacklist its hardware address in some way. Ideally a kernel boot parameter, a udev rule, or something of the sort. It seems to identify as
acpi:NTRG0001:PNP0C50 . LNXSYBUS:00/PNP0A08:00/INT33C3:00/NTRG0001:01
It's not a PCI device and doesn't show up in lspci. Naturally I have other input devices ( a touchpad or mouse ) and hence can't just block all of the drivers.
I have tried:
- Disabling the hid_multitouch module with
echo "blacklist hid_multitouch" > /etc/modprobe.d/hid_multitouch.conf, rebooted (and confirmed with lsmod that it didn't load) however it then registered under the fallback hid-generic (instead of hid_multitouch) and still registers the clicks all over my screen. Hence this doesn't seem to solve my problem. - Trying to write a udev rule (in /etc/udev/rules.d/80-touchscreen) which sets 'authorized=0' however either I can't seem to figure out how to formulate it properly -or- (more accurately since that parameter doesn't seem to be there) I think it doesn't work with the HID device or its subdevices. In all of these various devices under the INT33C3 or i2c-NTRG0001, 'authorized' is not a writable file. I think this is the wrong path as the authorized file isn't present.
- Tried unbinding the i2c_hid driver from the NTRG device via
echo "i2c-NTRG0001:01" > /sys/bus/i2c/drivers/i2c_hid/unbindwhich seems to be the only thing to work, but it isn't persistent across reboots. Adding this to rc.local or something seems like a bit of a hack. I would hope that there is a way to accomplish this by some other way (though this is my fallback).
Any insight how to, from a kernel, udev, or module loading perspective to simply say "don't do anything with this device" or to always ensure that it doesn't bind to any driver or to simply block all events/inputs from the input device?
Some excerpts (which may have been taken at different reboots module statuses) to maybe help identify the device From dmesg (with hid_multitouch disabled)
[3.555071] input: NTRG0001:01 1B96:1B05 as /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input11
[3.555358] input: NTRG0001:01 1B96:1B05 Touchscreen as /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input12
[3.555527] input: NTRG0001:01 1B96:1B05 Mouse as /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input13
[3.555702] input: NTRG0001:01 1B96:1B05 as /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input14
[3.555763] input: NTRG0001:01 1B96:1B05 as /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input15
[3.555880] hid-generic 0018:1B96:1B05.0003: input,hidraw2: I2C HID v1.00 Mouse [NTRG0001:01 1B96:1B05] on i2c-NTRG0001:01
udevadm
looking at device '/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/hidraw/hidraw1':
KERNEL=="hidraw1"
SUBSYSTEM=="hidraw"
DRIVER==""
looking at parent device '/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003':
KERNELS=="0018:1B96:1B05.0003"
SUBSYSTEMS=="hid"
DRIVERS=="hid-multitouch"
ATTRS{country}=="00"
ATTRS{quirks}=="1"
looking at device '/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01':
KERNEL=="i2c-NTRG0001:01"
SUBSYSTEM=="i2c"
DRIVER==""
ATTR{name}=="NTRG0001:01"
looking at parent device '/devices/pci0000:00/INT33C3:00/i2c-2':
KERNELS=="i2c-2"
SUBSYSTEMS=="i2c"
DRIVERS==""
ATTRS{name}=="Synopsys DesignWare I2C adapter"
looking at parent device '/devices/pci0000:00/INT33C3:00':
KERNELS=="INT33C3:00"
SUBSYSTEMS=="platform"
DRIVERS=="i2c_designware"
ATTRS{driver_override}=="(null)"
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"S
UBSYSTEMS==""
DRIVERS==""
udevadm when loaded
P: /devices/pci0000:00/INT33C3:00
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00
E: SUBSYSTEM=platform
E: DRIVER=i2c_designware
E: MODALIAS=acpi:INT33C3:INT33C3:
E: USEC_INITIALIZED=29617217
E: ID_VENDOR_FROM_DATABASE=Interphase Corporation
P: /devices/pci0000:00/INT33C3:00/i2c-2
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2
E: SUBSYSTEM=i2c
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01
E: SUBSYSTEM=i2c
E: DRIVER=i2c_hid
E: MODALIAS=acpi:NTRG0001:PNP0C50:
E: USEC_INITIALIZED=29693864
E: ID_VENDOR_FROM_DATABASE=N-trig Innovative Technologies, Inc.
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003
E: SUBSYSTEM=hid
E: DRIVER=hid-multitouch
E: HID_ID=0018:00001B96:00001B05
E: HID_NAME=NTRG0001:01 1B96:1B05
E: HID_PHYS=i2c-NTRG0001:01
E: HID_UNIQ=
E: MODALIAS=hid:b0018g0004v00001B96p00001B05
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/hidraw/hidraw1
N: hidraw1
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/hidraw/hidraw1
E: SUBSYSTEM=hidraw
E: DEVNAME=/dev/hidraw1
E: MAJOR=245
E: MINOR=1
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32
E: SUBSYSTEM=input
E: PRODUCT=18/1b96/1b05/100
E: NAME="NTRG0001:01 1B96:1B05 Pen"
E: PHYS="i2c-NTRG0001:01"
E: UNIQ=""
E: PROP=0
E: EV=1b
E: KEY=c03 0 0 0 0 0
E: ABS=1000003
E: MSC=10
E: MODALIAS=input:b0018v1B96p1B05e0100-e0,1,3,4,k140,141,14A,14B,ra0,1,18,m4,lsfw
E: USEC_INITIALIZED=1589142529
E: ID_INPUT=1
E: ID_INPUT_TABLET=1
E: ID_SERIAL=noserial
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
E: ID_FOR_SEAT=input-platform-INT33C3_00
E: TAGS=:seat:
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32/event5
N: input/event5
L: 0
S: input/by-path/platform-INT33C3:00-event-mouse
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32/event5
E: SUBSYSTEM=input
E: DEVNAME=/dev/input/event5
E: MAJOR=13
E: MINOR=69
E: USEC_INITIALIZED=1589364685
E: ID_INPUT=1
E: ID_INPUT_TABLET=1
E: ID_INPUT_WIDTH_MM=252
E: ID_INPUT_HEIGHT_MM=167
E: ID_SERIAL=noserial
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
E: LIBINPUT_DEVICE_GROUP=18/1b96/1b05:i2c-NTRG0001:01
E: DEVLINKS=/dev/input/by-path/platform-INT33C3:00-event-mouse
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32/mouse1
N: input/mouse1
L: 0
S: input/by-path/platform-INT33C3:00-mouse
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input32/mouse1
E: SUBSYSTEM=input
E: DEVNAME=/dev/input/mouse1
E: MAJOR=13
E: MINOR=33
E: USEC_INITIALIZED=1589149616
E: ID_INPUT=1
E: ID_INPUT_TABLET=1
E: ID_SERIAL=noserial
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
E: DEVLINKS=/dev/input/by-path/platform-INT33C3:00-mouse
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33
E: SUBSYSTEM=input
E: PRODUCT=18/1b96/1b05/100
E: NAME="NTRG0001:01 1B96:1B05"
E: PHYS="i2c-NTRG0001:01"
E: UNIQ=""
E: PROP=2
E: EV=1b
E: KEY=400 0 0 0 0 0
E: ABS=3273800000000003
E: MSC=20
E: MODALIAS=input:b0018v1B96p1B05e0100-e0,1,3,4,k14A,ra0,1,2F,30,31,34,35,36,39,3C,3D,m5,lsfw
E: USEC_INITIALIZED=1589143403
E: ID_INPUT=1
E: ID_INPUT_TOUCHSCREEN=1
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
E: ID_FOR_SEAT=input-platform-INT33C3_00
E: TAGS=:seat:
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33/event6
N: input/event6
L: 0
S: input/by-path/platform-INT33C3:00-event
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33/event6
E: SUBSYSTEM=input
E: DEVNAME=/dev/input/event6
E: MAJOR=13
E: MINOR=70
E: USEC_INITIALIZED=1589368910
E: ID_INPUT=1
E: ID_INPUT_TOUCHSCREEN=1
E: ID_INPUT_WIDTH_MM=252
E: ID_INPUT_HEIGHT_MM=167
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
E: LIBINPUT_DEVICE_GROUP=18/1b96/1b05:i2c-NTRG0001:01
E: DEVLINKS=/dev/input/by-path/platform-INT33C3:00-event
P: /devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33/mouse2
N: input/mouse2
L: 0
E: DEVPATH=/devices/pci0000:00/INT33C3:00/i2c-2/i2c-NTRG0001:01/0018:1B96:1B05.0003/input/input33/mouse2
E: SUBSYSTEM=input
E: DEVNAME=/dev/input/mouse2
E: MAJOR=13
E: MINOR=34
E: USEC_INITIALIZED=1589149528
E: ID_INPUT=1
E: ID_INPUT_TOUCHSCREEN=1
E: ID_PATH=platform-INT33C3:00
E: ID_PATH_TAG=platform-INT33C3_00
udevadm extended
P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/NTRG0001:00
L: 0
E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/NTRG0001:00
E: SUBSYSTEM=acpi
E: MODALIAS=
P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/NTRG0001:01
L: 0
E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/NTRG0001:01
E: SUBSYSTEM=acpi
E: MODALIAS=acpi:NTRG0001:PNP0C50:
E: USEC_INITIALIZED=29483509
E: ID_VENDOR_FROM_DATABASE=N-trig Innovative Technologies, Inc.
P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/SYNA2393:00
L: 0
E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C3:00/SYNA2393:00
E: SUBSYSTEM=acpi
E: MODALIAS=