Forum Linux.noyau Problème avec périphériques USB

Posté par  .
Étiquettes :
0
18
déc.
2005
Bonsoir,

Je suis en debian testing, sous noyau 2.6.14.

1) Problème de droits pour un scanner ou un apn

Lorsque je branche un APN ou un scanner, j'ai les pseudo fichiers :

/proc/bus/usb/001/002
et
/dev/bus/usb/001/002

qui apparaissent. Or, celui dans /dev n'est pas modifié avec le groupe
camera (pour un APN, vie lescript hotplug de gphoto2); uniquement celui sur /proc. Pourquoi ce comportement ?

2) Montage d'une carte CF via un lecteur

Jusqu'à présent, je branchais mon lecteur de cartes sur le port USB (1.1) de mon portable, et tout marchait nickel. dmesg me donne :

scsi9 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 5
usb-storage: waiting for device to settle before scanning
Vendor: USB 1.1 Model: Reader(SM) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi9, channel 0, id 0, lun 0
Vendor: USB 1.1 Model: Reader(MS+/SD+) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sdb at scsi9, channel 0, id 0, lun 1
Vendor: USB 1.1 Model: Reader(CF) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sdc at scsi9, channel 0, id 0, lun 2
usb-storage: device scan complete

Depuis peu (depuis l'utilisation d'udev et du noyau 2.6.12, installés après un plantage disque, et une ré-installe complète du système), ça merdouille :

$ mount /card
mount: special device /dev/sdc1 does not exist
# fdisk -l /dev/sdc

Disk /dev/sdc: 256 MB, 256901120 bytes
16 heads, 32 sectors/track, 980 cylinders
Units = cylinders of 512 * 512 = 262144 bytes

Device Boot Start End Blocks Id System
/dev/sdc1 1 979 250608 6 FAT16

$ mount /card
$ ls /card
dcim

Subtile, non ? Le fait de faire un fdisk permet la création du point de montage. Je me souviens avoir eu un problème de ce genre avec un noyau plus ancien, alors qu'udev était installé ; en virant udev, je n'avais plus ce problème.

Mais il y a encore plus subtile. J'ai acheté une carte CardBus USB 2, pour aller un peu plus vite. Cette carte marche très bien. Voici la sortie de dmesg lorsque je la branche :

PCI: Enabling device 0000:03:00.0 (0000 -> 0002)
PCI: Setting latency timer of device 0000:03:00.0 to 64
ohci_hcd 0000:03:00.0: OHCI Host Controller
ohci_hcd 0000:03:00.0: new USB bus registered, assigned bus number 3
ohci_hcd 0000:03:00.0: irq 11, io mem 0xf4000000
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 3 ports detected
PCI: Enabling device 0000:03:00.1 (0000 -> 0002)
PCI: Setting latency timer of device 0000:03:00.1 to 64
ohci_hcd 0000:03:00.1: OHCI Host Controller
ohci_hcd 0000:03:00.1: new USB bus registered, assigned bus number 4
ohci_hcd 0000:03:00.1: irq 11, io mem 0xf4001000
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 2 ports detected
PCI: Enabling device 0000:03:00.2 (0000 -> 0002)
ehci_hcd 0000:03:00.2: EHCI Host Controller
ehci_hcd 0000:03:00.2: new USB bus registered, assigned bus number 5
ehci_hcd 0000:03:00.2: irq 11, io mem 0xf4002000
ehci_hcd 0000:03:00.2: park 0
ehci_hcd 0000:03:00.2: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004
hub 5-0:1.0: USB hub found
hub 5-0:1.0: 5 ports detected

Maintenant, je connecte le lecteur de cartes sur la carte CardBus USB 2:

usb 5-2: new high speed USB device using ehci_hcd and address 2
scsi6 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
Vendor: USB 2.0 Model: Reader(SM) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sda at scsi6, channel 0, id 0, lun 0
Vendor: USB 2.0 Model: Reader(MS+/SD+) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sdb at scsi6, channel 0, id 0, lun 1
Vendor: USB 2.0 Model: Reader(CF) Rev: 2003
Type: Direct-Access ANSI SCSI revision: 02
Attached scsi removable disk sdc at scsi6, channel 0, id 0, lun 2
usb-storage: device scan complete

Jusque là, ça va. Maintenant, je met la carte CF, et j'essaye de la monter :

$ mount /card
mount: special device /dev/sdc1 does not exist

Pas mieux qu'avant. Mais :

# fdisk -l /dev/sdc
[blocage pendant 20 secondes]
Unable to open /dev/sdc

Par contre, Une clé USB se monte très bien, que ce soit sur le port du portable, ou sur la carte CardBus :

$ mount /key
$ ls /key
eau.zip Securite photo.jpg

Je pense qu'udev est responsable de tout ça, mais comme je n'y comprend rien, surtout depuis qu'hotplug a été viré, mais qu'il reste encore des scripts hotplug, eux-même appelés par udev... Si quelqu'un pouvait éclairer ma lanterne sur ces problèmes.

D'avance merci.

PS : je ne suis pas certain que cela soit en rapport direct avec le noyau, mais je ne vois pas où poster à part ici...
  • # Tester les autres devices

    Posté par  . Évalué à 1.

    Salut,

    Je fais juste une petite remarque : il est possible que les différents conecteurs du lecteur de carte n'apparaissent pas dans le même ordre que sur le portable. De toute évidence, pour ta carte CF tu essaies de monter /dev/sdc1. Essaie de monter /dev/sda1 ou /dev/sdb1 sur /card, il y a de grandes chances pour que cela fonctionne.
    Je laisse à d'autres le soin de donner des détails sur la gestion des points de montage des périphriques amovibles par udev/hotplug.

    A+
    JJD
    • [^] # Re: Tester les autres devices

      Posté par  . Évalué à 1.

      Non-non. Regarde bien les logs, et tu verras que le lecteur CF est bien en /dev/sdc. De plus, juste après avoir fait un fdisk, j'arrive tout à fait à la monter sous /dev/sdc1...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.