SDI Technologies SDIO Card manual Embedded I/O Code Storage Area CSA, CSA Access, CSA Data Format

Page 48

©Copyright 2000-2007 SD Card Association

SDIO Simplified Specification Version 2.00

7.Embedded I/O Code Storage Area (CSA)

In order to support the concept of “Plug-and-Play” for SDIO cards, each function contained in a card may need to contain a block of memory for the storage of drivers and/or applications. In addition, since the same SDIO card may be used on multiple different host platforms, several different versions of the code may be needed for each function. One option is to store these programs in a standard SD Memory section of a combo card. Alternately, a standard access means to load the code is contained in the optional Code Storage Area (CSA). The CSA is a separate 16MB memory area that is accessed using the CSA address pointer and the CSA window register contained in the FBR registers. Note that each function may have it’s own CSA to support it. The CSA data can be read only or R/W. The actual storage method for the CSA is not a part of this specification and left to the implementers.

7.1CSA Access

In order for the host to access a function’s CSA, it first shall determine if that function supports a CSA. The host reads the FBR register at address 0x00n00 where n is the function number (0x1 to 0x7). If bit 6=1, then the function supports a CSA and the host enables access by writing bit 7=1. The next step is for the host to load the 24 bit address to start reading or writing. This is accomplished by writing the 24 bits (A23-0) to registers 0x00n0C to 0x00n0E where n is the function number (0x1 to 0x7). Once the start address is written, data can be read or written by accessing register 0x00n0F, the CSA data window register. If more than 1 byte needs to be read or written, an extended I/O command (byte or block) can be performed with an OP code of 0 (fixed address). The address pointer shall be automatically incremented with each access to the window register, so the access will be to sequential addresses within the CSA. Once the operation is complete, the address of the NEXT operation shall be held in the 24 bit address register for the host to read.

7.2CSA Data Format

The data stored in the CSA shall be structured using the FAT12/FAT16 format. This format is defined in the ISO specification: ISO/IEC9293:1994 Information technology - Volume and file structure of disk cartridges for information interchange. This specification is also the basis for the SD memory cards. The information on the SD memory implementation can be found in the SDA publication: Part 2 FILE SYSTEM SPECIFICATION Version 2.00 May 9, 2006. The actual layout of files within the CSA is undefined by this specification.

The use of the CSA for program or data storage for different host types requires that the SDIO card manufacturer load the programs and data in a file format that may be recognized by the host. An example of this would be the use of a specific file name saved within a specific subdirectory that is recognized and executed by a particular host operating system. Such formats are specific and sometimes proprietary to different host implementations and operating systems.

The rest of this chapter is not included in the Simplified Specification.

39

Image 48
Contents SD Specifications Part E1 Sdio Simplified Specification Sdio Simplified Specification Version Changes compared to previous issueDate Version Release of SD Simplified Specification Conventions Used in This Document Table of Contents SPI and SD 1-bit Mode Interrupts 16.2 Table of Tables Table of Figures Sdio Features General DescriptionPrimary Reference Document Standard Sdio FunctionsSdio Signaling Definition Sdio Card TypesSdio Card modes Sdio Host ModesSignal Pins Signal connection to two 4-bit Sdio cardsReset Sdio Card InitializationDifferences in I/O card Initialization Sdio Simplified Specification Version MEM=0 Card initialization flow in SD mode Sdio aware host Illegal Command F8=0 Card initialization flow in SPI mode Sdio aware host Iosendopcond Command CMD5 VDD Voltage Window PositionOCR Values for CMD5 OCR bitResponse R4 in SD mode Iosendopcond Response R4Acceptable Commands after Initialization Recommendations for RCA after ResetSpecial Initialization considerations for Combo Cards Re-initialize both I/O and MemoryRe-Initialization Flow for I/O Controller Re-Initialization Flow for Memory controllerEnabling CRC in SPI Combo Card Differences with SD Memory Specification Sdio Command ListUnsupported SD Memory Commands Reset for Sdio Modified R6 ResponseBus Width Card Detect Resistor TimingsCombo Card 4-bit Control Card Detect Resistor StatesData Transfer Block Sizes Data Transfer AbortChanges to SD Memory Fixed Registers Read AbortOCR Register CID RegisterCSD Register RCA RegisterSdio Status Register Structure ClearBit Identifier Type Value Description New I/O Read/Write Commands Iorwdirect Command CMD52Comcrcerror IllegalcommandIorwdirect Response R5 1 CMD52 Response SD modesDIS=Disabled Identifier Type Value Description Clear ConditionCMD=DAT lines free TRN=TransferIorwextended Command CMD53 Iorw Extended command Op Code DefinitionOP code Command operation CRCByte Count Values 1 CMD53 Data Transfer FormatRegister Access Time Sdio Card Internal OperationOverview InterruptsSuspend/Resume Read WaitCMD52 During Data Transfer Sdio Fixed Internal MapCommon I/O Area CIA Card Common Control Registers CccrCard Common Control Registers Cccr TypeCCCR/SDIO IOE3To abort transfers to/from memory Scsi 4BLS Transaction of function 0 CIA Cccr bit Definitions EmpcFunction Basic Registers FBR AddressFunction Basic Information Registers FBR Field TypeSdio Simplified Specification Version Field Type FBR bit and field definitionsSetting Block Size with CMD53 Card Information Structure CISMultiple Function Sdio Cards Card Information Structure CIS and reserved area of CIABus State Diagram State Diagram for Bus State MachineCSA Access Embedded I/O Code Storage Area CSACSA Data Format Sdio Interrupts Interrupt TimingTerminated Data Transfer Interrupt Cycle Interrupt Clear TimingSdio Suspend/Resume Operation Sdio Read Wait Operation Power Control Power Control OverviewPower Control support for Sdio Cards Master Power ControlPower Control Support for the Sdio Host Power SelectionHigh-Power Tuples Reference Tuples by Master Power Control and Power SelectPower Control Operation High-Speed Mode Sdio High-Speed ModeSwitching Bus Speed Mode in a Combo Card Sdio Power Sdio Physical PropertiesSdio Simplified Specification Version Inrush Current Limiting CIS Formats CIS Reference DocumentBasic Tuple Format and Tuple Chain Structure Byte Order Within TuplesTuple Version Sdio Card MetaformatTuples Supported by Sdio Cards Code Name DescriptionCistplmanfid Manufacturer Identification String Tuple Sdio Specific ExtensionsCistplmanfid Manufacturer Identification Tuple Cistplfuncid Function Identification TupleCistplfunce Function Extension Tuple Cistplfunce Tuple General StructureCistplfunce Tuple for Function 0 common Tplfidfunction Tuple for Function 0 commonCistplfunce Tuple for Function Tplfidfunction Tuple for FunctionByte Sdio Simplified Specification Version Tplfidfunction Field Descriptions for Functions 10 Tplfefunctioninfo Definition11 Tplfecsaproperty Definition Bit NameCistplsdiostd Function is a Standard Sdio Function 12 Cistplsdiostd Tuple Reserved for Sdio CardsCistplsdioext Tuple Reserved for Sdio Cards 13 Cistplsdioext Tuple Reserved for Sdio CardsSD and SPI Command List Table A-14 SD Mode Command ListNormative Table A-15 SPI Mode Command List Sdmem SdioAppendix B Normative ReferencesAppendix C Abbreviations and TermsLOW, High Informative