1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-06 08:26:52 +03:00
Commit Graph

3824 Commits

Author SHA1 Message Date
Martin Pitt
90f182c3d6 keymap: More robust state machine
Some drivers, like thinkpad_acpi, do not send a scan code at all (for known
keys), and some send the key code first, then the scan code. Implement a better
state machine which acceps them in any order and wait until a SYN event. If the
driver does not send SYN events, keymap will also handle this and print out
that fact.

Thanks to Seth Forshee for pointing out how this really works!

https://launchpad.net/bugs/702407
2011-01-16 21:10:03 +01:00
Martin Pitt
45019c0e88 keymap: Move reading of event in separate function 2011-01-16 19:25:04 +01:00
Martin Pitt
9b444cb29a keymap: Add Lenovo ThinkPad X201 tablet
https://launchpad.net/bugs/702426
2011-01-13 10:10:27 -06:00
Martin Pitt
e302c4b33d keymap: Update README.keymap.txt
Drop orig-map.txt requirement, we don't really use it in practice. Also ask for
sending stuff to the mailing list instead of Launchpad.
2011-01-07 12:12:57 +01:00
Martin Pitt
df6b2cf573 keymap: Add Acer TravelMate C310
Thanks to Dieter Herrmann for the report!
2011-01-07 12:09:45 +01:00
Kay Sievers
378380397c man: fix typo
Found by: Minh Ha-Duong.
2011-01-04 18:32:46 +01:00
Chris Bagwell
0d8b6be5f5 Remap Eee PC touchpad toggle key to F21 used by X
Currently, Eee PC have a hotkey that generates KEY_F13 but this
will soon change to KEY_TOUCHPAD_TOOGLE.  Both cases do not
work well with X.

X has defined F21 for the purpose of touchpad toggle and other
udev keymaps align with this meaning.  Patch aligns Eee PC
hotkey drivers with F21.

Tested on Eee PC 1005PE using both eeepc-wmi and eeepc-laptop driver
(with acpi_osi="!Windows 2009").

Signed-off-by: Chris Bagwell <chris@cnpbagwell.com>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2011-01-03 09:31:45 +01:00
Kay Sievers
e99cc72398 man: generate html pages for www.kernel.org
http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev/
2010-12-26 16:01:13 +01:00
Kay Sievers
0e6a2e7d3c version bump 2010-12-16 13:37:45 +01:00
Kay Sievers
f3f86e483a release 165 2010-12-16 13:17:02 +01:00
Kay Sievers
b4dd18ae52 update NEWS 2010-12-16 10:12:22 +01:00
David Zeuthen
d4c2307cc2 gudev: Add Device.get_usec_since_initialized
Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-12-15 10:46:34 -05:00
Kay Sievers
2363d33e10 gudev: bump minor version 2010-12-15 09:06:05 +01:00
Kay Sievers
9c6a11b1c6 libudev: record and export "age" of device record 2010-12-15 08:58:46 +01:00
Kay Sievers
93a724d3f8 libudev: fix renamed device nodes detection logic 2010-12-15 08:58:45 +01:00
David Zeuthen
ab17a7ef55 Add g_udev_device_get_is_initialized() method
Also nuke the "Index of deprecated symbols" since we have no
deprecated symbols just yet.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-12-14 12:50:04 -05:00
David Zeuthen
0976fd063e Add GUdevEnumerator type and Device.get_tags() method
Also add JS example to check the added API works.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-12-14 12:37:40 -05:00
Kay Sievers
48a0170b11 libudev: enumerate - allow to filter-out not-already-initialized devices 2010-12-14 14:18:32 +01:00
Kay Sievers
ff0e1f4e5d check ifindex > 0 instead of subsystem == "net" 2010-12-14 11:27:02 +01:00
Kay Sievers
14996e80d4 udevd: write full database file for (unsupported) renamed device nodes 2010-12-14 02:30:36 +01:00
Kay Sievers
cad40a5fe7 udevd: switch to common id_filename functions 2010-12-12 20:07:15 +01:00
Kay Sievers
24d1076696 udevd: simplify udev database and fix DEVNAME handling 2010-12-11 14:00:46 +01:00
Kay Sievers
2713e6ab0a udevd: always create /dev/{char,block}/$major:$minor 2010-12-10 13:27:03 +01:00
Kay Sievers
4281da1fa6 udevd: use dev_t or netif ifindex as database key
We need to preserve the database of network interfaces while we
rename them. Use the kernel's numbers wherever possible, instead
of the device names.

Fix wrong database filenames which contain a '/', translated
from '!' in the kernel name.

Fix segfault for kobject pathes where the subsystem can not be
determined from sysfs.
2010-12-10 01:18:15 +01:00
Kay Sievers
dc1791a9e6 udevadm: info - honor --export, --export-prefix= 2010-12-10 01:18:15 +01:00
Kay Sievers
88163971b9 udevadm: info - honor --export and --export-prefix for property query
The output will always be quoted:
  $ udevadm info --export --export-prefix=MY_ --query=property --name=sda
  MY_UDEV_LOG='3'
  MY_DEVPATH='/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda'
  MY_MAJOR='259'
  MY_MINOR='0'
  MY_DEVNAME='sda'
  MY_DEVTYPE='disk'
  MY_SUBSYSTEM='block'
2010-12-10 01:18:14 +01:00
Kay Sievers
8ba13ec1cd libudev: do not overwrite path with readlink() call 2010-12-10 01:18:14 +01:00
Martin Pitt
329239f506 keymap: Fix struck Touchpad key on Dell Precision M series
https://launchpad.net/bugs/686662
2010-12-08 18:41:42 +01:00
Martin Pitt
a2f8d21431 keymap: Fix struck Touchpad key on Dell Latitude E series
https://launchpad.net/bugs/686662
2010-12-08 16:21:02 +01:00
Kay Sievers
310f99d335 rules: revert bsg use until the event ordering problem is sorted out
The bsg devices node are created after the LUN, so we fail in the
hotplug case, but succeed at coldplug, and create inconsistent data
that way.

The bsg device event order will need to be sorted out, by changing the
kernel.
2010-11-30 11:48:08 +01:00
Kay Sievers
5113029acb rules: drop alsa jack-plug input devices 2010-11-29 12:01:58 +01:00
David Henningsson
53c5ceff08 Add ACLs for FFADO supported sound cards
https://launchpad.net/bugs/681755

Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-11-26 15:31:42 +01:00
Andy Whitcroft
046d09f322 keymap: Add release quirks for two Zepto Znote models and AMILO Xi 2428
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-11-26 14:08:28 +01:00
Kay Sievers
2b15b26dfa rules: drop OSS audio rule 2010-11-24 12:05:21 +01:00
Kay Sievers
01675fbbe8 rules: 78-sound-card - remove specific hardware matches, they do not belong here 2010-11-24 12:00:31 +01:00
Michal Soltys
1a6ab67030 udevd: create static nodes before /dev/null is needed 2010-11-22 13:55:20 +01:00
Martin Pitt
0e6546c11f Add ACL for media player USB devices
Originally we added an ACL for some particular mobile phone product IDs to
enable users to run e. g. the Android SDK as non-root. This was removed in
232f180 as we don't want to maintain product/vendor ID lists in udev.

However, we already know from media-player-info that devices like this are
media players. There is little reason to deny user access to those, so add back
a generic rule which adds an ACL to media player raw USB devices.

https://launchpad.net/bugs/316215
2010-11-22 10:49:12 +01:00
Harald Hoyer
d69207c3f2 70-acl.rules: add ACLs for ID_PDA devices 2010-11-12 15:44:34 +01:00
Harald Hoyer
851dd4ddc5 udev-rules.c: change import property buffer to 16384 bytes
import_program_into_properties() should have the same line length as
import_file_into_properties()

see also https://bugzilla.redhat.com/show_bug.cgi?id=652318
2010-11-12 14:42:35 +01:00
Jakub Wilk
b8015eea2d man: udev - workaraound -> workaround 2010-11-10 01:30:53 +01:00
Bastien Nocera
a1ca5f60e0 extras/keymap: Make touchpad buttons consistent
We'll need to standardise on the Touchpad related keys in udev, kernel, and
X.org. I selected F21 for XF86TouchpadToggle, F22 for XF86TouchpadOn and F23
for XF86TouchpadOff.

See:
https://bugs.freedesktop.org/show_bug.cgi?id=31333

Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-11-06 12:31:24 -04:00
Bastien Nocera
ecfad20871 keymap: Add force release for HP touchpad off
Force the touchpad off/on keys getting released, as they usually
only send a "repeat".

https://bugzilla.redhat.com/show_bug.cgi?id=623239

Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-11-06 09:16:23 -04:00
David Zeuthen
560de57514 Use ata_id, not scsi_id, on ATAPI devices
The major benefit here, is that we get the ATAPI device serial
number. With SCSI ID we didn't get this since it's not part of the
SCSI INQUIRY command. Specifically this means that we get symlinks to
empty optical drives, e.g.

 /dev/disk/by-id/ata-VBOX_CD-ROM_VB2-01700376

which we didn't get earlier. So this is a major win.

Also make ata_id work on CD-ROM devices when using /dev/bsg nodes so
this works on both the scsi_device as well as the block device. We do
this, basically, by issuing the ATA IDENTIFY PACKET DEVICE command
instead of the ATA IDENTIFY command. We also use 16-byte pass-through
ATA passthrough instead of 12-byte passthrough to avoid clashing with
the MMC BLANK command.

This means that we get this output

 # udevadm info -q all -p /sys/devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 P: /devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 E: UDEV_LOG=3
 E: DEVPATH=/devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 E: DEVTYPE=scsi_device
 E: DRIVER=sr
 E: MODALIAS=scsi:t-0x05
 E: SUBSYSTEM=scsi
 E: ID_ATA=1
 E: ID_TYPE=cd
 E: ID_BUS=ata
 E: ID_MODEL=VBOX_CD-ROM
 E: ID_MODEL_ENC=VBOX\x20CD-ROM\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x 20\x20\x20\x20\x20\x20\x20
 E: ID_REVISION=1.0
 E: ID_SERIAL=VBOX_CD-ROM_VB2-01700376
 E: ID_SERIAL_SHORT=VB2-01700376

instead of just

 # udevadm info -q all -p /sys/devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 P: /devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 E: UDEV_LOG=3
 E: DEVPATH=/devices/pci0000:00/0000:00:01.1/host3/target3:0:0/3:0:0:0
 E: DEVTYPE=scsi_device
 E: DRIVER=sr
 E: MODALIAS=scsi:t-0x05
 E: SUBSYSTEM=scsi
 E: ID_SCSI=1
 E: ID_VENDOR=VBOX
 E: ID_VENDOR_ENC=VBOX\x20\x20\x20\x20
 E: ID_MODEL=CD-ROM
 E: ID_MODEL_ENC=CD-ROM\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20
 E: ID_REVISION=1.0
 E: ID_TYPE=cd

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-11-04 13:29:38 -04:00
David Zeuthen
2938220037 Run scsi_id and ata_id on the scsi_device object
In a multi-initiator setup, the HBA may very well export a SCSI device
for a device that another initiator has already logged into. But since
another initiator has already logged in, the kernel will not create a
block device.

Note that this is also the case for some RAID HBAs - for example, the
LSI 1068 series cards will export a SCSI device for a disk that is in
use by the HBAs RAID engine (no block device will be created here).

Running scsi_id and ata_id on the actual SCSI device means that we can
inquire the capabilities of the device. For example, we can check
whether ID_ATA_FEATURE_SET_SMART and ID_ATA_FEATURE_SET_SMART_ENABLED
is set and, if so, periodically poll the SMART status of the
disk. Even when other initiators has claimed the disk and if the disk
is in use by the RAID engine of the HBA.

Note that we run scsi_id and ata_id on /dev/bsg/* nodes - this is safe
to do because the scsi core guarantees that the bsg device has been
created before the actual add uevent for the scsi_device is emitted.

Since the block device is a direct child of the scsi_device we can
avoid running scsi_id and ata_id again by simply importing the
resulting ID_* properties from the parent.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-10-30 13:04:35 -04:00
David Zeuthen
6992637e31 ata_id: Support SG_IO version 4 interface
This makes it possible to use /dev/bsg/* nodes for ata_id:

 # /lib/udev/ata_id --export /dev/bsg/0\:0\:0\:0
 ID_ATA=1
 ID_TYPE=disk
 ID_BUS=ata
 ID_MODEL=INTEL_SSDSA2MH080G1GC
 ID_MODEL_ENC=INTEL\x20SSDSA2MH080G1GC\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20
 ID_REVISION=045C8802
 [...]

This means that our cd-rom detection as per commit

 http://git.kernel.org/?p=linux/hotplug/udev.git;a=commit;h=160b069c25690bfb0c785994c7c3710289179107

needs to be reworked since we can't just use the CDROM_GET_CAPABILITY
ioctl on a /dev/bsg node (which is a character device). We do this by
just sending the SCSI INQUIRY command and checking the type (CD-ROM's
are all type 0x05 and disks are type 0x00) before we issue the ATA
IDENTIFY command through the SCSI command ATA PASS_THROUGH (12).

 (Yes, it's a bit perverse how we have to tunnel our ATA commands
 through a SCSI command  but that's how Linux currently work.)

We still support for SG_IO version 3 (we fail back if version 4 fails
with EINVAL) because testing reveals that some drivers (such as
mpt2sas) still only support version 3 on the block nodes.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2010-10-30 13:03:00 -04:00
Jan Drzewiecki
d43e5e5b5a cdrom_id: Fix media state for unreadable DVDs
If the disc is unreadable and reading of the first 32 blocks fails set the
cd_media status to 0 (not present). This will prevent udev from executing blkid
next that tries to determine fs on the disc and which in this case may seem to
hang forever locking the drive.

Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-10-26 12:10:57 -04:00
Martin Pitt
81956ed1dc keymap: Add some more Sony Vaio VGN-* models
https://launchpad.net/bugs/627890
2010-10-25 22:11:37 -04:00
Martin Pitt
2f151e0fbf keymap: Add Sony Vaio VGN71
https://launchpad.net/bugs/625770
2010-10-25 22:01:03 -04:00
Kay Sievers
be9c0d5740 version bump 2010-10-23 15:35:35 +02:00
Kay Sievers
9bc26156e0 release 164 2010-10-23 15:13:57 +02:00