Po roce a půl, co vlastním notebook ASUS A3000 se mi dnes konečně
podařilo v rámci mezí zprovoznit integrovanou čtečku SD karet
…
Když jsem dnes stáhl nové jádro
2.6.21, napadlo mě, že bych se mohl podívat na to, jak je na tom s vývojem
modul sdhci.
Po chvíli pátrání jsem narazil na zápis ve Wikipedii distribuce Gentoo. Tam
byl použit jaderný modul sdricohcs,
který již podle názvu napovídá, že je určen pro výrobce Ricoh a čtečky
SD karet.
Integrovaná čtečka se mi v notebooku hlásí jako:
CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ac)
Takže pokud máte podobný kus železa ve svém notebooku, můžete se pustit do díla. V jádře je nejprve potřeba zapnout podpora pro MMC/SD karty (podporu PCMCIA a příslušných souborových formátů snad ani zmiňovat nemusím):
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Device Drivers --->
MMC/SD Card support -->
<*> MMC support
[ ] MMC debugging
<*> MMC block device driver
<*> Secure Digital Host Controller Interface support (EXPERIMENTAL)
< > Winbond W83L51xD SD/MMC Card Interface support
Následuje standardní proces kompilace jádra a restart, aby se jádro zavedlo. Dále je potřeba stáhnout driver sdricohcs, pro jádro 2.6.21 doporučuji verzi ze SVN, protože 0.1 nefunguje:
$ svn co https://sdricohcs.svn.sourceforge.net/svnroot/sdricohcs sdricohcs
$ cd sdricohcs/sdricoh_cs/
$ make
$ su -c "make install"
Tímto se modul nakompiluje a nainstaluje. Dále ho stačí jako superuživatel root zavést.
$ modprobe sdricoh_cs
Pokud se nezobrazila žádná chyba, pak by mělo být vše v pořádku. Po vložení SD karty do čtečky by se pak v dmesgu mělo zobrazit něco jako
pccard: PCMCIA card inserted into slot 0
pcmcia: registering new device pcmcia0.0
mmcblk0: mmc0:9117 S016B 14560KiB (ro)
mmcblk0: p1
V KDE se mi hned zjevilo dialogové okno, co
chci provést a já byl celý šťastný, jak se mi to povedlo
. Jako jedinné zklamání se ukázal
fakt, že přenos dat je (prý zatím) pomalý a také to, že připojení disku
je výhradně v režimu read-only
.
Jsem moc rád, že vývoj ovladačů tak skvěle pokročil a už se těším, až ovladače, které je potřeba k provozu čtečky karet, opět povyrostou. Sláva vývojářům!
Aktualizováno:
Nenapadlo mě, že při zavádění modulu můžu zadat nějaké parametry a ejhle, on hned jeden z nich aktivuje zápis:
$ modprobe sdricoh_cs write=1
V logu se pak objeví známá hláška, jen bez (ro):
pccard: PCMCIA card inserted into slot 0
pcmcia: registering new device pcmcia0.0
mmcblk0: mmc0:9117 S016B 14560KiB
mmcblk0: p1
Ono je to přitom tak snadné, aby šlo na SD kartu
zapisovat 

Webdesing & kód: Tomáš Kopečný
, tomas@kopecny.info, Praha, Česká republika, centrum holdings
Jakékoliv použití, či pouze převzetí, materiálů, textových i obrazových, je bez písemného svolení autora zapovězeno.
Komentáře
INT
Skvělý návod, hledal jsem přesně tohle. Mám notebook asus, distro gentoo a stejnou čtečku, díkes ;)
Nový komentář