summaryrefslogtreecommitdiffstats
path: root/rules.d
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2009-02-26 14:32:43 +0100
committerKay Sievers <kay.sievers@vrfy.org>2009-02-26 14:32:43 +0100
commit1c2347aea896a125212e92ecc08cc34ec15fb884 (patch)
treebea12e1719bb531ea51e4912a50fcfed72323eb7 /rules.d
parent06fee274b0741bf2a09fde93fb375226d35cb658 (diff)
add Lennart's 78-sound-card.rules to rules.d/
Diffstat (limited to 'rules.d')
-rw-r--r--rules.d/78-sound-card.rules37
-rw-r--r--rules.d/Makefile.am6
2 files changed, 43 insertions, 0 deletions
diff --git a/rules.d/78-sound-card.rules b/rules.d/78-sound-card.rules
new file mode 100644
index 0000000..2e05ef0
--- /dev/null
+++ b/rules.d/78-sound-card.rules
@@ -0,0 +1,37 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION!="add|change", GOTO="sound_end"
+SUBSYSTEM!="sound", GOTO="sound_end"
+KERNEL!="card*", GOTO="sound_end"
+
+SUBSYSTEMS=="usb", ENV{ID_MODEL}=="", IMPORT{program}="usb_id --export %p"
+SUBSYSTEMS=="usb", ENV{ID_MODEL_FROM_DATABASE}=="", IMPORT{program}="usb-db %p"
+SUBSYSTEMS=="usb", GOTO="skip_pci"
+
+SUBSYSTEMS=="pci", ENV{ID_MODEL_FROM_DATABASE}=="", IMPORT{program}="pci-db %p"
+SUBSYSTEMS=="pci", DEVPATH=="*/0000:00:??.?/sound/*", ENV{SOUND_ONBOARD}="1"
+
+LABEL="skip_pci"
+
+# Hmm, do we really want this database here?
+
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="0471", ATTRS{idProduct}=="0311", ENV{SOUND_FORM_FACTOR_WEBCAM}="1", GOTO="sound_end"
+
+# Yepp, this is ugly:
+
+ENV{ID_MODEL}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR_SPEAKER}="1", GOTO="sound_end"
+ENV{ID_MODEL_FROM_DATABASE}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR_SPEAKER}="1", GOTO="sound_end"
+
+ENV{ID_MODEL}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR_HEADPHONE}="1", GOTO="sound_end"
+ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR_HEADPHONE}="1", GOTO="sound_end"
+
+ENV{ID_MODEL}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR_HEADSET}="1", GOTO="sound_end"
+ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR_HEADSET}="1", GOTO="sound_end"
+
+ENV{ID_MODEL}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR_HANDSET}="1", GOTO="sound_end"
+ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR_HANDSET}="1", GOTO="sound_end"
+
+ENV{ID_MODEL}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR_MICROPHONE}="1", GOTO="sound_end"
+ENV{ID_MODEL_FROM_DATABASE}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR_MICROPHONE}="1", GOTO="sound_end"
+
+LABEL="sound_end"
diff --git a/rules.d/Makefile.am b/rules.d/Makefile.am
new file mode 100644
index 0000000..a6ee93f
--- /dev/null
+++ b/rules.d/Makefile.am
@@ -0,0 +1,6 @@
+include $(top_srcdir)/Makefile.am.inc
+
+udevrulesdir = $(udev_prefix)/lib/udev/rules.d
+
+dist_udevrules_DATA = \
+ 78-sound-card.rules