Dell X300 et lecteur de carte SD
Cela fait quelles que années que j'utilise un Dell Latitude X300 et je n'avais encore pas essayé le lecteur de carte SD. C'est maintenant chose faite, et voici un petit compte-rendu de ce qu'il faut faire pour l'utiliser (avec une Debian etch et un noyau 2.6.21 mais cela peut s'appliquer à d'autres distributions et d'autres noyaux).
Kernel
Au niveau du noyau, il faut valider "MMC/SD Card support" et "MMC block device driver". Il faut aussi le support PCMCIA et du chipset yenta car le lecteur de carte est branché sur le bus PCMCIA sur le X300.
Driver
Avec un lspci, on voit que le lecteur de carte utilise le chipset Ricoh Co Ltd RL5c476 II :
02:03.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
Subsystem: Dell Unknown device 014f
Flags: bus master, medium devsel, latency 168, IRQ 10
Memory at e0212000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=02, secondary=03, subordinate=06, sec-latency=176
Memory window 0: 30000000-33fff000 (prefetchable)
Memory window 1: 3c000000-3ffff000
I/O window 0: 00003000-000030ff
I/O window 1: 00003400-000034ff
16-bit legacy interface ports at 0001
Il n'existe pas de driver dans le noyau. Il faut donc aller chercher un driver ici.Il faut maintenant le décompacter et le compiler :
tar xvfz sdricoh_cs-0.1.1.tar.gz
cd sdricoh_cs-0.1.1
make
make install
Utilisation du driver
Il est temps mainteant d'insérer une carte dans le lecteur et on peut voir ces messages dans /var/log/kern.log :
kernel: PM: Adding info for No Bus:mmc0
kernel: PM: Adding info for mmc:mmc0:9d54
kernel: mmcblk0: mmc0:9d54 SD01G 1006080KiB (ro)
kernel: mmcblk0: p1
S'il n'y a pas de détection de la carte, il va falloir insérer le module manuellement : modprobe sdricoh_cs.
Device
Si udev est installé, pas de soucis il devrait créer les devices necessaires.
Sinon, on peut tojours le faire manuellement. On va récupérer les major/minor de la carte : cat /proc/partitions
3 0 39070080 hda
3 1 56196 hda1
...
254 0 1006080 mmcblk0
254 1 1005958 mmcblk0p1
Et on crée les devices (à adapter en fonction du résultat) :
mknod /dev/mmcblk0 b 254 0
mknod /dev/mmcblk0p1 b 254 1
Accès à la carte
Il ne reste plus qu'à monter la carte :
mount /dev/mmcblk0p1 /mnt
Il se peut que le driver voit le lecteur de carte seulement en "lecture seule". Dans ce cas, il faut passer les paramètres suivant lors de l'insertion du module : modprobe sdricoh_cs write=1 switchlocked=1
Commentaires
Afficher les commentaires en Vue non groupée | Vue groupée
christian sur :