Sun Java Solaris Communities My SDN Account Join SDN
 
Documentation

Solaris (Intel Platform Edition) - Device Driver Writer's Orientation

 

Page 48 of 66


DMA Services (cont)

DMA Break-up:
  • On x86 based systems, DMA addresses are physical addresses
  • An object may span multiple non-contiguous pages in physical memory
  • Such an object cannot be represented by a single DMA cookie
  • Such an object must be broken into multiple pieces, each represented by a separate DMA cookie
  • A DMA "attribute structure" associated with the handle is used to determine the capabilities of the DMA device, to determine how the object must be broken up
  • The attribute structure is also for DMA devices that may not be able to access all of physical memory
  • If system or device resources are insufficient to allow DMA access to the entire object at one time, the system will break the object up into multiple "DMA windows," each of which is represented by one or more DMA cookies

FIRST   PREVIOUS    NEXT   LAST   CONTENTS


Return to White Papers