EasyManuals Logo

Cypress EZ-USB FX3 User Manual

Cypress EZ-USB FX3
660 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #218 background imageLoading...
Page #218 background image
EZ-USB FX3 Technical Reference Manual, Document Number: 001-76074 Rev. *F 218
Storage Ports
CyU3PDmaChannelReset (&glChHandleSdiotoCpu);
return status;
}
status = CyU3PSdioExtendedReadWrite (0, 1 /*functionNumber*/, 0 /*isWrite*/,
1 /*blockMode*/, 0 /* opCode */, 00 /*registerAddr*/, (size/512)
/*transferCount*/, glChHandleSdiotoCpu.prodSckId /*sckId*/);
if (status != CY_U3P_SUCCESS)
{
ERROR_PRINT (6, "CyU3PSdioExtendedReadWrite error status = %d\r\n", status);
CyU3PSibAbortRequest(0);
return status;
}
9.5.3.4 Setting Function Block Size
The function CyU3PSdioSetBlockSize sets the block size for a function. The block size set should be lower than the
maximum block size value read from the CISTPL_FUNCE CIS tuple for the function. The value set to the card using this API
is saved in the driver and is used as the transfer block size in case of extended transfers.
DEBUG_PRINT (8, "setting Func %d block size to 512 \r\n", funcNo);
status = CyU3PSdioSetBlockSize (portId, funcNo, 0x200);
if (status != CY_U3P_SUCCESS)
{
ERROR_PRINT (8, "failed to set block size %d \r\n", status);
return status;
}
9.5.3.5 Initialization and Operation of SDIO Functions
The SDIO function initialization and application specific functionality or I/O-only card-specific functionalities can be
implemented using the CyU3PSdioByteReadWrite and CyU3PSdioExtendedReadWrite APIs in the application firmware.
9.5.3.6 SDIO Interrupts
To allow the SDIO card to interrupt the host, an interrupt function is added to a pin on the SD interface. Pin number 8, which
is used as DAT[1], is used to signal the card's interrupt to the host. The use of the interrupt is optional for each card or function
within a card. The SDIO interrupt is "level sensitive," that is, the interrupt line is held active (low) until it is either recognized
and acted upon by the host or deasserted due to the end of the interrupt period. Once the host has serviced the interrupt, it is
cleared via some function-unique I/O operation.
The 1-bit SD mode, pin 8 is dedicated to the interrupt function. Thus, in the SPI and SD 1-bit modes, there are no timing
constraints on interrupts. A card in the SPI or 1-bit SD mode signals an interrupt to the host at any time by asserting pin 8 low.
Since pin 8 is shared between the IRQ and DAT[1] in the 4-bit SD mode, an interrupt is sent by the card and recognized by
the host only during a specific time. The time that a low on pin 8 is recognized as an interrupt is defined as the interrupt
period. An SDIO host samples the level on pin 8 (DAT[1]/IRQ) into the interrupt detector only during the interrupt period. At all
other times, the host interrupt controller ignores the level on pin 8.
The interrupt period begins after a function is initialized (IOEx), the card is placed into 4-bit SD mode, and interrupts are
enabled (IENM and IENx). A card, depending on design, may require a longer time until it is able to issue interrupts.
The interrupt period ends at the next clock from the end bit of a command that transfers data block(s) using DAT[x] lines. It
resumes two clocks after the completion of the last data block transfer in a transaction.

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Cypress EZ-USB FX3 and is the answer not in the manual?

Cypress EZ-USB FX3 Specifications

General IconGeneral
BrandCypress
ModelEZ-USB FX3
CategoryController
LanguageEnglish

Related product manuals