При загрузке, UEFI выдает, что у меня подключено 2 квлавиатурыи 2 мыши. Реально у меня только одна клавиатура и одна мышь таких моделей:
- Logitech Wireless Keyboard K350
- A4Tech Cord Mouse X7 XL-740K
При загрузке, система создает еще и виртауальный джойстик, который постоянно поворачивает влево (тестировал на нескольких играх), хотя джойстика никакого нет.
Вот вывод xinput:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech Unifying Device. Wireless PID:200a id=9 [slave pointer (2)]
⎜ ↳ A4TECH USB Device id=10 [slave pointer (2)]
⎜ ↳ A4TECH USB Device id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
Содержимое /dev/input:
event0
event1
event10
event11
event12
event13
event14
event2
event3
event4
event5
event6
event7
event8
event9
js0
mice
mouse0
Вывод команды udevadm info -a -p $(udevadm info -q path -n /dev/input/js0):
looking at device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4:1.0/input/input4/js0':
KERNEL==«js0»
SUBSYSTEM==«input»
DRIVER==«»
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4:1.0/input/input4':
KERNELS==«input4»
SUBSYSTEMS==«input»
DRIVERS==«»
ATTRS{name}==«A4TECH USB Device»
ATTRS{phys}==«usb-0000:00:1a.0-1.4/input0»
ATTRS{uniq}==«»
ATTRS{properties}==«0»
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4/1-1.4:1.0':
KERNELS==«1-1.4:1.0»
SUBSYSTEMS==«usb»
DRIVERS==«usbhid»
ATTRS{bInterfaceClass}==«03»
ATTRS{bInterfaceSubClass}==«01»
ATTRS{bInterfaceProtocol}==«01»
ATTRS{bNumEndpoints}==«01»
ATTRS{supports_autosuspend}==«1»
ATTRS{bAlternateSetting}==" 0"
ATTRS{bInterfaceNumber}==«00»
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.4':
KERNELS==«1-1.4»
SUBSYSTEMS==«usb»
DRIVERS==«usb»
ATTRS{bDeviceSubClass}==«00»
ATTRS{bDeviceProtocol}==«00»
ATTRS{devpath}==«1.4»
ATTRS{idVendor}==«09da»
ATTRS{speed}==«12»
ATTRS{bNumInterfaces}==" 2"
ATTRS{bConfigurationValue}==«1»
ATTRS{bMaxPacketSize0}==«8»
ATTRS{busnum}==«1»
ATTRS{devnum}==«4»
ATTRS{configuration}==«»
ATTRS{bMaxPower}==«100mA»
ATTRS{authorized}==«1»
ATTRS{bmAttributes}==«a0»
ATTRS{bNumConfigurations}==«1»
ATTRS{maxchild}==«0»
ATTRS{bcdDevice}==«0102»
ATTRS{avoid_reset_quirk}==«0»
ATTRS{quirks}==«0x0»
ATTRS{version}==" 1.10"
ATTRS{urbnum}==«42568»
ATTRS{ltm_capable}==«no»
ATTRS{manufacturer}==«A4TECH»
ATTRS{removable}==«removable»
ATTRS{idProduct}==«9090»
ATTRS{bDeviceClass}==«00»
ATTRS{product}==«USB Device»
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1':
KERNELS==«1-1»
SUBSYSTEMS==«usb»
DRIVERS==«usb»
ATTRS{bDeviceSubClass}==«00»
ATTRS{bDeviceProtocol}==«01»
ATTRS{devpath}==«1»
ATTRS{idVendor}==«8087»
ATTRS{speed}==«480»
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}==«1»
ATTRS{bMaxPacketSize0}==«64»
ATTRS{busnum}==«1»
ATTRS{devnum}==«2»
ATTRS{configuration}==«»
ATTRS{bMaxPower}==«0mA»
ATTRS{authorized}==«1»
ATTRS{bmAttributes}==«e0»
ATTRS{bNumConfigurations}==«1»
ATTRS{maxchild}==«6»
ATTRS{bcdDevice}==«0000»
ATTRS{avoid_reset_quirk}==«0»
ATTRS{quirks}==«0x0»
ATTRS{version}==" 2.00"
ATTRS{urbnum}==«40»
ATTRS{ltm_capable}==«no»
ATTRS{removable}==«fixed»
ATTRS{idProduct}==«0024»
ATTRS{bDeviceClass}==«09»
looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1':
KERNELS==«usb1»
SUBSYSTEMS==«usb»
DRIVERS==«usb»
ATTRS{bDeviceSubClass}==«00»
ATTRS{bDeviceProtocol}==«00»
ATTRS{devpath}==«0»
ATTRS{idVendor}==«1d6b»
ATTRS{speed}==«480»
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}==«1»
ATTRS{bMaxPacketSize0}==«64»
ATTRS{authorized_default}==«1»
ATTRS{busnum}==«1»
ATTRS{devnum}==«1»
ATTRS{configuration}==«»
ATTRS{bMaxPower}==«0mA»
ATTRS{authorized}==«1»
ATTRS{bmAttributes}==«e0»
ATTRS{bNumConfigurations}==«1»
ATTRS{maxchild}==«2»
ATTRS{bcdDevice}==«0308»
ATTRS{avoid_reset_quirk}==«0»
ATTRS{quirks}==«0x0»
ATTRS{serial}==«0000:00:1a.0»
ATTRS{version}==" 2.00"
ATTRS{urbnum}==«24»
ATTRS{ltm_capable}==«no»
ATTRS{manufacturer}==«Linux 3.8.0-30-generic ehci_hcd»
ATTRS{removable}==«unknown»
ATTRS{idProduct}==«0002»
ATTRS{bDeviceClass}==«09»
ATTRS{product}==«EHCI Host Controller»
looking at parent device '/devices/pci0000:00/0000:00:1a.0':
KERNELS==«0000:00:1a.0»
SUBSYSTEMS==«pci»
DRIVERS==«ehci-pci»
ATTRS{irq}==«16»
ATTRS{subsystem_vendor}==«0x1462»
ATTRS{broken_parity_status}==«0»
ATTRS{class}==«0x0c0320»
ATTRS{companion}==«»
ATTRS{consistent_dma_mask_bits}==«32»
ATTRS{dma_mask_bits}==«32»
ATTRS{local_cpus}==«00000000,00000000,00000000,00000000,00000000,00000000,00000000,0000000f»
ATTRS{device}==«0x1c2d»
ATTRS{uframe_periodic_max}==«100»
ATTRS{msi_bus}==«»
ATTRS{local_cpulist}==«0-3»
ATTRS{vendor}==«0x8086»
ATTRS{subsystem_device}==«0x7681»
ATTRS{numa_node}=="-1"
ATTRS{d3cold_allowed}==«1»
looking at parent device '/devices/pci0000:00':
KERNELS==«pci0000:00»
SUBSYSTEMS==«»
DRIVERS==«»
Попробовал написать правило для udev такого содержания:
KERNEL==«js[0-9]*», SUBSYSTEM==«input», SUBSYSTEM==«usb», \
ATTRS{idVendor}==«09da», ATTRS{idProduct}==«9090», \
OPTIONS+=«ignore_device»
оно не помогло.
Что можно сделать в этом случае? Судя по тому, что нашел в поиске, эта проблема у всех мышей A4Tech X7, обычно народ пишет скрипты, чтобы искать файл устройства в /dev и удалять его, либо не загружать модуль для джойстиков. Мне бы хотелось нормальное решение(через udev?), которое бы не создавало это левое устройство, потому как хотелось бы подключить в будущем нормальный джойстик.