This page contains a modified version of the sharp sdcard driver for Zaurus SL-5500, hacked to support 2GB sd cards. It might also work with 4GB sd cards, but i'm not sure (i can't test).
Sharp provides no updated driver for their old zaurus pda. They also refuse to publish hardware specification that would allow a new (free software) driver to be written from scratch. Therefore we, poor openzaurus users, are forced to use the old 2.4 kernel just because of the sd card support.
I hope some nice guy will eventually use these reverse engineered Zaurus SD/MMC Specs to write a native 2.6 linux driver.
I disassembled the original sharp_mmcsd_m.o until i got to the function that parses the CSD structure. Then i forced the driver to believe that each sector is always 512 bytes (2GB and 4GB cards use 1024 and 2048 bytes/sector, respectively). I have also employed some asm-fu techniques to account for the increased sector size into the number of sectors. In terms of SD card specification, i would say "C_SIZE_MULT += (READ_BL_LEN - 9)". Btw, this page contains some good information on the subject (not specific to zaurus).
No animals were harmed while hacking this file.
copy the provided mmcsd_2g.o to /lib/modules/2.4.18-rmk7-pxa3-embedix/kernel/drivers/block/sharp_mmcsd_m.o
Center for Telecommunications Studies of PUC-Rio
PUC-Rio (Brasil)
Last modified: $ $
|