모듈 acer-wmi가 게임패드를 차단함

모듈 acer-wmi가 게임패드를 차단함

운영 체제 Debian Jessie uname -a Linux Taomon 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2+deb8u2 (2017-06-26) x86_64 GNU/Linux Notebook

dmidecode -t  1
# dmidecode 2.12
SMBIOS 2.5 present.

Handle 0x0001, DMI type 1, 27 bytes
System Information
    Manufacturer: Acer           
    Product Name: Aspire 7736                    
    Version: 0100           
    Serial Number: LXPJA0231102209DE42000        
    UUID: 34399FC0-6F14-11DF-BF16-AE2F22C409A5
    Wake-up Type: Power Switch
    SKU Number: Not Specified
    Family: Not Specified

acer-wmi 모듈을 로드한 후 게임패드를 사용할 수 없습니다. Xorg.0.log에서 찾았습니다.

[    32.403] (II) config/udev: Adding input device Acer BMA150 accelerometer (/dev/input/js0)
[    32.403] (II) No input driver specified, ignoring this device.
[    32.403] (II) This device may have been added with another device file.

루트로서도 장치 노드 /dev/input/js0에 액세스할 수 없습니다.

 Error opening joystick device "/dev/input/js0": Operation is not permitted

acer-wmi 모듈을 블랙리스트에 추가하지 않고 이를 방지할 수 있는 방법이 있습니까?

 modinfo acer-wmi | grep -F parm
parm:           mailled:Set initial state of Mail LED (int)
parm:           brightness:Set initial LCD backlight brightness (int)
parm:           threeg:Set initial state of 3G hardware (int)
parm:           force_series:Force a different laptop series (int)
parm:           ec_raw_mode:Enable EC raw mode (bool)

Stretch에서 커널을 설치하는 것은 불가능합니다. 안정적인 릴리스에서 여러 패키지를 설치하게 됩니다. 조만간 깨지겠죠쉬운

답변1

이제 내가 원하는 대로 작동합니다. 2개의 udev 규칙을 만들었습니다. 1. /dev/input/js0 장치를 삭제합니다.

cat /etc/udev/rules.d/98-accelerometer.rules 
# joystick-fix
SUBSYSTEM=="input", ACTION=="remove", ATTRS{name}=="Acer BMA150 accelerometer", ATTRS{phys}=="wmi/input1", RUN+="/bin/rm  %E{DEVNAME}"
SUBSYSTEM=="input", ACTION=="add", ATTRS{name}=="Acer BMA150 accelerometer", ATTRS{phys}=="wmi/input1", RUN+="/bin/rm  %E{DEVNAME}"

불행하게도 리눅스는 이 장치를 기억하고 있고 내 게임패드는 /dev/input/js1입니다.

2. 내 에뮬레이터가 더 이상 불평하지 않도록 /dev/input/js0 심볼릭 링크를 만듭니다.

cat /etc/udev/rules.d/99-joystick.rules 
#joystick-fix 2. part
ACTION=="add", KERNEL=="js[1-9]", SUBSYSTEM=="input", ATTRS{product}=="USB Joystick     ", SYMLINK+="input/js0"

관련 정보