Hi, Attached is a very experimental driver for a Ricoh SD Card reader that can be found in some notebooks like the Samsung P35. Whenever a sd card is inserted into one of these notebooks, a virtual pcmcia card will show up: Socket 0: product info: "RICOH", "Bay1Controller", "", "" manfid: 0x0000, 0x0000 In order to write this driver I hacked qemu to have access to the cardbus bridge containing this card. I then logged the register accesses of the windows xp driver and tryed to analyse them. As the meanings of most of the register are still unknown to me, I consider this driver very experimental. It is possible that this driver might destroy your data or your hardware. Use at your own risk! Other problems: - I only implemented reading support - I only tested with a 128 MB SD card, no idea what would be needed to support other card types - irqs are not supported - dma is not supported - it is very slow - the registers can be found on the cardbus bridge and not on the virtual pcmcia card. The cardbus bridge is already claimed by yenta_socket. Therefore the driver currently uses pci_find_device to find the cardbus bridge containing the sd card reader registers. - it will probably crash when you remove the sd card without unmounting first - the ios stuff is not really understood - there are a bunch of extra MMC_APP_CMDs inside the driver - only tested with kernel 2.6.18 apart from all these problems reading an image from my sd card seems to have worked ;) If you are still brave enough to try it out make at least a backup of the data on your sd card. Feedback is highly appreciated. Regards Sascha
KERNEL_VERSION = $(shell uname -r) KERNEL_DIR = /lib/modules/$(KERNEL_VERSION)/build MDIR = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/mmc obj-m += sdricoh_cs.o default: $(MAKE) -C $(KERNEL_DIR) SUBDIRS=$(PWD) modules install: if test ! -d $(MDIR) ; then mkdir -p $(MDIR) ; fi install -D -m 644 *.ko $(MDIR) depmod -a clean: rm -f *.o *.ko *.mod.c .*o.cmd .*o.d .*o.flags rm -rf .tmp_versions
Attachment:
sdricoh_cs.c.gz
Description: GNU Zip compressed data
- Follow-Ups:
- Re: Experimental driver for Ricoh Bay1Controller SD Card readers
- From: Pierre Ossman <[email protected]>
- Re: Experimental driver for Ricoh Bay1Controller SD Card readers
- From: Samuel Thibault <[email protected]>
- Re: Experimental driver for Ricoh Bay1Controller SD Card readers
- From: Jiri Slaby <[email protected]>
- Re: Experimental driver for Ricoh Bay1Controller SD Card readers
- Prev by Date: Re: [PATCH 1/2 v3] sysrq: showBlockedTasks is sysrq-W
- Next by Date: Re: 2.6.20-rc3-mm1 - reiser4-sb_sync_inodes.patch causes boot hang
- Previous by thread: Re: + spin_lock_irq-enable-interrupts-while-spinning-i386-implementation.patch added to -mm tree
- Next by thread: Re: Experimental driver for Ricoh Bay1Controller SD Card readers
- Index(es):