misc/171433: xorg + hal: mouse input devices psm0 and usm0 not
correctly recognized ("No Device specified, looking for one")
Martin Birgmeier
Martin.Birgmeier at aon.at
Sat Sep 8 06:50:09 UTC 2012
>Number: 171433
>Category: misc
>Synopsis: xorg + hal: mouse input devices psm0 and usm0 not correctly recognized ("No Device specified, looking for one")
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sat Sep 08 06:50:08 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Martin Birgmeier
>Release: release/9.0.0
>Organization:
MBi at home
>Environment:
FreeBSD mizar-v1.xyzzy 9.0-RELEASE FreeBSD 9.0-RELEASE #2: Sun Apr 1 19:48:11 CEST 2012 root at mizar.xyzzy:/usr/obj/.../hal/z/SRC/FreeBSD/release/9.0.0/sys/XYZZY_SMP amd64
>Description:
I have a laptop to which a Microsoft Nano Transceiver v2.0 is connected (via USB), which in turn has a Microsoft Wireless Mobile Mouse 4000 connected to it. This results in two mouse devices, /dev/psm0 and /dev/ums0. hal-device reports these correctly:
[... snip ...]
43: udi = '/org/freedesktop/Hal/devices/usb_device_45e_745_noserial_if1'
freebsd.driver = 'ums' (string)
freebsd.unit = 0 (0x0) (int)
info.vendor = 'Microsoft' (string)
freebsd.device_file = '/dev/ums0' (string)
info.capabilities = { 'input', 'input.mouse' } (string list)
info.category = 'input' (string)
input.device = '/dev/ums0' (string)
input.x11_driver = 'mouse' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_45e_745_noserial_if1' (string)
info.subsystem = 'usb' (string)
info.product = 'Microsoft Nano Transceiver v2.0' (string)
info.bus = 'usb' (string)
usb.interface.number = 1 (0x1) (int)
usb.configuration_value = 1 (0x1) (int)
usb.num_configurations = 1 (0x1) (int)
usb.device_class = 0 (0x0) (int)
usb.device_subclass = 0 (0x0) (int)
usb.device_protocol = 0 (0x0) (int)
usb.is_self_powered = false (bool)
usb.can_wake_up = true (bool)
usb.max_power = 100 (0x64) (int)
usb.num_interfaces = 3 (0x3) (int)
usb.num_ports = 0 (0x0) (int)
usb.speed = 12 (double)
usb.speed_bcd = 4608 (0x1200) (int)
usb.version = 2 (double)
usb.product_id = 1861 (0x745) (int)
usb.vendor_id = 1118 (0x45e) (int)
usb.device_revision_bcd = 1588 (0x634) (int)
usb.serial = '' (string)
usb.product = 'Microsoft Nano Transceiver v2.0' (string)
usb.vendor = 'Microsoft' (string)
usb.bus_number = 0 (0x0) (int)
usb.level_number = 1 (0x1) (int)
usb.port_number = 3 (0x3) (int)
usb.configuration = '' (string)
usb.interface.class = 3 (0x3) (int)
usb.interface.subclass = 1 (0x1) (int)
usb.interface.protocol = 2 (0x2) (int)
usb.interface.description = '' (string)
usb.freebsd.devname = 'ums0' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_45e_745_noserial' (string)
info.addons = { 'hald-addon-mouse-sysmouse' } (string list)
[... snip ...]
77: udi = '/org/freedesktop/Hal/devices/psm_0'
platform.id = 'psm.0' (string)
freebsd.device_file = '/dev/psm0' (string)
info.capabilities = { 'input', 'input.mouse' } (string list)
info.category = 'input' (string)
input.device = '/dev/psm0' (string)
input.x11_driver = 'mouse' (string)
info.addons = { 'hald-addon-mouse-sysmouse' } (string list)
info.udi = '/org/freedesktop/Hal/devices/psm_0' (string)
info.subsystem = 'platform' (string)
info.product = 'PS/2 Mouse' (string)
info.parent = '/org/freedesktop/Hal/devices/atkbdc_0' (string)
freebsd.driver = 'psm' (string)
freebsd.unit = 0 (0x0) (int)
[... snip ...]
However, since quite some time, the X server does not know about the pathnames to these devices and seems to go looking for it by itself, for each mouse device in turn always trying /dev/psm0 first - which is then already open for the second one, and the device is rejected.
Here is the relevant portion of the log file; the interesting line is where it says "(WW) PS/2 Mouse: No Device specified, looking for one..." - I believe the X server should have got this from hald?
[... snip ...]
X.Org X Server 1.7.7
Release Date: 2010-05-04
X Protocol Version 11, Revision 0
Build Operating System: FreeBSD 9.0-RELEASE amd64
Current Operating System: FreeBSD mizar.xyzzy 9.0-RELEASE FreeBSD 9.0-RELEASE #2: Sun Apr 1 19:48:11 CEST 2012 root at mizar.xyzzy:/usr/obj/.../hal/z/SRC/FreeBSD/release/9.0.0/sys/XYZZY_SMP amd64
Build Date: 31 August 2012 07:47:24PM
[... snip ...]
(II) config/hal: Adding input device PS/2 Mouse
(II) LoadModule: "mouse"
(II) Loading /usr/local/lib/xorg/modules/input/mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
compiled for 1.7.7, module version = 1.7.1
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 7.0
(WW) PS/2 Mouse: No Device specified, looking for one...
(II) PS/2 Mouse: Setting Device option to "/dev/psm0"
(--) PS/2 Mouse: Device: "/dev/psm0"
(==) PS/2 Mouse: Protocol: "Auto"
(**) PS/2 Mouse: always reports core events
(**) Option "Device" "/dev/psm0"
(==) PS/2 Mouse: Emulate3Buttons, Emulate3Timeout: 50
(**) PS/2 Mouse: ZAxisMapping: buttons 4 and 5
(**) PS/2 Mouse: Buttons: 9
(II) XINPUT: Adding extended input device "PS/2 Mouse" (type: MOUSE)
(**) PS/2 Mouse: (accel) keeping acceleration scheme 1
(**) PS/2 Mouse: (accel) acceleration profile 0
(II) PS/2 Mouse: SetupAuto: hw.iftype is 3, hw.model is 0
(II) PS/2 Mouse: SetupAuto: protocol is PS/2
(II) PS/2 Mouse: ps2EnableDataReporting: succeeded
(II) config/hal: Adding input device Microsoft Nano Transceiver v2.0
(WW) Microsoft Nano Transceiver v2.0: No Device specified, looking for one...
(II) Microsoft Nano Transceiver v2.0: Setting Device option to "/dev/psm0"
(--) Microsoft Nano Transceiver v2.0: Device: "/dev/psm0"
(==) Microsoft Nano Transceiver v2.0: Protocol: "Auto"
(**) Microsoft Nano Transceiver v2.0: always reports core events
(**) Option "Device" "/dev/psm0"
(EE) xf86OpenSerial: Cannot open device /dev/psm0
Device busy.
(EE) Microsoft Nano Transceiver v2.0: cannot open input device
(II) UnloadModule: "mouse"
(EE) PreInit returned NULL for "Microsoft Nano Transceiver v2.0"
(EE) config/hal: NewInputDeviceRequest failed (8)
(II) config/hal: Adding input device Microsoft Nano Transceiver v2.0
[... snip ...]
Now, I have dug out an old log file from January. Back then, everything was working correctly, as can be seen from the lines specifying the devices found (e.g., "(**) Microsoft Nano Transceiver v2.0: Device: "/dev/ums0""):
[... snip ...]
X.Org X Server 1.7.7
Release Date: 2010-05-04
X Protocol Version 11, Revision 0
Build Operating System: FreeBSD 9.0-RELEASE amd64
Current Operating System: FreeBSD mizar.xyzzy 9.0-RELEASE FreeBSD 9.0-RELEASE #0 r229389M: Tue Jan 3 18:57:18 CET 2012
root at hal.xyzzy:/z/OBJ/FreeBSD/amd64/release/9.0.0/sys/XYZZY_SMP amd64
Build Date: 04 January 2012 08:07:14PM
[... snip ...]
(II) config/hal: Adding input device Microsoft Nano Transceiver v2.0
(II) LoadModule: "mouse"
(II) Loading /usr/local/lib/xorg/modules/input/mouse_drv.so
(II) Module mouse: vendor="X.Org Foundation"
compiled for 1.7.7, module version = 1.6.0
Module class: X.Org XInput Driver
ABI class: X.Org XInput driver, version 7.0
(**) Microsoft Nano Transceiver v2.0: Device: "/dev/ums0"
(==) Microsoft Nano Transceiver v2.0: Protocol: "Auto"
(**) Microsoft Nano Transceiver v2.0: always reports core events
(**) Option "Device" "/dev/ums0"
(==) Microsoft Nano Transceiver v2.0: Emulate3Buttons, Emulate3Timeout: 50
(**) Microsoft Nano Transceiver v2.0: ZAxisMapping: buttons 4 and 5
(**) Microsoft Nano Transceiver v2.0: Buttons: 9
(**) Microsoft Nano Transceiver v2.0: Sensitivity: 1
(II) XINPUT: Adding extended input device "Microsoft Nano Transceiver v2.0" (type: MOUSE)
(**) Microsoft Nano Transceiver v2.0: (accel) keeping acceleration scheme 1
(**) Microsoft Nano Transceiver v2.0: (accel) acceleration profile 0
(II) Microsoft Nano Transceiver v2.0: SetupAuto: hw.iftype is 5, hw.model is 0
(II) Microsoft Nano Transceiver v2.0: SetupAuto: protocol is SysMouse
(WW) fcntl(28, F_SETOWN): Inappropriate ioctl for device
[... snip ...]
(II) config/hal: Adding input device PS/2 Mouse
(**) PS/2 Mouse: Device: "/dev/psm0"
(==) PS/2 Mouse: Protocol: "Auto"
(**) PS/2 Mouse: always reports core events
(**) Option "Device" "/dev/psm0"
(==) PS/2 Mouse: Emulate3Buttons, Emulate3Timeout: 50
(**) PS/2 Mouse: ZAxisMapping: buttons 4 and 5
(**) PS/2 Mouse: Buttons: 9
(**) PS/2 Mouse: Sensitivity: 1
(II) XINPUT: Adding extended input device "PS/2 Mouse" (type: MOUSE)
(**) PS/2 Mouse: (accel) keeping acceleration scheme 1
(**) PS/2 Mouse: (accel) acceleration profile 0
(II) PS/2 Mouse: SetupAuto: hw.iftype is 3, hw.model is 0
(II) PS/2 Mouse: SetupAuto: protocol is PS/2
(II) PS/2 Mouse: ps2EnableDataReporting: succeeded
(II) 3rd Button detected: disabling emulate3Button
(II) 3rd Button detected: disabling emulate3Button
[... snip ...]
I have not changed the xorg.conf since then, so I assume something has changed in the X server or hal.
The machine is running the latest ports, and I also recently recompiled all ports to make sure no spurious problems persisted.
>How-To-Repeat:
See the problem description.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list