Lines Matching refs:SegmentFunction
44 A driver is expected to create a memory cursor and configure it to the limitations of its DMA hardware; for instance the memory cursor used by the FireWire SBP-2 protocol has a maximum physical segment size of 2^16 - 1 but the actual transfer size is unlimited. Thus it would create a cursor with a maxSegmentSize of 65535 and a maxTransfer size of UINT_MAX. It would also provide a SegmentFunction that can output a pagelist entry.
46 Below is the simplest example of a SegmentFunction:<br>
76 @typedef SegmentFunction
82 typedef void (*SegmentFunction)(PhysicalSegment segment,
87 @discussion Backward compatibility define for the old non-class scoped type definition. See IOMemoryCursor::SegmentFunction */
88 #define OutputSegmentFunc IOMemoryCursor::SegmentFunction
92 SegmentFunction outSeg;
109 @param outSegFunc SegmentFunction to call to output one physical segment.
116 withSpecification(SegmentFunction outSegFunc,
123 @param outSegFunc SegmentFunction to call to output one physical segment.
130 virtual bool initWithSpecification(SegmentFunction outSegFunc,
140 @param segments Void pointer to base of output physical scatter/gather list. Always passed directly onto the SegmentFunction without interpretation by the cursor.
161 @discussion The IONaturalMemoryCursor would be used when it is too difficult to safely describe a SegmentFunction that is more appropriate for your hardware. This cursor just outputs an array of PhysicalSegments.