Re: devd ein USB-Device bekannt machen

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Tue, 23 Apr 2013 15:23:09 +0200 (CEST)

Gerhard Brauer wrote:
> Aha. Danke. Wäre bei dem Vorgang ein etwas mehr "dynamischeres"
> Procedere nicht sinnvoller als diese Infos im Kernel unterzubringen?
> Ich meine, täglich kommen wahrscheinlich zig USB/PCI-Geräte wie
> Toaster, Mäuse und Hamsterräder hinzu: wäre dies nicht ggf. besser
> bei devd plus einer "Datenbank" über vendor/product-ID aufgehoben,
> die einfach durch Editieren veränderbar wäre?

Die meisten USB-Geräte implementieren ja eine bestimmte
Klasse (Mäuse, Tastaturen, Massenspeicher, Netzwerk, ...)
und werden daher automatisch an die betreffenden Treiber
attached, auch wenn Vendor-/Device-ID nicht bekannt sind.

Bei Toastern weiß ich's nicht, aber ich habe mal ein USB-
Hamsterrad gesehen, das sich sich als HID-Gerät zu erkennen
gab und somit vom uhid(4)-Treiber vereinnahmt wurde.

Die "nomatch"-Meldung kommt ja nur, wenn sich wirklich gar
kein Treiber für das Ding zuständig fühlt. In der Praxis
kommt das nicht so häufig vor -- In erster Linie halt bei
Geräten, für die es keine Kerneltreiber gibt, wie das bei
Verwendung von cuse4bsd + webcamd der Fall ist (dort wird
die Geschichte ja im Userland abgewickelt).

> Wenn's nicht so rübergekommen ist: ich störe mich weniger an dem
> "unknown device" als an dem Meldevorgang selbst. Ich hoffe halt, daß
> durch das Bekanntmachung um welches Device es sich handelt dieser
> meldevorgang dann auch unterbleibt.

Also, meine pragmatische Lösung wäre, den betreffenden
"nomatch"-Abschnitt in der devd.conf auszukommentieren.
Die Logmeldung ist nur dann hilfreich, wenn man sehen
möchte, ob und mit welchen IDs ein neues Gerät gesehen
wird. Falls Du das mal brauchst, kannst Du den Abschnitt
ja wieder kurzzeitig aktivieren.

> NB: Meine Aussage, daß ein anderes DVB-Device diese meldung nicht
> bringt, stimmt so auch nicht. Ich habe nochmal im Log geschaut, und
> am betreffenden PC ist die Meldung auch vorhanden. Nur halt nicht so
> häufig wie am "problem-Rechner". Was wohl auch damit zusammenhängt,
> wie stabil USB-Bus und Gerät sind, wie oft also ggf. devd
> "getriggert" wird ein schon vorhandenes Device als "neu zu
> behandelnd" anzusehen.

Das kann verschiedene Ursachen haben. Denkbar wäre z.B.,
dass der webcamd manchen USB-Geräten in manchen Situationen
einen zusätzlichen Reset verpasst (sozusagen als Hardware-
Quirk). So ein Reset führt dazu, dass das Gerät kurzzeitig
vom Bus ab- und wieder angemeldet wird.

> In dem von Dir angeführten Link befindet sich scheinbar z.B. kein einziges
> DVB-Gerät (Suche nach DVB). Da hätte ich allein 3 Geräte/Vendor die
> neu einzutragen wären... ;-)

Ich bin nicht sicher, ob das viel helfen würde. Es gibt ja
trotzdem keinen Kernel-Treiber dafür, d.h. der "nomatch"-
Eintrag greift, egal ob die IDs bekannt sind oder nicht.

Um ehrlich zu sein, wäre ich auch eher dagegen, den Kernel
mit Vendor- und Product-IDs zu füllen, für die eh keine
Treiber vorhanden sind. Der Nutzen tendiert gegen Null.
Vermutlich ist das der Grund, dass noch keine DVB-Geräte
gelistet sind. IMHO sollte das auch so bleiben.

> Ich finde mit Sicherheit auch noch ein paar keyboards+Mäuse *g*

Wie gesagt, solche Geräte werden ja sowieso anhand ihrer
Klasse erkannt und ukbd(4) bzw. ums(4) zugeordnet.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG,  Marktplatz 29, 85567 Grafing
Handelsregister:  Amtsgericht Muenchen, HRA 74606, Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsreg.: Amtsgericht München,
HRB 125758, Geschäftsführer:  Maik Bachmann,  Olaf Erb,  Ralf Gebhart
FreeBSD-Dienstleistungen/-Produkte + mehr: http://www.secnetix.de/bsd
"If you think C++ is not overly complicated, just what is a protected
abstract virtual base pure virtual private destructor, and when was the
last time you needed one?"
        -- Tom Cargil, C++ Journal
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 23 Apr 2013 - 15:23:20 CEST

search this site