summaryrefslogtreecommitdiff
path: root/include/linux/mmc
AgeCommit message (Collapse)Author
2006-02-22[MMC] Fix mmc_cmd_type() maskRussell King
It's MMC_CMD_MASK not MMC_CMD_TYPE. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-02-02[MMC] Add MMC command type flagsRussell King
Some hosts need to know the command type, so pass it via a set of flags in cmd->flags. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-09[MMC] Indicate that R1/R1b contains command opcodePierre Ossman
Some controllers actually check the first byte of the response (most don't). This byte contains the command opcode for R1/R1b and all 1:s for other types. The difference must be indicated to the controller so it knows which reply to expect. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
2006-01-09[MMC] Add DATA_MULTI flagRussell King
Some hosts need to know that a transfer will be multi-block. Add a data flag to indicate multiple data block transfers. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-04[MMC] Fix missing ','Russell King
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-03[MMC] Improve MMC card block size selectionRussell King
Select a block size for IO based on the read and write block size combinations, and whether the card supports partial block reads and/or partial block writes. If we are able to satisfy block reads but not block writes, mark the device read only. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-11-28[MMC] Fix protocol errorsPierre Ossman
A review against MMC/SD specifications found some errors in the current implementation. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-10-28[ARM] 3031/1: fix typos in comments of mmc.hErik Hovland
Patch from Erik Hovland I noticed that the same typo (i before c in associated) showed up twice in the file kernel/include/linux/mmc/mmc.h. This patch fixes both of the instances I found with this mistake. The typos are in comments and should have no affect on working code. E Signed-off-by: Erik Hovland <erik@hovland.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-08[MMC] Ensure correct mmc_priv() behaviourRussell King
mmc_priv() has some nasty effects if the wrong pointer type is passed to it. Introduce type checking, which also means we get the right type. Also add an additional member to mmc_host which is used to align host-private data appropriately. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-08[MMC] Allow detection/removal to be delayedRichard Purdie
Change mmc_detect_change() to take a delay argument such that the detection of card insertions and removals can be delayed according to the requirements of the host driver or platform. Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-07[PATCH] sd: SD 4-bit busPierre Ossman
Infrastructure for 4-bit bus transfers with SD cards. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Cc: Russell King <rmk@arm.linux.org.uk> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-07[PATCH] sd: SCR registerPierre Ossman
Read the SD specific SCR register from the card. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Cc: Russell King <rmk@arm.linux.org.uk> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-07[PATCH] sd: read-only switchPierre Ossman
Support for the read-only switch on SD cards which must be enforced by the host. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Cc: Russell King <rmk@arm.linux.org.uk> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-07[PATCH] sd: initialize SD cardsPierre Ossman
Support for the Secure Digital protocol in the MMC layer. A summary of the legal issues surrounding SD cards, as understood by yours truly: Members of the Secure Digital Association, hereafter SDA, are required to sign a NDA[1] before given access to any specifications. It has been speculated that including an SD implementation would forbid these members to redistribute Linux. This is the basic problem with SD support so it is unclear if it even is a problem since it has no effect on those of us that aren't members. The SDA doesn't seem to enforce these rules though since the patches included here are based on documentation made public by some of the members. The most complete specs[2] are actually released by Sandisk, one of the founding companies of the SDA. Because of this the NDA is considered a non-issue by most involved in the discussions concerning these patches. It might be that the SDA is only interested in protecting the so called "secure" bits of SD, which so far hasn't been found in any public spec. (The card is split into two sections, one "normal" and one "secure" which has an access scheme similar to TPM:s). (As a side note, Microsoft is working to make things easier for us since they want to be able to include the source code for a SD driver in one of their development kits. HP is making sure that the new NDA will allow a Linux implementation. So far only the SDIO specs have been opened up[3]. More will hopefully follow.) [1] http://www.sdcard.org/membership/images/ippolicy.pdf [2] http://www.sandisk.com/pdf/oem/ProdManualSDCardv1.9.pdf [3] http://www.sdcard.org/sdio/Simplified%20SDIO%20Card%20Specification.pdf This patch contains the central parts of the SD support. If no MMC cards are found on a bus then the MMC layer proceeds looking for SD cards. Helper functions are extended to handle the special needs of SD cards. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Cc: Russell King <rmk@arm.linux.org.uk> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-03[MMC] ios for mmc chip selectPierre Ossman
Adds a new ios for setting the chip select pin on MMC cards. Needed on SD controllers which use this pin for other things and therefore cannot have it pulled high at all times. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-19[MMC] Use an IDR for host name indiciesRussell King
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-19[MMC] Use class device name for mmc host nameRussell King
There's no point in having the host name duplicated between the mmc_host structure and the encapsulated class device structure. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-19[MMC] Add MMC class devicesRussell King
Create a mmc_host class to allow enumeration of MMC host controllers even though they have no card(s) inserted. Patch based on work by Pierre Ossman. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-19[MMC] Add mmc_hostname() macroRussell King
mmc_hostname() returns a pointer to the hostname for the mmc_host. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-05-21[PATCH] MMC: Proper MMC command classes supportPierre Ossman
Defines for the different command classes as defined in the MMC and SD specifications. Removes the check for high command classes and instead checks that the command classes needed are present. Previous solution killed forward compatibility at no apparent gain. Signed-of-by: Pierre Ossman
2005-04-16[PATCH] fix u32 vs. pm_message_t in rest of the treePavel Machek
This fixes u32 vs. pm_message_t confusion in remaining places. Fortunately there's few of them. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-03-29[PATCH] Fix u32 vs. pm_message_t confusion in MMCPavel Machek
This fixes u32 vs. pm_message_t confusion in MMC layer. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-03-19[MMC] SD support : protocolRussell King
Patch from Pierre Ossman Protocol definitions. The basic commands needed for the later patches. The R1_APP_CMD seems to be misdefined in protocol.h so this patch changes it.
2005-01-03[MMC] Remove deprecated data->reqRussell King
Since all users of this have now been eliminated, we can eliminate the element itself. MMC host drivers now operate only on the scatter lists passed to them, rather than needing knowledge of block devices. Signed-off-by: Russell King <rmk@arm.linux.org.uk>
2004-10-28[MMC] Deprecate "req" member of mmc_data structure.Russell King
Host drivers should now use the scatterlist rather than accessing the request directly. This marks the request pointer as being deprecated so that host driver authors get a chance to fix their drivers up before we remove this member.
2004-10-27[MMC] Add support for passing scatterlists to MMC host drivers.Russell King
This is intended to remove block layer knowledge from MMC host drivers. Host drivers are expected to use the scatter list for data transfers rather than accessing the struct request.
2004-09-18[MMC] Add v2.x and v3.x CID parsing.Russell King
2004-09-18[MMC] Clean up MMC card CID/CSD decoding, stage 1.Russell King
Now that the raw CSD and CID information are available in mmc_card, there's little point not passing the mmc_card structure into the decode functions themselves. This will be necessary, since there's several different formats of CID decode, and the format appears to depend on data in the CSD. If we are unable to decode the CID or CSD, we can mark the card bad and refuse to bind it to any drivers. Users can then retrieve the raw undecoded CID and CSD from sysfs for debugging purposes.
2004-09-18[MMC] Save MMC card raw CSD structure.Russell King
2004-09-18[MMC] Use raw CID rather than decoded CIDRussell King
Save the raw CID information, and use this to match cards with their corresponding mmc_card structure. Different protocol revisions have different CID formats.
2004-09-06[MMC] MMC_RSP_xxx combined response types.Russell King
Create a set of MMC_RSP_xxx definitions which correspond to the response type we expect at a high level. These are created from a set of flags; a MMC host driver can either interpret the flags as the high level response type, or the low level individual flags.
2004-08-30[MMC] Add host specific block queue parametersRussell King
Allow MMC host drivers to specify their data phase capabilities to the block queue. This will eventually allow us to perform SG data phase operations, thereby processing a single request in one go.
2004-08-30[MMC] Remove unused host->privRussell King
2004-07-08[MMC] Use a consistent naming to refer to mmc_request,Russell King
mmc_blk_request and request structures to avoid confusion.
2004-05-06[MMC] Add MMC core supportRussell King
This patch adds core support to the Linux kernel for driving MMC interfaces found on embedded devices, such as found in the Intel PXA and ARM MMCI primecell. This patch does _not_ add support for SD or SDIO cards. It is vaguely based upon the handhelds.org MMC code, but the bulk of the core has been rewritten from scratch.