/*
- * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 1998-2016 Apple Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
kIOMemoryPhysicallyContiguous = 0x00000010,
kIOMemoryPageable = 0x00000020,
kIOMemoryPurgeable = 0x00000040,
+ kIOMemoryHostPhysicallyContiguous = 0x00000080,
kIOMemorySharingTypeMask = 0x000f0000,
kIOMemoryUnshared = 0x00000000,
kIOMemoryKernelUserShared = 0x00010000,
#endif
| kIOMemoryThreadSafe
| kIOMemoryClearEncrypt
+ | kIOMemoryMapperNone
+ | kIOMemoryUseReserve
};
-#define _IOBUFFERMEMORYDESCRIPTOR_INTASKWITHOPTIONS_ 1
+#define _IOBUFFERMEMORYDESCRIPTOR_INTASKWITHOPTIONS_ 1
+#define _IOBUFFERMEMORYDESCRIPTOR_HOSTPHYSICALLYCONTIGUOUS_ 1
/*!
@class IOBufferMemoryDescriptor
@abstract Provides a simple memory descriptor that allocates its own buffer memory.
OSMetaClassDeclareReservedUnused(IOBufferMemoryDescriptor, 15);
protected:
- virtual void free();
+ virtual void free() APPLE_KEXT_OVERRIDE;
public:
kIOMapCopybackCache - allocate memory with copyback cache setting. <br>
kIOMapWriteCombineCache - allocate memory with writecombined cache setting.
@param capacity The number of bytes to allocate.
- @param mask The buffer will be allocated with pages such that physical addresses will only have bits set present in physicalMask. For example, pass 0x00000000FFFFFFFFULL for a buffer to be accessed by hardware that has 32 address bits.
+ @param physicalMask The buffer will be allocated with pages such that physical addresses will only have bits set present in physicalMask. For example, pass 0x00000000FFFFFFFFULL for a buffer to be accessed by hardware that has 32 address bits.
@result Returns an instance of class IOBufferMemoryDescriptor to be released by the caller, which will free the memory desriptor and associated buffer. */
static IOBufferMemoryDescriptor * inTaskWithPhysicalMask(
#ifndef __LP64__
virtual void * getVirtualSegment(IOByteCount offset,
- IOByteCount * length) APPLE_KEXT_DEPRECATED; /* use getBytesNoCopy() instead */
+ IOByteCount * length) APPLE_KEXT_OVERRIDE APPLE_KEXT_DEPRECATED; /* use getBytesNoCopy() instead */
#endif /* !__LP64__ */
};