public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Block request processing for MMC/SD over SPI bus
@ 2006-08-01  8:37 Hans Eklund
  2006-08-01  8:42 ` Russell King
  0 siblings, 1 reply; 6+ messages in thread
From: Hans Eklund @ 2006-08-01  8:37 UTC (permalink / raw)
  To: linux-kernel

(CC to hans@rubico.se)

After trying other forums and irc for help on this matter i hope someone on 
the LKML can help.

-Background(skip if short of time).
First linux driver for me and first post on LKML, but in short, i have been 
developing a MMC/SD card driver in SPI mode for uClinux on the Analog Devices 
Blackfin based platform. However, since the 2.6.15 version im moving over to 
the common SPI framework and all code will probably be platform independent 
soon. The driver is working quite well but need some tuning in the request 
processing.

The driver is also independent of any previous MMC related work at this point 
since MMC over SPI mode differs somewhat from the MMC mode.

I have implemeted the request processing from scratch. I have followed the 
Linux Device Drivers and the Understanding Linux Kernel as far as possible, 
but they are not very extensive on error handling. I have also had a look at 
the ATA and SCSI drivers.

-Questions
A snip of my current request processing can be found here: with comments and 
some questions. 

http://hasse.yohoo.nu/strat.txt

The big issue is error handling and how i report back to the user space 
processes that the device is dead(if hardware fails for example), basically 
how to gracefully handle critical issues. At this point, if retries on broken 
sectors fails im not sure how to report back to the I/O scheduler and block 
layer so the device can be halted. Now, the kernel actually hangs(or retries 
same sector forever). Im really at a dead end here. Could really use some 
help at this point.

Also, Is there any work done similar to mine?
Would there be interest in incorporating the driver in future kernels?

Answers/CC to hans@rubico.se since i did not dare to plunge into the lkml 
traffic just yet.

Best regards
Hans Eklund
Rubico AB
Sweden.


^ permalink raw reply	[flat|nested] 6+ messages in thread
* Re: Block request processing for MMC/SD over SPI bus
@ 2006-08-01 10:08 Hans Eklund
  2006-08-01 14:45 ` David Brownell
  0 siblings, 1 reply; 6+ messages in thread
From: Hans Eklund @ 2006-08-01 10:08 UTC (permalink / raw)
  To: David Brownell; +Cc: linux-kernel, Russell King

Hi David.

First, my original post on LKML on the subject of MMC/SD over SPI framwork:

http://lkml.org/lkml/2006/8/1/71

I began developing a driver for MMC access over SPI on the Analog Devices 
Blackfin DSPs, running uClinux this spring. However, since then the blackfin 
uClinux has moved from kernel version 2.6.12 to 2.6.16 with the unified SPI 
framework. Also, a platform spi driver for the ADI Blackfin was recently 
written. I released my driver to the Blackfin uClinux community a few weeks 
ago and my plans was to move over to the SPI framwork using the platform 
driver instead of low level blackfin SPI related code.

As you can see om my LKML post, my driver covers(at first stage) everything 
from low level SPI commands and block device insertion to the request 
processing(since i at first could not connect to the MMC subsystem). Now, 
Russel King believes that you may have written a SPI to MMC subsytem driver. 
Correct? If so, whats the status on your driver?

My current goal was to make my driver platform independent and then(if 
possible) connect to the MMC subsystem which i, at this point is not too 
familiar with.
 
regards

Hans Eklund
Rubico AB - http://www.rubico.se
Sweden.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2006-08-08 15:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-01  8:37 Block request processing for MMC/SD over SPI bus Hans Eklund
2006-08-01  8:42 ` Russell King
2006-08-08 15:07   ` Hans Eklund
  -- strict thread matches above, loose matches on Subject: below --
2006-08-01 10:08 Hans Eklund
2006-08-01 14:45 ` David Brownell
2006-08-01 15:07   ` David Brownell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox