Share via


SD_BUS_REQUEST (Compact 2013)

3/26/2014

This structure contains information used to identify a bus request. This information is used to cancel or track a bus request.

Syntax

typedef struct _SD_BUS_REQUEST {
  LIST_ENTRY ListEntry;
  SD_DEVICE_HANDLE hDevice;
  ULONG SystemFlags;
  SD_TRANSFER_CLASS TransferClass;
  UCHAR CommandCode;
  DWORD CommandArgument;
  SD_COMMAND_RESPONSE CommandResponse;
  DWORD RequestParam;
  SD_API_STATUS Status;
  ULONG NumBlocks;
  ULONG BlockSize;
  ULONG HCParam;
  PUCHAR pBlockBuffer;
  PSD_BUS_REQUEST_CALLBACK pCallback;
  DWORD DataAccessClocks;
  DWORD Flags;
  DWORD cbSizeOfPhysList;
  PPHYS_BUFF_LIST pPhysBuffList;
} SD_BUS_REQUEST, *PSD_BUS_REQUEST;

Members

  • ListEntry
    List entry value.
  • hDevice
    Device that the request belongs to.
  • SystemFlags
    System flags value.
  • TransferClass
    Transfer class.
  • CommandCode
    Command code.
  • CommandArgument
    Command argument.
  • CommandResponse
    Command response.
  • RequestParam
    Optional. Request parameter.
  • Status
    Completion status.
  • NumBlocks
    Number of blocks.
  • BlockSize
    Size of each block, in bytes.
  • HCParam
    Host controller parameter. Reserved for host controller devices.
  • pBlockBuffer
    Buffer that holds block data.
  • pCallback
    Callback when the request completes.
  • DataAccessClocks
    Data access clocks for data transfers. Reserved for host controller drivers. For a read operation, this value is the typical clock delay for the first read data byte. For a write operation, this value is the typical clock delay for the write operation to finish.
  • Flags
    Bus request flags. The following table shows the possible values for Flags.

    Value

    Description

    SD_AUTO_ISSUE_CMD12

    Informs the bus driver to issue the CMD12 SD command to stop transmission after the bus request completes. This flag should only be used in conjunction to a CMD18 or CMD25 bus request, which requires a CMD12 to instruct the card to stop transmission. The client driver should not use this option on any other command type.

    SD_SDIO_AUTO_IO_ABORT

    Informs the bus driver to perform the abort I/O procedure, using CMD52, for the I/O function receiving the request. The abort procedure is used in conjunction with CMD53 when the number of blocks in the command argument is set to zero. This value in the command argument instructs the I/O function to transmit or receive data until an I/O abort is issued. The client driver should not use this option on any other command type.

    SD_BUS_REQUEST_PHYS_BUFFER

    Informs the bus driver that a request using DMA has been issued. If this flag is not set then cbSizeOfPhysList and pPhysBuffList will be ignored.

  • cbSizeOfPhysList
    Size, in bytes, of the PHYS_BUFF_LIST structure. This parameter is only valid when SD_BUS_REQUEST_PHYS_BUFFER is set in Flags.
  • pPhysBuffList
    Pointer to a PHYS_BUFF_LIST structure. This parameter is only valid when SD_BUS_REQUEST_PHYS_BUFFER is set in Flags.

Requirements

Header

sdcardddk.h

See Also

Reference

Secure Digital (SD) Card Driver Structures