public:
virtual IOReturn commitAGPMemory( IOMemoryDescriptor * memory, IOByteCount agpOffset, IOOptionBits options = 0 );
Makes the memory described by the IOMemoryDescriptor object addressable by AGP by entering its pages into the GART array, given an offset into AGP space supplied by the caller (usually allocated by the AGP range allocator). It is the callers responsibility to prepare non-kernel pageable memory before calling this method, with IOMemoryDescriptor::prepare.
Result: An IOReturn code indicating success or failure.
Name Description memory A IOMemoryDescriptor object describing the memory to add to the GART. agpOffset An offset into AGP space that the caller has allocated - usually allocated by the AGP range allocator. options None currently defined - pass zero.
public:
virtual IOReturn createAGPSpace( IOOptionBits options, IOPhysicalAddress * address, IOPhysicalLength * length );
This method should be called by the driver for the AGP master device to set the size of the space and enable AGP transactions. It will destroy any AGP space currently allocated.
Result: An IOReturn code indicating success or failure.
Name Description options No options are currently defined, pass zero. address The physical range allocated for the AGP space is passed back to the caller. length An in/out parameter - the caller sets the devices maximum AGP addressing and the actual size created is passed back.
public:
virtual IOReturn destroyAGPSpace( void );
This method should be called by the driver to shutdown AGP transactions and release resources.
public:
virtual IORangeAllocator * getAGPRangeAllocator( void );
To allocate ranges in AGP space, obtain a range allocator for the space with this method. It is retained while the space is created (until destroyAGPSpace is called) and should not be released by the caller.
Result: A pointer to the range allocator for the AGP space.public:
virtual IOOptionBits getAGPStatus( IOOptionBits which = kIOAGPDefaultStatus );
Returns state bits for the AGP bus. Only one type of status is currently defined.
Result: Mask of status bits for the AGP bus.
Name Description which Type of status - only kIOAGPDefaultStatus is currently valid.
public:
virtual IOReturn releaseAGPMemory( IOMemoryDescriptor * memory, IOByteCount agpOffset );
Makes the memory described by the IOMemoryDescriptor object unaddressable by AGP by removing its pages from the GART array, given an offset into AGP space supplied by the caller (usually allocated by the AGP range allocator). It is the callers responsibility to complete non-kernel pageable memory before calling this method, with IOMemoryDescriptor::complete.
Result: An IOReturn code indicating success or failure.
Name Description memory A IOMemoryDescriptor object describing the memory to remove from the GART. agpOffset An offset into AGP space that the caller has allocated - usually allocated by the AGP range allocator.
© 2000 Apple Computer, Inc. (Last Updated 2/23/2000)