41 * @abstract An IOMemoryDescriptor used for device physical memory ranges.
42 * @discussion The IODeviceMemory class is a simple subclass of IOMemoryDescriptor that uses its methods to describe a single range of physical memory on a device. IODeviceMemory objects are usually looked up with IOService or IOPCIDevice accessors, and are created by memory-mapped bus families. IODeviceMemory implements only some factory methods in addition to the methods of IOMemoryDescriptor.
63 * @abstract Constructs an OSArray of IODeviceMemory instances, each describing one physical range, and a tag value.
64 * @discussion This method creates IODeviceMemory instances for each physical range passed in an IODeviceMemory::InitElement array. Each element consists of a physical address, length and tag value for the IODeviceMemory. The instances are returned as a created OSArray.
65 * @param list An array of IODeviceMemory::InitElement structures.
66 * @param count The number of elements in the list.
67 * @result Returns a created OSArray of IODeviceMemory objects, to be released by the caller, or zero on failure. */
74 * @abstract Constructs an IODeviceMemory instance, describing one physical range.
75 * @discussion This method creates an IODeviceMemory instance for one physical range passed as a physical address and length. It just calls IOMemoryDescriptor::withPhysicalAddress.
76 * @param start The physical address of the first byte in the memory.
85 * @abstract Constructs an IODeviceMemory instance, describing a subset of an existing IODeviceMemory range.
86 * @discussion This method creates an IODeviceMemory instance for a subset of an existing IODeviceMemory range, passed as a physical address offset and length. It just calls IOMemoryDescriptor::withSubRange.
87 * @param of The parent IODeviceMemory of which a subrange is to be used for the new descriptor, which will be retained by the subrange IODeviceMemory.
88 * @param offset A byte offset into the parent's memory.