ADC Home > Reference Library > Reference > Hardware & Drivers > I/O Kit Framework Reference

 


IOKitLib.h

Include Path:

<IOKit/IOKitLib.h>

Path:

/System/Library/Frameworks/IOKit.framework/Versions/A/Headers/IOKitLib.h

Includes:
<sys/cdefs.h>
<sys/types.h>
<mach/mach_types.h>
<mach/mach_init.h>
<CoreFoundation/CFBase.h>
<CoreFoundation/CFDictionary.h>
<CoreFoundation/CFRunLoop.h>
<IOKit/IOTypes.h>
<IOKit/IOKitKeys.h>
<IOKit/OSMessageNotification.h>
<AvailabilityMacros.h>

Overview

IOKitLib implements non-kernel task access to common I/O Kit objects - IORegistryEntry, IOService, IOIterator etc. These functions are generic - families may provide API that is more specific.

IOKitLib represents I/O Kit objects outside the kernel with the types io_object_t, io_registry_entry_t, io_service_t, and io_connect_t.

Function names usually begin with the type of object they are compatible with, e.g. IOObjectRelease can be used with any io_object_t.

Inside the kernel, the C++ class hierarchy allows the subclasses of each object type to receive the same requests from user level clients. For example, in the kernel, IOService is a subclass of IORegistryEntry, which means any of the IORegistryEntryXXX functions in IOKitLib may be passed a variable of either type io_service_t or type io_registry_t.

There are functions available to introspect the class of the kernel object which any io_object_t et al. represents. I/O Kit objects returned by all functions should be released with IOObjectRelease.



Functions

#(io_connect_t, uint32_t, task_port_t, mach_vm_address_t *, mach_vm_size_t *, IOOptionBits)

Maps hardware or shared memory into the caller's task.

#(io_connect_t, uint32_t, task_port_t, mach_vm_address_t)

Removes a mapping made with IOConnectMapMemory.

CFStringRef IOObjectCopyBundleIdentifierForClass

Returns the bundle identifier of the given class.

CFStringRef IOObjectCopyClass

Returns the class name of an I/O Kit object.

CFStringRef IOObjectCopySuperclassForClass

Returns the superclass name of the given class.

io_async_method_scalarI_scalarO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_async_method_scalarI_structureI

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_async_method_scalarI_structureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_async_method_structureI_structureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_map_memory

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_method_scalarI_scalarO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_method_scalarI_structureI

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_method_scalarI_structureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_method_structureI_structureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

io_connect_unmap_memory

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOBSDNameMatching

Creates a matching dictionary that specifies an IOService match based on BSD device name.

IOCatalogueGetData

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOCatalogueModuleLoaded

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOCatalogueReset

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOCatalogueSendData

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOCatalogueTerminate

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOCompatibiltyNumber

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectAddClient

Informs a connection of a second connection.

IOConnectAddRef

Adds a reference to the connect handle.

IOConnectCallAsyncMethod

Sets a CF container-based property on a connection.

IOConnectCallAsyncScalarMethod

Sets a CF container-based property on a connection.

IOConnectCallAsyncStructMethod

Sets a CF container-based property on a connection.

IOConnectCallMethod

Sets a CF container-based property on a connection.

IOConnectCallScalarMethod

Sets a CF container-based property on a connection.

IOConnectCallStructMethod

Sets a CF container-based property on a connection.

IOConnectGetService

Returns the IOService object a connect handle was opened on.

IOConnectMapMemory

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount *, ...)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount *, void *, void *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount, ...)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOItemCount, ...)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t *, vm_size_t *, IOOptionBits)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t *, vm_size_t *, uint32_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(io_enumerator_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_msg_header_t *, uint32_t, uint32_t *, uintptr_t *, void **, vm_size_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_scalar_inband_t, mach_msg_type_number_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, int, io_struct_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, io_name_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_scalar_inband_t, mach_msg_type_number_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, uint32_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, uint32_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, uint32_t, char **, uint32_t *)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, uint32_t, const char *, uint32_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMapMemory(mach_port_t, uint32_t, io_name_t)

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMethodScalarIScalarO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMethodScalarIStructureI

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMethodScalarIStructureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectMethodStructureIStructureO

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOConnectRelease

Removes a reference to the connect handle.

IOConnectSetCFProperties

Sets CF container-based properties on a connection.

IOConnectSetCFProperty

Sets a CF container-based property on a connection.

IOConnectSetNotificationPort

Sets a port to receive family specific notifications.

IOConnectTrap0

Sets a CF container-based property on a connection.

IOConnectTrap1

Sets a CF container-based property on a connection.

IOConnectTrap2

Sets a CF container-based property on a connection.

IOConnectTrap3

Sets a CF container-based property on a connection.

IOConnectTrap4

Sets a CF container-based property on a connection.

IOConnectTrap5

Sets a CF container-based property on a connection.

IOConnectTrap6

Sets a CF container-based property on a connection.

IOConnectUnmapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t)

Removes a mapping made with IOConnectMapMemory.

IOCreateReceivePort

Creates and returns a Mach port suitable for receiving I/O Kit messages of the specified type.

IODispatchCalloutFromMessage

Dispatches callback notifications from a Mach message.

IOIteratorIsValid

Checks an iterator is still valid.

IOIteratorNext

Returns the next object in an iteration.

IOIteratorReset

Resets an iteration back to the beginning.

IOKitGetBusyState

Returns the busyState of all IOService objects.

IOKitWaitQuiet

Waits for the busyState of all IOService objects to be zero.

IOMapMemory

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOMasterPort

Returns the Mach port used to initiate communication with the I/O Kit.

IONotificationPortCreate

Creates and returns a notification object for receiving I/O Kit notifications of new devices or state changes.

IONotificationPortDestroy

Destroys a notification object created with IONotificationPortCreate.

IONotificationPortGetMachPort

Returns a Mach port to be used to listen for notifications.

IONotificationPortGetRunLoopSource

Returns a CFRunLoopSource to be used to listen for notifications.

IOObjectConformsTo

Performs an OSDynamicCast operation on an I/O Kit object.

IOObjectCopyBundleIdentifierForClass IOObjectCopyBundleIdentifierForClass

Returns the bundle identifier of the given class.

IOObjectCopyClass IOObjectCopyClass

Returns the class name of an I/O Kit object.

IOObjectCopySuperclassForClass IOObjectCopySuperclassForClass

Returns the superclass name of the given class.

IOObjectGetClass

Returns the class name of an I/O Kit object.

IOObjectGetRetainCount

Returns kernel retain count of an I/O Kit object.

IOObjectIsEqualTo

Checks two object handles to see if they represent the same kernel object.

IOObjectRelease

Releases an object handle previously returned by IOKitLib.

IOObjectRetain

Retains an object handle previously returned by IOKitLib.

IOOpenFirmwarePathMatching

Creates a matching dictionary that specifies an IOService match based on an OpenFirmware device path.

IORegistryCreateIterator

Creates an iterator rooted at the I/O Registry root.

IORegistryDisposeEnumerator

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IORegistryEntryCreateCFProperties

Creates a CFDictionary representation of a registry entry's property table.

IORegistryEntryCreateCFProperty

Creates a CF representation of a registry entry's property.

IORegistryEntryCreateIterator

Creates an iterator rooted at a given registry entry.

IORegistryEntryFromPath

Looks up a registry entry by path.

IORegistryEntryGetChildEntry

Returns the first child of a registry entry in a plane.

IORegistryEntryGetChildIterator

Returns an iterator over a registry entry's child entries in a plane.

IORegistryEntryGetLocationInPlane

Returns a C string location assigned to a registry entry, in a specified plane.

IORegistryEntryGetName

Returns a C string name assigned to a registry entry.

IORegistryEntryGetNameInPlane

Returns a C string name assigned to a registry entry, in a specified plane.

IORegistryEntryGetParentEntry

Returns the first parent of a registry entry in a plane.

IORegistryEntryGetParentIterator

Returns an iterator over a registry entry's parent entries in a plane.

IORegistryEntryGetPath

Creates a path for a registry entry.

IORegistryEntryGetProperty

Creates a CF representation of a registry entry's property.

IORegistryEntryInPlane

Determines if the registry entry is attached in a plane.

IORegistryEntrySearchCFProperty

Creates a CF representation of a registry entry's property.

IORegistryEntrySetCFProperties

Sets CF container-based properties in a registry entry.

IORegistryEntrySetCFProperty

Sets a CF container-based property in a registry entry.

IORegistryGetRootEntry

Returns a handle to the I/O Registry root.

IORegistryIteratorEnterEntry

Recurses into the current entry in the registry iteration.

IORegistryIteratorExitEntry

Exits a level of recursion, restoring the current entry.

IOServiceAddInterestNotification

Register for notification of state changes in an IOService object.

IOServiceAddMatchingNotification

Looks up registered IOService objects that match a matching dictionary, and install a notification request of new IOService objects that match.

IOServiceClose

Closes a connection to an IOService object and destroys the connect handle.

IOServiceGetBusyState

Returns the busyState of an IOService object.

IOServiceGetMatchingService

Look up a registered IOService object that matches a matching dictionary.

IOServiceGetMatchingServices

Look up registered IOService objects that match a matching dictionary.

IOServiceMatching

Creates a matching dictionary that specifies an IOService class match.

IOServiceMatchPropertyTable

Match an IOService objects with matching dictionary.

IOServiceNameMatching

Creates a matching dictionary that specifies an IOService name match.

IOServiceOFPathToBSDName

Looks up an IOService from its OpenFirmware device path and returns its BSD device name, if available.

IOServiceOFPathToBSDName IOAsyncCallback()

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

IOServiceOpen

Requests the creation of a connection to an IOService object.

IOServiceRequestProbe

Requests a rescan of a bus for device changes.

IOServiceWaitQuiet

Waits for an IOService object's busyState to be zero.

OSGetNotificationFromMessage

Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.


#(io_connect_t, uint32_t, task_port_t, mach_vm_address_t *, mach_vm_size_t *, IOOptionBits)


Maps hardware or shared memory into the caller's task.

See Also:

IOConnectMapMemory

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMapMemory64  #else 
kern_return_t IOConnectMapMemory  #endif  
(
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    mach_vm_address_t *atAddress, 
    mach_vm_size_t *ofSize, 
    IOOptionBits options );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to create a mapping in the caller's task. The family will interpret the memoryType parameter to determine what sort of mapping is being requested. Cache modes and placed mappings may be requested by the caller.


#(io_connect_t, uint32_t, task_port_t, mach_vm_address_t)


Removes a mapping made with IOConnectMapMemory.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectUnmapMemory64  #else 
kern_return_t IOConnectUnmapMemory  #endif  
(
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    mach_vm_address_t atAddress );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to remove a mapping in the caller's task.


CFStringRef IOObjectCopyBundleIdentifierForClass


Returns the bundle identifier of the given class.

CFStringRef IOObjectCopyBundleIdentifierForClass(
    CFStringRef classname);  
Parameters
classname

The name of the class as a CFString.

Return Value

The resulting CFStringRef. This should be released by the caller. If a valid class name is not passed in, then NULL is returned.

Discussion

This function uses the OSMetaClass system in the kernel to derive the name of the kmod, which is the same as the bundle identifier.


CFStringRef IOObjectCopyClass


Returns the class name of an I/O Kit object.

CFStringRef IOObjectCopyClass(
    io_object_t object) ;  
Parameters
object

The I/O Kit object.

Return Value

The resulting CFStringRef. This should be released by the caller. If a valid object is not passed in, then NULL is returned.

Discussion

This function does the same thing as IOObjectGetClass, but returns the result as a CFStringRef.

Availability
Introduced in Mac OS X v10.4.

CFStringRef IOObjectCopySuperclassForClass


Returns the superclass name of the given class.

CFStringRef IOObjectCopySuperclassForClass(
    CFStringRef classname);  
Parameters
classname

The name of the class as a CFString.

Return Value

The resulting CFStringRef. This should be released by the caller. If there is no superclass, or a valid class name is not passed in, then NULL is returned.

Discussion

This function uses the OSMetaClass system in the kernel to derive the name of the superclass of the class.


io_async_method_scalarI_scalarO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_scalarO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_async_method_scalarI_structureI


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_structureI( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_async_method_scalarI_structureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_async_method_structureI_structureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

kern_return_t io_async_method_structureI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_map_memory


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 kern_return_t io_connect_map_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    IOOptionBits options) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_method_scalarI_scalarO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_scalarO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_method_scalarI_structureI


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_structureI( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_method_scalarI_structureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_method_structureI_structureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_structureI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


io_connect_unmap_memory


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_unmap_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    vm_address_t atAddress) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOBSDNameMatching


Creates a matching dictionary that specifies an IOService match based on BSD device name.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  CFMutableDictionaryRef IOBSDNameMatching( 
    mach_port_t masterPort, 
    uint32_t options, 
    const char * bsdName );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

Return Value

A kern_return_t error code.

Discussion

IOService objects that represent BSD devices have an associated BSD name. This function creates a matching dictionary that will match IOService objects with a given BSD name.


IOCatalogueGetData


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueGetData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    char **buffer, 
    uint32_t *size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOCatalogueModuleLoaded


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueModuleLoaded( 
    mach_port_t masterPort, 
    io_name_t name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOCatalogueReset


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueReset( 
    mach_port_t masterPort, 
    uint32_t flag );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOCatalogueSendData


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Internal use */
kern_return_t IOCatalogueSendData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    const char *buffer, 
    uint32_t size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOCatalogueTerminate


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueTerminate( 
    mach_port_t masterPort, 
    uint32_t flag, 
    io_name_t description );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOCompatibiltyNumber


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// for CGS  
kern_return_t IOCompatibiltyNumber( 
    mach_port_t connect, 
    uint32_t *objectNumber ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectAddClient


Informs a connection of a second connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
kern_return_t IOConnectAddClient( 
    io_connect_t connect, 
    io_connect_t client );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to inform a family connection of a second connection, and is rarely used.


IOConnectAddRef


Adds a reference to the connect handle.

kern_return_t IOConnectAddRef( 
    io_connect_t connect );  
Parameters
connect

The connect handle created by IOServiceOpen.

Return Value

A kern_return_t error code.


IOConnectCallAsyncMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectCallAsyncMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt, // In/Out 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectCallAsyncScalarMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectCallAsyncScalarMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectCallAsyncStructMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectCallAsyncStructMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectCallMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
// Combined LP64 & ILP32 Extended IOUserClient::externalMethod  
kern_return_t IOConnectCallMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt, // In/Out 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectCallScalarMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectCallScalarMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectCallStructMethod


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectCallStructMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.

Availability
Introduced in Mac OS X v10.5.

IOConnectGetService


Returns the IOService object a connect handle was opened on.

kern_return_t IOConnectGetService( 
    io_connect_t connect, 
    io_service_t *service );  
Parameters
connect

The connect handle created by IOServiceOpen.

service

On success, the service handle the connection was opened on, which should be released with IOObjectRelease.

Return Value

A kern_return_t error code.

Discussion

Finds and returns the service object a connection was opened on.


IOConnectMapMemory


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

io_async_method_structureI_structureO

kern_return_t io_async_method_structureI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount *, ...)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodScalarIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount *structureSize, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount *, void *, void *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodStructureIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount structureInputSize, 
    IOByteCount *structureOutputSize, 
    void *inputStructure, 
    void *ouputStructure );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOByteCount, ...)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodScalarIStructureI( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount structureSize, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMapMemory(io_connect_t, uint32_t, IOItemCount, IOItemCount, ...)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// Traditional IOUserClient transport routines 
kern_return_t IOConnectMethodScalarIScalarO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOItemCount scalarOutputCount, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t *, vm_size_t *, IOOptionBits)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 kern_return_t io_connect_map_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    IOOptionBits options) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t *, vm_size_t *, uint32_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOMapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    uint32_t flags ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_unmap_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    vm_address_t atAddress) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(io_enumerator_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// for MacOS.app  
kern_return_t IORegistryDisposeEnumerator( 
    io_enumerator_t enumerator ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_msg_header_t *, uint32_t, uint32_t *, uintptr_t *, void **, vm_size_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* Internal use */
kern_return_t OSGetNotificationFromMessage( 
    mach_msg_header_t *msg, 
    uint32_t index, 
    uint32_t *type, 
    uintptr_t *reference, 
    void **content, 
    vm_size_t *size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_scalar_inband_t, mach_msg_type_number_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_scalarO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_scalarI_structureI( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, int, io_struct_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_connect_method_structureI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, io_name_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueModuleLoaded( 
    mach_port_t masterPort, 
    io_name_t name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_scalar_inband_t, mach_msg_type_number_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_scalarO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, mach_port_t, io_async_ref_t, mach_msg_type_number_t, int, io_scalar_inband_t, mach_msg_type_number_t, io_struct_inband_t, mach_msg_type_number_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t io_async_method_scalarI_structureI( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, uint32_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// for CGS  
kern_return_t IOCompatibiltyNumber( 
    mach_port_t connect, 
    uint32_t *objectNumber ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, uint32_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueReset( 
    mach_port_t masterPort, 
    uint32_t flag );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, uint32_t, char **, uint32_t *)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueGetData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    char **buffer, 
    uint32_t *size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, uint32_t, const char *, uint32_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Internal use */
kern_return_t IOCatalogueSendData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    const char *buffer, 
    uint32_t size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory(mach_port_t, uint32_t, io_name_t)


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOCatalogueTerminate( 
    mach_port_t masterPort, 
    uint32_t flag, 
    io_name_t description );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMethodScalarIScalarO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// Traditional IOUserClient transport routines 
kern_return_t IOConnectMethodScalarIScalarO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOItemCount scalarOutputCount, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMethodScalarIStructureI


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodScalarIStructureI( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount structureSize, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMethodScalarIStructureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodScalarIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount *structureSize, 
    ... );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectMethodStructureIStructureO


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectMethodStructureIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount structureInputSize, 
    IOByteCount *structureOutputSize, 
    void *inputStructure, 
    void *ouputStructure );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOConnectRelease


Removes a reference to the connect handle.

kern_return_t IOConnectRelease( 
    io_connect_t connect );  
Parameters
connect

The connect handle created by IOServiceOpen.

Return Value

A kern_return_t error code.

Discussion

If the last reference is removed an implicit IOServiceClose is performed.


IOConnectSetCFProperties


Sets CF container-based properties on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IOConnectSetCFProperties( 
    io_connect_t connect, 
    CFTypeRef properties );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF container of properties to the connection. The properties are interpreted by the family and commonly represent configuration settings, but may be interpreted as anything.


IOConnectSetCFProperty


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IOConnectSetCFProperty( 
    io_connect_t connect, 
    CFStringRef propertyName, 
    CFTypeRef property );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectSetNotificationPort


Sets a port to receive family specific notifications.

kern_return_t IOConnectSetNotificationPort( 
    io_connect_t connect, 
    uint32_t type, 
    mach_port_t port, 
    uintptr_t reference );  
Parameters
connect

The connect handle created by IOServiceOpen.

type

The type of notification requested, family defined and not interpreted by the I/O Kit.

port

The port to which to send notifications.

reference

Some families may support passing a reference parameter for the caller's use with the notification.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a Mach port send right to be be used by family specific notifications.


IOConnectTrap0


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
kern_return_t IOConnectTrap0(
    io_connect_t connect, 
    uint32_t index );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap1


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap1(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1 );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap2


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap2(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap3


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap3(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap4


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap4(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap5


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap5(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4, 
    uintptr_t p5);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectTrap6


Sets a CF container-based property on a connection.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectTrap6(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4, 
    uintptr_t p5, 
    uintptr_t p6);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF property to the connection. The property is interpreted by the family and commonly represents configuration settings, but may be interpreted as anything.


IOConnectUnmapMemory(io_connect_t, uint32_t, task_port_t, vm_address_t)


Removes a mapping made with IOConnectMapMemory.

See Also:

IOConnectMapMemory

#

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOConnectUnmapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    vm_address_t atAddress );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to remove a mapping in the caller's task.


IOCreateReceivePort


Creates and returns a Mach port suitable for receiving I/O Kit messages of the specified type.

kern_return_t IOCreateReceivePort(
    uint32_t msgType,
    mach_port_t *recvPort );  
Parameters
msgType

Type of message to be sent to this port (kOSNotificationMessageID or kOSAsyncCompleteMessageID).

recvPort

The created port is returned.

Return Value

A kern_return_t error code.

Discussion

In the future, the I/O Kit may use specialized messages and ports instead of the standard ports created by mach_port_allocate(). Use this function instead of mach_port_allocate() to ensure compatibility with future revisions of the I/O Kit.


IODispatchCalloutFromMessage


Dispatches callback notifications from a Mach message.

void IODispatchCalloutFromMessage( 
    void *unused, 
    mach_msg_header_t *msg, 
    void *reference );  
Parameters
unused

Not used, set to zero.

msg

A pointer to the message received.

reference

Pass the IONotificationPortRef for the object.

Discussion

A notification object may deliver notifications to a Mach messaging client, which should call this function to generate the callbacks associated with the notifications arriving on the port.


IOIteratorIsValid


Checks an iterator is still valid.

boolean_t IOIteratorIsValid( 
    io_iterator_t iterator );  
Parameters
iterator

An I/O Kit iterator handle.

Return Value

True if the iterator handle is valid, otherwise false is returned.

Discussion

Some iterators will be made invalid if changes are made to the structure they are iterating over. This function checks the iterator is still valid and should be called when IOIteratorNext returns zero. An invalid iterator can be reset and the iteration restarted.


IOIteratorNext


Returns the next object in an iteration.

io_object_t IOIteratorNext( 
    io_iterator_t iterator );  
Parameters
iterator

An I/O Kit iterator handle.

Return Value

If the iterator handle is valid, the next element in the iteration is returned, otherwise zero is returned. The element should be released by the caller when it is finished.

Discussion

This function returns the next object in an iteration, or zero if no more remain or the iterator is invalid.


IOIteratorReset


Resets an iteration back to the beginning.

void IOIteratorReset( 
    io_iterator_t iterator );  
Parameters
iterator

An I/O Kit iterator handle.

Discussion

If an iterator is invalid, or if the caller wants to start over, IOIteratorReset will set the iteration back to the beginning.


IOKitGetBusyState


Returns the busyState of all IOService objects.

kern_return_t IOKitGetBusyState( 
    mach_port_t masterPort, 
    uint32_t *busyState );  
Parameters
masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

busyState

The busyState count is returned.

Return Value

A kern_return_t error code.

Discussion

Many activities in IOService are asynchronous. When registration, matching, or termination is in progress on an IOService object, its busyState is increased by one. Change in busyState to or from zero also changes the IOService object's provider's busyState by one, which means that an IOService object is marked busy when any of the above activities is ocurring on it or any of its clients. IOKitGetBusyState returns the busy state of the root of the service plane, which reflects the busy state of all IOService objects.


IOKitWaitQuiet


Waits for the busyState of all IOService objects to be zero.

kern_return_t IOKitWaitQuiet( 
    mach_port_t masterPort, 
    mach_timespec_t *waitTime );  
Parameters
masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

waitTime

Specifies a maximum time to wait.

Return Value

Returns an error code if Mach synchronization primitives fail, kIOReturnTimeout, or kIOReturnSuccess.

Discussion

Blocks the caller until all IOService objects are non busy, see IOKitGetBusyState.


IOMapMemory


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

kern_return_t IOMapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    uint32_t flags ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOMasterPort


Returns the Mach port used to initiate communication with the I/O Kit.

kern_return_t IOMasterPort(
    mach_port_t bootstrapPort, 
    mach_port_t *masterPort );  
Parameters
bootstrapPort

Pass MACH_PORT_NULL for the default.

masterPort

The master port is returned.

Return Value

A kern_return_t error code.

Discussion

Functions that don't specify an existing object require the I/O Kit master port to be passed. This function obtains that port.


IONotificationPortCreate


Creates and returns a notification object for receiving I/O Kit notifications of new devices or state changes.

IONotificationPortRef IONotificationPortCreate( 
    mach_port_t masterPort );  
Parameters
masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

Return Value

A reference to the notification object.

Discussion

Creates the notification object to receive notifications from the I/O Kit of new device arrivals or state changes. The notification object can be supply a CFRunLoopSource, or mach_port_t to be used to listen for events.


IONotificationPortDestroy


Destroys a notification object created with IONotificationPortCreate.

void IONotificationPortDestroy( 
    IONotificationPortRef notify );  
Parameters
notify

A reference to the notification object.


IONotificationPortGetMachPort


Returns a Mach port to be used to listen for notifications.

mach_port_t IONotificationPortGetMachPort( 
    IONotificationPortRef notify );  
Parameters
notify

The notification object.

Return Value

A mach_port_t for the notification object.

Discussion

A notification object may deliver notifications to a Mach messaging client if they listen for messages on the port obtained from this function. Callbacks associated with the notifications may be delivered by calling IODispatchCalloutFromMessage with messages received.


IONotificationPortGetRunLoopSource


Returns a CFRunLoopSource to be used to listen for notifications.

CFRunLoopSourceRef IONotificationPortGetRunLoopSource( 
    IONotificationPortRef notify );  
Parameters
notify

The notification object.

Return Value

A CFRunLoopSourceRef for the notification object.

Discussion

A notification object may deliver notifications to a CFRunLoop client by adding the run loop source returned by this function to the run loop.


IOObjectConformsTo


Performs an OSDynamicCast operation on an I/O Kit object.

boolean_t IOObjectConformsTo( 
    io_object_t object, 
    const io_name_t className );  
Parameters
object

An I/O Kit object.

className

The name of the class, as a C string.

Return Value

If the object handle is valid, and represents an object in the kernel that dynamic casts to the class true is returned, otherwise false.

Discussion

This function uses the OSMetaClass system in the kernel to determine if the object will dynamic cast to a class, specified as a C string (in other words, if the object is of that class or a subclass).


IOObjectCopyBundleIdentifierForClass IOObjectCopyBundleIdentifierForClass


Returns the bundle identifier of the given class.

CFStringRef IOObjectCopyBundleIdentifierForClass(
    CFStringRef classname);  
Parameters
classname

The name of the class as a CFString.

Return Value

The resulting CFStringRef. This should be released by the caller. If a valid class name is not passed in, then NULL is returned.

Discussion

This function uses the OSMetaClass system in the kernel to derive the name of the kmod, which is the same as the bundle identifier.


IOObjectCopyClass IOObjectCopyClass


Returns the class name of an I/O Kit object.

CFStringRef IOObjectCopyClass(
    io_object_t object) ;  
Parameters
object

The I/O Kit object.

Return Value

The resulting CFStringRef. This should be released by the caller. If a valid object is not passed in, then NULL is returned.

Discussion

This function does the same thing as IOObjectGetClass, but returns the result as a CFStringRef.

Availability
Introduced in Mac OS X v10.4.

IOObjectCopySuperclassForClass IOObjectCopySuperclassForClass


Returns the superclass name of the given class.

CFStringRef IOObjectCopySuperclassForClass(
    CFStringRef classname);  
Parameters
classname

The name of the class as a CFString.

Return Value

The resulting CFStringRef. This should be released by the caller. If there is no superclass, or a valid class name is not passed in, then NULL is returned.

Discussion

This function uses the OSMetaClass system in the kernel to derive the name of the superclass of the class.


IOObjectGetClass


Returns the class name of an I/O Kit object.

kern_return_t IOObjectGetClass( 
    io_object_t object, 
    io_name_t className );  
Parameters
object

The I/O Kit object.

className

Caller allocated buffer to receive the name string.

Return Value

A kern_return_t error code.

Discussion

This function uses the OSMetaClass system in the kernel to derive the name of the class the object is an instance of.


IOObjectGetRetainCount


Returns kernel retain count of an I/O Kit object.

uint32_t IOObjectGetRetainCount( 
    io_object_t object );  
Parameters
object

An I/O Kit object.

Return Value

If the object handle is valid, the kernel objects retain count is returned, otherwise zero is returned.

Discussion

This function may be used in diagnostics to determine the current retain count of the kernel object.


IOObjectIsEqualTo


Checks two object handles to see if they represent the same kernel object.

boolean_t IOObjectIsEqualTo( 
    io_object_t object, 
    io_object_t anObject );  
Parameters
object

An I/O Kit object.

anObject

Another I/O Kit object.

Return Value

If both object handles are valid, and represent the same object in the kernel true is returned, otherwise false.

Discussion

If two object handles are returned by IOKitLib functions, this function will compare them to see if they represent the same kernel object.


IOObjectRelease


Releases an object handle previously returned by IOKitLib.

kern_return_t IOObjectRelease( 
    io_object_t object );  
Parameters
object

The I/O Kit object to release.

Return Value

A kern_return_t error code.

Discussion

All objects returned by IOKitLib should be released with this function when access to them is no longer needed. Using the object after it has been released may or may not return an error, depending on how many references the task has to the same object in the kernel.


IOObjectRetain


Retains an object handle previously returned by IOKitLib.

kern_return_t IOObjectRetain( 
    io_object_t object );  
Parameters
object

The I/O Kit object to retain.

Return Value

A kern_return_t error code.

Discussion

Gives the caller an additional reference to an existing object handle previously returned by IOKitLib.


IOOpenFirmwarePathMatching


Creates a matching dictionary that specifies an IOService match based on an OpenFirmware device path.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  CFMutableDictionaryRef IOOpenFirmwarePathMatching( 
    mach_port_t masterPort, 
    uint32_t options, 
    const char * path );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

Return Value

A kern_return_t error code.

Discussion

Certain IOService objects (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function creates a matching dictionary that will match IOService objects found with a given OpenFirmware device path.


IORegistryCreateIterator


Creates an iterator rooted at the I/O Registry root.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryCreateIterator( 
    mach_port_t masterPort, 
    const io_name_t plane, 
    IOOptionBits options, 
    io_iterator_t * iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

Return Value

A kern_return_t error code.

Discussion

This method creates an IORegistryIterator object in the kernel that is set up with options to iterate over the children of the I/O Registry root entry, and to recurse automatically into entries as they are returned, or only when instructed with calls to IORegistryIteratorEnterEntry. The iterator object keeps track of entries that have been recursed into previously to avoid loops.


IORegistryDisposeEnumerator


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// for MacOS.app  
kern_return_t IORegistryDisposeEnumerator( 
    io_enumerator_t enumerator ) DEPRECATED_ATTRIBUTE;  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IORegistryEntryCreateCFProperties


Creates a CFDictionary representation of a registry entry's property table.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryCreateCFProperties( 
    io_registry_entry_t entry, 
    CFMutableDictionaryRef *properties, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

Return Value

A kern_return_t error code.

Discussion

This function creates an instantaneous snapshot of a registry entry's property table, creating a CFDictionary analogue in the caller's task. Not every object available in the kernel is represented as a CF container; currently OSDictionary, OSArray, OSSet, OSSymbol, OSString, OSData, OSNumber, OSBoolean are created as their CF counterparts.


IORegistryEntryCreateCFProperty


Creates a CF representation of a registry entry's property.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  CFTypeRef IORegistryEntryCreateCFProperty( 
    io_registry_entry_t entry, 
    CFStringRef key, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

Return Value

A kern_return_t error code.

Discussion

This function creates an instantaneous snapshot of a registry entry property, creating a CF container analogue in the caller's task. Not every object available in the kernel is represented as a CF container; currently OSDictionary, OSArray, OSSet, OSSymbol, OSString, OSData, OSNumber, OSBoolean are created as their CF counterparts.


IORegistryEntryCreateIterator


Creates an iterator rooted at a given registry entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryCreateIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    IOOptionBits options, 
    io_iterator_t * iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

Return Value

A kern_return_t error code.

Discussion

This method creates an IORegistryIterator object in the kernel that is set up with options to iterate over the children or parents of a root entry, and to recurse automatically into entries as they are returned, or only when instructed with calls to IORegistryIteratorEnterEntry. The iterator object keeps track of entries that have been recursed into previously to avoid loops.


IORegistryEntryFromPath


Looks up a registry entry by path.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  io_registry_entry_t IORegistryEntryFromPath( 
    mach_port_t masterPort, 
    const io_string_t path );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

Return Value

A kern_return_t error code.

Discussion

This function parses paths to look up registry entries. The path should begin with '<plane name>:' If there are characters remaining unparsed after an entry has been looked up, this is considered an invalid lookup. Paths are further documented in IORegistryEntry.h.


IORegistryEntryGetChildEntry


Returns the first child of a registry entry in a plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetChildEntry( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_registry_entry_t * child );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

Return Value

A kern_return_t error code.

Discussion

This function will return the child that first attached to a registry entry in a plane.


IORegistryEntryGetChildIterator


Returns an iterator over a registry entry's child entries in a plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetChildIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_iterator_t * iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

Return Value

A kern_return_t error code.

Discussion

This method creates an iterator which will return each of a registry entry's child entries in a specified plane.


IORegistryEntryGetLocationInPlane


Returns a C string location assigned to a registry entry, in a specified plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetLocationInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_name_t location );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

Return Value

A kern_return_t error code.

Discussion

Registry entries can given a location string in a particular plane, or globally. If the entry has had a location set in the specified plane that location string will be returned, otherwise the global location string is returned. If no global location string has been set, an error is returned.


IORegistryEntryGetName


Returns a C string name assigned to a registry entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistryEntry, subclass of IOObject
    */  
kern_return_t IORegistryEntryGetName( 
    io_registry_entry_t entry, 
    io_name_t name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

Return Value

A kern_return_t error code.

Discussion

Registry entries can be named in a particular plane or globally. This function returns the entry's global name. The global name defaults to the entry's meta class name if it has not been named.


IORegistryEntryGetNameInPlane


Returns a C string name assigned to a registry entry, in a specified plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetNameInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_name_t name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

Return Value

A kern_return_t error code.

Discussion

Registry entries can be named in a particular plane, or globally. This function returns the entry's name in the specified plane or global name if it has not been named in that plane. The global name defaults to the entry's meta class name if it has not been named.


IORegistryEntryGetParentEntry


Returns the first parent of a registry entry in a plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetParentEntry( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_registry_entry_t * parent );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

Return Value

A kern_return_t error code.

Discussion

This function will return the parent to which the registry entry was first attached in a plane.


IORegistryEntryGetParentIterator


Returns an iterator over a registry entry's parent entries in a plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetParentIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_iterator_t * iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

Return Value

A kern_return_t error code.

Discussion

This method creates an iterator which will return each of a registry entry's parent entries in a specified plane.


IORegistryEntryGetPath


Creates a path for a registry entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntryGetPath( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_string_t path );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

Return Value

A kern_return_t error code.

Discussion

The path for a registry entry is copied to the caller's buffer. The path describes the entry's attachment in a particular plane, which must be specified. The path begins with the plane name followed by a colon, and then followed by '/' separated path components for each of the entries between the root and the registry entry. An alias may also exist for the entry, and will be returned if available.


IORegistryEntryGetProperty


Creates a CF representation of a registry entry's property.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* @function IORegistryEntryGetProperty
    */
kern_return_t IORegistryEntryGetProperty( 
    io_registry_entry_t entry, 
    const io_name_t propertyName, 
    io_struct_inband_t buffer, 
    uint32_t * size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

Return Value

A kern_return_t error code.

Discussion

This function creates an instantaneous snapshot of a registry entry property, creating a CF container analogue in the caller's task. Not every object available in the kernel is represented as a CF container; currently OSDictionary, OSArray, OSSet, OSSymbol, OSString, OSData, OSNumber, OSBoolean are created as their CF counterparts. This function will search for a property, starting first with the specified registry entry's property table, then iterating recusively through either the parent registry entries or the child registry entries of this entry. Once the first occurrence is found, it will look up and return the value of the property, using the same semantics as IORegistryEntryCreateCFProperty. The iteration keeps track of entries that have been recursed into previously to avoid loops.


IORegistryEntryInPlane


Determines if the registry entry is attached in a plane.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  boolean_t IORegistryEntryInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

Return Value

A kern_return_t error code.

Discussion

This method determines if the entry is attached in a plane to any other entry.


IORegistryEntrySearchCFProperty


Creates a CF representation of a registry entry's property.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  CFTypeRef IORegistryEntrySearchCFProperty( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    CFStringRef key, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

Return Value

A kern_return_t error code.

Discussion

This function creates an instantaneous snapshot of a registry entry property, creating a CF container analogue in the caller's task. Not every object available in the kernel is represented as a CF container; currently OSDictionary, OSArray, OSSet, OSSymbol, OSString, OSData, OSNumber, OSBoolean are created as their CF counterparts. This function will search for a property, starting first with the specified registry entry's property table, then iterating recusively through either the parent registry entries or the child registry entries of this entry. Once the first occurrence is found, it will look up and return the value of the property, using the same semantics as IORegistryEntryCreateCFProperty. The iteration keeps track of entries that have been recursed into previously to avoid loops.


IORegistryEntrySetCFProperties


Sets CF container-based properties in a registry entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntrySetCFProperties( 
    io_registry_entry_t entry, 
    CFTypeRef properties );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF container of properties to an object in the I/O Registry. Setting properties in a registry entry is not generally supported; it is more common to support IOConnectSetCFProperties for connection-based property setting. The properties are interpreted by the object.


IORegistryEntrySetCFProperty


Sets a CF container-based property in a registry entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryEntrySetCFProperty( 
    io_registry_entry_t entry, 
    CFStringRef propertyName, 
    CFTypeRef property );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

Return Value

A kern_return_t error code.

Discussion

This is a generic method to pass a CF container as a property to an object in the I/O Registry. Setting properties in a registry entry is not generally supported, it is more common to support IOConnectSetCFProperty for connection-based property setting. The property is interpreted by the object.


IORegistryGetRootEntry


Returns a handle to the I/O Registry root.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistry accessors
    */  
io_registry_entry_t IORegistryGetRootEntry( 
    mach_port_t masterPort );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

Return Value

A kern_return_t error code.

Discussion

This method provides an accessor to the root of the I/O Registry for the machine. The root may be passed to a registry iterator object when iterating a plane, and contains properties that describe the available planes, and diagnostic information for the I/O Kit.


IORegistryIteratorEnterEntry


Recurses into the current entry in the registry iteration.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistryIterator, subclass of IOIterator
    */  
kern_return_t IORegistryIteratorEnterEntry( 
    io_iterator_t iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

Return Value

A kern_return_t error code.

Discussion

This method makes the current entry, i.e. the last entry returned by IOIteratorNext, the root in a new level of recursion.


IORegistryIteratorExitEntry


Exits a level of recursion, restoring the current entry.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  kern_return_t IORegistryIteratorExitEntry( 
    io_iterator_t iterator );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

Return Value

A kern_return_t error code.

Discussion

This method undoes an IORegistryIteratorEnterEntry, restoring the current entry. If there are no more levels of recursion to exit, false is returned, otherwise true is returned.


IOServiceAddInterestNotification


Register for notification of state changes in an IOService object.

kern_return_t IOServiceAddInterestNotification( 
    IONotificationPortRef notifyPort, 
    io_service_t service, 
    const io_name_t interestType, 
    IOServiceInterestCallback callback, 
    void * refCon, 
    io_object_t * notification );  
Parameters
notifyPort

A IONotificationPortRef object that controls how messages will be sent when the notification is fired. See IONotificationPortCreate.

interestType

A notification type from IOKitKeys.h:
kIOGeneralInterest General state changes delivered via the IOService::message API.
kIOBusyInterest Delivered when the IOService object changes its busy state to or from zero. The message argument contains the new busy state causing the notification.

callback

A callback function called when the notification fires, with messageType and messageArgument for the state change.

refCon

A reference constant for the callback's use.

notification

An object handle is returned on success, and should be released by the caller when the notification is to be destroyed.

Return Value

A kern_return_t error code.

Discussion

IOService objects deliver notifications of their state changes to their clients via the IOService::message API, and to other interested parties including callers of this function. Message types are defined IOMessage.


IOServiceAddMatchingNotification


Looks up registered IOService objects that match a matching dictionary, and install a notification request of new IOService objects that match.

kern_return_t IOServiceAddMatchingNotification( 
    IONotificationPortRef notifyPort, 
    const io_name_t notificationType, 
    CFDictionaryRef matching, 
    IOServiceMatchingCallback callback, 
    void * refCon, 
    io_iterator_t * notification );  
Parameters
notifyPort

A IONotificationPortRef object that controls how messages will be sent when the armed notification is fired. When the notification is delivered, the io_iterator_t representing the notification should be iterated through to pick up all outstanding objects. When the iteration is finished the notification is rearmed. See IONotificationPortCreate.

notificationType

A notification type from IOKitKeys.h:
kIOPublishNotification Delivered when an IOService object is registered.
kIOFirstPublishNotification Delivered when an IOService object is registered, but only once per IOService instance. Some IOService objects may be reregistered when their state is changed.
kIOMatchedNotification Delivered when an IOService object has had all matching drivers in the kernel probed and started.
kIOFirstMatchNotification Delivered when an IOService object has had all matching drivers in the kernel probed and started, but only once per IOService instance. Some IOService objects may be reregistered when their state is changed.
kIOTerminatedNotification Delivered after an IOService object has been terminated.

matching

A CF dictionary containing matching information, of which one reference is always consumed by this function. (Note that prior to the Tiger release there was a small chance that the dictionary might not be released if there was an error attempting to serialize the dictionary). IOKitLib can construct matching dictionaries for common criteria with helper functions such as IOServiceMatching, IOServiceNameMatching, IOBSDNameMatching, IOOpenFirmwarePathMatching.

callback

A callback function called when the notification fires.

refCon

A reference constant for the callback's use.

notification

An iterator handle is returned on success, and should be released by the caller when the notification is to be destroyed. The notification is armed when the iterator is emptied by calls to IOIteratorNext - when no more objects are returned, the notification is armed. Note that the notification is not armed when first created.

Return Value

A kern_return_t error code.

Discussion

This is the preferred method of finding IOService objects that may arrive at any time. The type of notification specifies the state change the caller is interested in, on IOService objects that match the matching dictionary. Notification types are identified by name, and are defined in IOKitKeys.h. The matching information used in the matching dictionary may vary depending on the class of service being looked up.


IOServiceClose


Closes a connection to an IOService object and destroys the connect handle.

kern_return_t IOServiceClose( 
    io_connect_t connect );  
Parameters
connect

The connect handle created by IOServiceOpen. It will be destroyed by this function and should not be released with IOObjectRelease.

Return Value

A kern_return_t error code.

Discussion

A connection created with IOServiceOpen should be closed when the connection is no longer to be used with IOServiceClose.


IOServiceGetBusyState


Returns the busyState of an IOService object.

kern_return_t IOServiceGetBusyState( 
    io_service_t service, 
    uint32_t *busyState );  
Parameters
service

The IOService whose busyState to return.

busyState

The busyState count is returned.

Return Value

A kern_return_t error code.

Discussion

Many activities in IOService are asynchronous. When registration, matching, or termination is in progress on an IOService object, its busyState is increased by one. Change in busyState to or from zero also changes the IOService object's provider's busyState by one, which means that an IOService object is marked busy when any of the above activities is ocurring on it or any of its clients.


IOServiceGetMatchingService


Look up a registered IOService object that matches a matching dictionary.

io_service_t IOServiceGetMatchingService( 
    mach_port_t masterPort, 
    CFDictionaryRef matching );  
Parameters
masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

matching

A CF dictionary containing matching information, of which one reference is always consumed by this function. (Note that prior to the Tiger release there was a small chance that the dictionary might not be released if there was an error attempting to serialize the dictionary). IOKitLib can construct matching dictionaries for common criteria with helper functions such as IOServiceMatching, IOServiceNameMatching, IOBSDNameMatching, IOOpenFirmwarePathMatching.

Return Value

The first service matched is returned on success. The service must be released by the caller.

Discussion

This is the preferred method of finding an IOService object currently registered by the I/O Kit (that is, an object that has had its registerService method invoked). To find IOService objects that aren't yet registered, use an iterator as created by IORegistryEntryCreateIterator. IOServiceAddMatchingNotification can also supply this information and install a notification of new IOService objects. The matching information used in the matching dictionary may vary depending on the class of service being looked up.


IOServiceGetMatchingServices


Look up registered IOService objects that match a matching dictionary.

kern_return_t IOServiceGetMatchingServices( 
    mach_port_t masterPort, 
    CFDictionaryRef matching, 
    io_iterator_t *existing );  
Parameters
masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

matching

A CF dictionary containing matching information, of which one reference is always consumed by this function. (Note that prior to the Tiger release there was a small chance that the dictionary might not be released if there was an error attempting to serialize the dictionary). IOKitLib can construct matching dictionaries for common criteria with helper functions such as IOServiceMatching, IOServiceNameMatching, IOBSDNameMatching, IOOpenFirmwarePathMatching.

existing

An iterator handle is returned on success, and should be released by the caller when the iteration is finished.

Return Value

A kern_return_t error code.

Discussion

This is the preferred method of finding IOService objects currently registered by the I/O Kit (that is, objects that have had their registerService methods invoked). To find IOService objects that aren't yet registered, use an iterator as created by IORegistryEntryCreateIterator. IOServiceAddMatchingNotification can also supply this information and install a notification of new IOService objects. The matching information used in the matching dictionary may vary depending on the class of service being looked up.


IOServiceMatching


Creates a matching dictionary that specifies an IOService class match.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * Matching dictionary creation helpers
    */  
CFMutableDictionaryRef IOServiceMatching( 
    const char * name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

Return Value

A kern_return_t error code.

Discussion

A very common matching criteria for an IOService object is based on its class. IOServiceMatching will create a matching dictionary that specifies any IOService object of a class, or its subclasses. The class is specified by C string name.


IOServiceMatchPropertyTable


Match an IOService objects with matching dictionary.

kern_return_t IOServiceMatchPropertyTable( 
    io_service_t service, 
    CFDictionaryRef matching, 
    boolean_t *matches );  
Parameters
service

The IOService object to match.

matching

A CF dictionary containing matching information. IOKitLib can construct matching dictionaries for common criteria with helper functions such as IOServiceMatching, IOServiceNameMatching, IOBSDNameMatching, IOOpenFirmwarePathMatching.

matches

The boolean result is returned.

Return Value

A kern_return_t error code.

Discussion

This function calls the matching method of an IOService object and returns the boolean result.


IOServiceNameMatching


Creates a matching dictionary that specifies an IOService name match.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

  CFMutableDictionaryRef IOServiceNameMatching( 
    const char * name );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

Return Value

A kern_return_t error code.

Discussion

A common matching criteria for an IOService object is based on its name. IOServiceNameMatching will create a matching dictionary that specifies an IOService object with a given name. Some IOService objects created from the OpenFirmware device tree will perform name matching on the standard OF compatible, name, model properties.


IOServiceOFPathToBSDName


Looks up an IOService from its OpenFirmware device path and returns its BSD device name, if available.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
kern_return_t IOServiceOFPathToBSDName(
    mach_port_t masterPort, 
    const io_name_t openFirmwarePath, 
    io_name_t bsdName);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

Return Value

A kern_return_t error code.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOServiceOFPathToBSDName IOAsyncCallback()


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

#if !__LP64__ 
kern_return_t IOConnectMapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    IOOptionBits options );  
kern_return_t IOConnectMapMemory64  #else 
kern_return_t IOConnectMapMemory  #endif  
(
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    mach_vm_address_t *atAddress, 
    mach_vm_size_t *ofSize, 
    IOOptionBits options );  
  #if !__LP64__ 
kern_return_t IOConnectUnmapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    vm_address_t atAddress );  
kern_return_t IOConnectUnmapMemory64  #else 
kern_return_t IOConnectUnmapMemory  #endif  
(
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    mach_vm_address_t atAddress );  
  kern_return_t IOConnectSetCFProperties( 
    io_connect_t connect, 
    CFTypeRef properties );  
  kern_return_t IOConnectSetCFProperty( 
    io_connect_t connect, 
    CFStringRef propertyName, 
    CFTypeRef property );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
// Combined LP64 & ILP32 Extended IOUserClient::externalMethod  
kern_return_t IOConnectCallMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt, // In/Out 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
kern_return_t IOConnectCallAsyncMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt, // In/Out 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
kern_return_t IOConnectCallStructMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
kern_return_t IOConnectCallAsyncStructMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const void *inputStruct, // In 
    size_t inputStructCnt, // In 
    void *outputStruct, // Out 
    size_t *outputStructCnt) // In/Out 
;  
kern_return_t IOConnectCallScalarMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt) // In/Out 
;  
kern_return_t IOConnectCallAsyncScalarMethod( 
    mach_port_t connection, // In 
    uint32_t selector, // In 
    mach_port_t wake_port, // In 
    uint64_t *reference, // In 
    uint32_t referenceCnt, // In 
    const uint64_t *input, // In 
    uint32_t inputCnt, // In 
    uint64_t *output, // Out 
    uint32_t *outputCnt) // In/Out 
;  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
kern_return_t IOConnectTrap0(
    io_connect_t connect, 
    uint32_t index );  
kern_return_t IOConnectTrap1(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1 );  
kern_return_t IOConnectTrap2(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2);  
kern_return_t IOConnectTrap3(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3);  
kern_return_t IOConnectTrap4(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4);  
kern_return_t IOConnectTrap5(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4, 
    uintptr_t p5);  
kern_return_t IOConnectTrap6(
    io_connect_t connect, 
    uint32_t index, 
    uintptr_t p1, 
    uintptr_t p2, 
    uintptr_t p3, 
    uintptr_t p4, 
    uintptr_t p5, 
    uintptr_t p6);  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
kern_return_t IOConnectAddClient( 
    io_connect_t connect, 
    io_connect_t client );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistry accessors
    */  
io_registry_entry_t IORegistryGetRootEntry( 
    mach_port_t masterPort );  
  io_registry_entry_t IORegistryEntryFromPath( 
    mach_port_t masterPort, 
    const io_string_t path );  
// options for IORegistryCreateIterator(), IORegistryEntryCreateIterator, IORegistryEntrySearchCFProperty() 
enum { 
    kIORegistryIterateRecursively = 0x00000001, 
    kIORegistryIterateParents = 0x00000002 
};  
  kern_return_t IORegistryCreateIterator( 
    mach_port_t masterPort, 
    const io_name_t plane, 
    IOOptionBits options, 
    io_iterator_t * iterator );  
  kern_return_t IORegistryEntryCreateIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    IOOptionBits options, 
    io_iterator_t * iterator );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistryIterator, subclass of IOIterator
    */  
kern_return_t IORegistryIteratorEnterEntry( 
    io_iterator_t iterator );  
  kern_return_t IORegistryIteratorExitEntry( 
    io_iterator_t iterator );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * IORegistryEntry, subclass of IOObject
    */  
kern_return_t IORegistryEntryGetName( 
    io_registry_entry_t entry, 
    io_name_t name );  
  kern_return_t IORegistryEntryGetNameInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_name_t name );  
  kern_return_t IORegistryEntryGetLocationInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_name_t location );  
  kern_return_t IORegistryEntryGetPath( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_string_t path );  
  kern_return_t IORegistryEntryCreateCFProperties( 
    io_registry_entry_t entry, 
    CFMutableDictionaryRef *properties, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
  CFTypeRef IORegistryEntryCreateCFProperty( 
    io_registry_entry_t entry, 
    CFStringRef key, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
  CFTypeRef IORegistryEntrySearchCFProperty( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    CFStringRef key, 
    CFAllocatorRef allocator, 
    IOOptionBits options );  
/* @function IORegistryEntryGetProperty
    */
kern_return_t IORegistryEntryGetProperty( 
    io_registry_entry_t entry, 
    const io_name_t propertyName, 
    io_struct_inband_t buffer, 
    uint32_t * size );  
  kern_return_t IORegistryEntrySetCFProperties( 
    io_registry_entry_t entry, 
    CFTypeRef properties );  
  kern_return_t IORegistryEntrySetCFProperty( 
    io_registry_entry_t entry, 
    CFStringRef propertyName, 
    CFTypeRef property );  
  kern_return_t IORegistryEntryGetChildIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_iterator_t * iterator );  
  kern_return_t IORegistryEntryGetChildEntry( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_registry_entry_t * child );  
  kern_return_t IORegistryEntryGetParentIterator( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_iterator_t * iterator );  
  kern_return_t IORegistryEntryGetParentEntry( 
    io_registry_entry_t entry, 
    const io_name_t plane, 
    io_registry_entry_t * parent );  
  boolean_t IORegistryEntryInPlane( 
    io_registry_entry_t entry, 
    const io_name_t plane );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/*
 * Matching dictionary creation helpers
    */  
CFMutableDictionaryRef IOServiceMatching( 
    const char * name );  
  CFMutableDictionaryRef IOServiceNameMatching( 
    const char * name );  
  CFMutableDictionaryRef IOBSDNameMatching( 
    mach_port_t masterPort, 
    uint32_t options, 
    const char * bsdName );  
  CFMutableDictionaryRef IOOpenFirmwarePathMatching( 
    mach_port_t masterPort, 
    uint32_t options, 
    const char * path );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
kern_return_t IOServiceOFPathToBSDName(
    mach_port_t masterPort, 
    const io_name_t openFirmwarePath, 
    io_name_t bsdName);  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 
typedef void ( *IOAsyncCallback0)(
    void *refcon,
    IOReturn result);  
 typedef void ( *IOAsyncCallback1)(
    void *refcon,
    IOReturn result,
    void *arg0);  
 typedef void ( *IOAsyncCallback2)(
    void *refcon,
    IOReturn result,
    void *arg0,
    void *arg1);  
 typedef void ( *IOAsyncCallback)(
    void *refcon,
    IOReturn result,
    void **args, 
    uint32_t numArgs);  
/* Internal use */
kern_return_t OSGetNotificationFromMessage( 
    mach_msg_header_t *msg, 
    uint32_t index, 
    uint32_t *type, 
    uintptr_t *reference, 
    void **content, 
    vm_size_t *size );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* Internal use */
kern_return_t IOCatalogueSendData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    const char *buffer, 
    uint32_t size );  
kern_return_t IOCatalogueTerminate( 
    mach_port_t masterPort, 
    uint32_t flag, 
    io_name_t description );  
kern_return_t IOCatalogueGetData( 
    mach_port_t masterPort, 
    uint32_t flag, 
    char **buffer, 
    uint32_t *size );  
kern_return_t IOCatalogueModuleLoaded( 
    mach_port_t masterPort, 
    io_name_t name );  
kern_return_t IOCatalogueReset( 
    mach_port_t masterPort, 
    uint32_t flag );  
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
// obsolete API  
#if !defined(__LP64__) 
 // for Power Mgt  
typedef struct IOObject IOObject;  
// for MacOS.app  
kern_return_t IORegistryDisposeEnumerator( 
    io_enumerator_t enumerator ) DEPRECATED_ATTRIBUTE;  
kern_return_t IOMapMemory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    uint32_t flags ) DEPRECATED_ATTRIBUTE;  
// for CGS  
kern_return_t IOCompatibiltyNumber( 
    mach_port_t connect, 
    uint32_t *objectNumber ) DEPRECATED_ATTRIBUTE;  
// Traditional IOUserClient transport routines 
kern_return_t IOConnectMethodScalarIScalarO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOItemCount scalarOutputCount, 
    ... );  
kern_return_t IOConnectMethodScalarIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount *structureSize, 
    ... );  
kern_return_t IOConnectMethodScalarIStructureI( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount scalarInputCount, 
    IOByteCount structureSize, 
    ... );  
kern_return_t IOConnectMethodStructureIStructureO( 
    io_connect_t connect, 
    uint32_t index, 
    IOItemCount structureInputSize, 
    IOByteCount *structureOutputSize, 
    void *inputStructure, 
    void *ouputStructure );  
// Compatability with earlier Mig interface routines 
#if IOCONNECT_NO_32B_METHODS 
 kern_return_t io_connect_map_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t intoTask, 
    vm_address_t *atAddress, 
    vm_size_t *ofSize, 
    IOOptionBits options) DEPRECATED_ATTRIBUTE;  
kern_return_t io_connect_unmap_memory( 
    io_connect_t connect, 
    uint32_t memoryType, 
    task_port_t fromTask, 
    vm_address_t atAddress) DEPRECATED_ATTRIBUTE;  
kern_return_t io_connect_method_scalarI_scalarO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_connect_method_scalarI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_connect_method_scalarI_structureI( 
    mach_port_t connection, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_connect_method_structureI_structureO( 
    mach_port_t connection, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_async_method_scalarI_scalarO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_scalar_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_async_method_scalarI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_async_method_scalarI_structureI( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_scalar_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t inputStruct, 
    mach_msg_type_number_t inputStructCnt) DEPRECATED_ATTRIBUTE;  
kern_return_t io_async_method_structureI_structureO( 
    mach_port_t connection, 
    mach_port_t wake_port, 
    io_async_ref_t reference, 
    mach_msg_type_number_t referenceCnt, 
    int selector, 
    io_struct_inband_t input, 
    mach_msg_type_number_t inputCnt, 
    io_struct_inband_t output, 
    mach_msg_type_number_t *outputCnt) DEPRECATED_ATTRIBUTE;  
#endif 
// IOCONNECT_NO_32B_METHODS 
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Return Value

A kern_return_t error code.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Availability
Introduced in Mac OS X v10.0, but later deprecated in Mac OS X v10.5.

IOServiceOpen


Requests the creation of a connection to an IOService object.

kern_return_t IOServiceOpen( 
    io_service_t service, 
    task_port_t owningTask, 
    uint32_t type, 
    io_connect_t *connect );  
Parameters
service

The IOService object to open a connection to, usually obtained via the IOServiceGetMatchingServices or IOServiceAddMatchingNotification functions.

owningTask

The Mach task requesting the connection. Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

type

A constant specifying the type of connection to be created, interpreted only by the IOService object's family.

connect

An io_connect_t handle is returned on success, to be used with the IOConnectXXX functions. It should be destroyed with IOServiceClose.

Return Value

A return code generated by IOService::newUserClient.

Discussion

A nonkernel client may request a connection be opened via the IOServiceOpen library function, which will call IOService::newUserClient in the kernel. The rules and capabilities of user level clients are family dependent; the default IOService implementation returns kIOReturnUnsupported.


IOServiceRequestProbe


Requests a rescan of a bus for device changes.

kern_return_t IOServiceRequestProbe( 
    io_service_t service, 
    uint32_t options );  
Parameters
service

The IOService object to request a rescan, usually obtained via the IOServiceGetMatchingServices or IOServiceAddMatchingNotification function.

options

An options mask, interpreted only by the IOService object's family.

Return Value

A return code generated by IOService::requestProbe.

Discussion

A nonkernel client may request a bus or controller rescan for added or removed devices, if the bus family automatically notices such changes. For example, SCSI bus controllers do not notice device changes. The implementation of this routine is family dependent, and the default IOService implementation returns kIOReturnUnsupported.


IOServiceWaitQuiet


Waits for an IOService object's busyState to be zero.

kern_return_t IOServiceWaitQuiet( 
    io_service_t service, 
    mach_timespec_t *waitTime );  
Parameters
service

The IOService object to wait on.

waitTime

Specifies a maximum time to wait.

Return Value

Returns an error code if Mach synchronization primitives fail, kIOReturnTimeout, or kIOReturnSuccess.

Discussion

Blocks the caller until an IOService object is non busy, see IOServiceGetBusyState.


OSGetNotificationFromMessage


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* Internal use */
kern_return_t OSGetNotificationFromMessage( 
    mach_msg_header_t *msg, 
    uint32_t index, 
    uint32_t *type, 
    uintptr_t *reference, 
    void **content, 
    vm_size_t *size );  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.

Constants


kIOMasterPortDefault


The default Mach port used to initiate communication with the I/O Kit.

extern const mach_port_t kIOMasterPortDefault;  
Discussion

When specifying a master port to I/O Kit functions, the NULL argument indicates "use the default". This is a synonym for NULL, if you'd rather use a named constant.

Typedefs


IOAsyncCallback


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback)(
    void *refcon,
    IOReturn result,
    void **args, 
    uint32_t numArgs);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback)(
    void *refcon,
    IOReturn result,
    void **args, 
    uint32_t numArgs);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback0


Standard callback function for asynchronous I/O requests with no extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 
typedef void ( *IOAsyncCallback0)(
    void *refcon,
    IOReturn result);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

Return Value

A kern_return_t error code.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback0


Standard callback function for asynchronous I/O requests with no extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 
typedef void ( *IOAsyncCallback0)(
    void *refcon,
    IOReturn result);  
Parameters
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

Return Value

A kern_return_t error code.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback1


Standard callback function for asynchronous I/O requests with one extra argument beyond a refcon and result code (this is often a count of the number of bytes transferred).

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback1)(
    void *refcon,
    IOReturn result,
    void *arg0);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback1


Standard callback function for asynchronous I/O requests with one extra argument beyond a refcon and result code (this is often a count of the number of bytes transferred).

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback1)(
    void *refcon,
    IOReturn result,
    void *arg0);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback2


Standard callback function for asynchronous I/O requests with two extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback2)(
    void *refcon,
    IOReturn result,
    void *arg0,
    void *arg1);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOAsyncCallback2


Standard callback function for asynchronous I/O requests with two extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 typedef void ( *IOAsyncCallback2)(
    void *refcon,
    IOReturn result,
    void *arg0,
    void *arg1);  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOConnectMapMemory


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 // for Power Mgt  
typedef struct IOObject IOObject;  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOObject


Standard callback function for asynchronous I/O requests with lots of extra arguments beyond a refcon and result code.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IOConnectMapMemory

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

 // for Power Mgt  
typedef struct IOObject IOObject;  
Fields
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The root entry to begin the iteration at.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

options

kIORegistryIterateRecursively may be set to recurse automatically into each entry as it is returned from IOIteratorNextIOIteratorNext calls on the registry iterator. kIORegistryIterateParents may be set to iterate the parents of each entry, by default the children are iterated.

iterator

A created iterator handle, to be released by the caller when it has finished with it.

entry

The registry entry handle whose name to look up.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

name

The caller's buffer to receive the name.

entry

The registry entry handle whose name to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

location

The caller's buffer to receive the location string.

entry

The registry entry handle whose path to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

path

A char buffer allocated by the caller.

entry

The registry entry handle whose property table to copy.

properties

A CFDictionary is created and returned the caller on success. The caller should release with CFRelease.

allocator

The CF allocator to use when creating the CF containers.

options

No options are currently defined.

entry

The registry entry handle whose property to copy.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

No options are currently defined.

entry

The registry entry at which to start the search.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

key

A CFString specifying the property name.

allocator

The CF allocator to use when creating the CF container.

options

kIORegistryIterateRecursively may be set to recurse automatically into the registry hierarchy. Without this option, this method degenerates into the standard IORegistryEntryCreateCFProperty call. kIORegistryIterateParents may be set to iterate the parents of the entry, in place of the children.

entry

The registry entry whose properties to set.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose property to set.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

entry

The registry entry whose children to iterate over.

plane

The name of an existing I/O Registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the children of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose child to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

child

The first child of the registry entry, on success. The child must be released by the caller.

entry

The registry entry whose parents to iterate over.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

iterator

The created iterator over the parents of the entry, on success. The iterator must be released when the iteration is finished.

entry

The registry entry whose parent to look up.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, e.g. kIOServicePlane.

parent

The first parent of the registry entry, on success. The parent must be released by the caller.

entry

The registry entry.

plane

The name of an existing registry plane. Plane names are defined in IOKitKeys.h, eg. kIOServicePlane.

name

The class name, as a const C string. Class matching is successful on IOService objects of this class or any subclass.

name

The IOService object name, as a const C string.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

bsdName

The BSD name, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

options

No options are currently defined.

path

The OpenFirmware device path, as a const char pointer.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

openFirmwarePath

The OpenFirmware device path, as a const char pointer.

bsdName

The BSD name, as a const char pointer, is copied to the caller's buffer.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

arg0

Extra argument.

arg1

Extra argument.

refcon

The refcon passed into the original I/O request.

result

The result of the I/O operation.

args

Array of extra arguments.

numArgs

Number of extra arguments.

Discussion

Certain IOServices (currently, block and ethernet boot devices) may be looked up by a path that specifies their location in the OpenFirmware device tree, represented in the I/O Registry by the kIODeviceTreePlane plane. This function looks up an IOService object with a given OpenFirmware device path and returns its associated BSD device name.


IOServiceInterestCallback


Callback function to be notified of changes in state of an IOService.

typedef void ( *IOServiceInterestCallback)( 
    void *refcon, 
    io_service_t service, 
    uint32_t messageType, 
    void *messageArgument );  
Fields
refcon

The refcon passed when the notification was installed.

service

The IOService whose state has changed.

messageType

A messageType enum, defined in IOMessage or by the IOService's family.

messageArgument

An argument for the message, dependent on the value of messageType.


IOServiceMatchingCallback


Callback function to be notified of IOService publication.

typedef void ( *IOServiceMatchingCallback)( 
    void *refcon, 
    io_iterator_t iterator );  
Fields
refcon

The refcon passed when the notification was installed.

iterator

The notification iterator which now has new objects.

Enumerations


IOConnectMapMemory


Looks up a registry entry by path.

See Also:

IOConnectMapMemory

#

IOConnectUnmapMemory

#

IOConnectSetCFProperties

IOConnectSetCFProperty

IOConnectCallMethod

IOConnectCallAsyncMethod

IOConnectCallStructMethod

IOConnectCallAsyncStructMethod

IOConnectCallScalarMethod

IOConnectCallAsyncScalarMethod

IOConnectTrap0

IOConnectTrap1

IOConnectTrap2

IOConnectTrap3

IOConnectTrap4

IOConnectTrap5

IOConnectTrap6

IOConnectAddClient

IORegistryGetRootEntry

IORegistryEntryFromPath

IORegistryCreateIterator

IORegistryEntryCreateIterator

IORegistryIteratorEnterEntry

IORegistryIteratorExitEntry

IORegistryEntryGetName

IORegistryEntryGetNameInPlane

IORegistryEntryGetLocationInPlane

IORegistryEntryGetPath

IORegistryEntryCreateCFProperties

IORegistryEntryCreateCFProperty

IORegistryEntrySearchCFProperty

IORegistryEntryGetProperty

IORegistryEntrySetCFProperties

IORegistryEntrySetCFProperty

IORegistryEntryGetChildIterator

IORegistryEntryGetChildEntry

IORegistryEntryGetParentIterator

IORegistryEntryGetParentEntry

IORegistryEntryInPlane

IOServiceMatching

IOServiceNameMatching

IOBSDNameMatching

IOOpenFirmwarePathMatching

IOServiceOFPathToBSDName

IOConnectMapMemory

IOAsyncCallback0

IOConnectMapMemory

IOAsyncCallback1

IOConnectMapMemory

IOAsyncCallback2

IOConnectMapMemory

IOAsyncCallback

IOConnectMapMemory

OSGetNotificationFromMessage

IOConnectMapMemory

IOCatalogueSendData

IOConnectMapMemory

IOCatalogueTerminate

IOConnectMapMemory

IOCatalogueGetData

IOConnectMapMemory

IOCatalogueModuleLoaded

IOConnectMapMemory

IOCatalogueReset

IOConnectMapMemory

IOObject

IOConnectMapMemory

IORegistryDisposeEnumerator

IOConnectMapMemory

IOMapMemory

IOConnectMapMemory

IOCompatibiltyNumber

IOConnectMapMemory

IOConnectMethodScalarIScalarO

IOConnectMapMemory

IOConnectMethodScalarIStructureO

IOConnectMapMemory

IOConnectMethodScalarIStructureI

IOConnectMapMemory

IOConnectMethodStructureIStructureO

IOConnectMapMemory

io_connect_map_memory

IOConnectMapMemory

io_connect_unmap_memory

IOConnectMapMemory

io_connect_method_scalarI_scalarO

IOConnectMapMemory

io_connect_method_scalarI_structureO

IOConnectMapMemory

io_connect_method_scalarI_structureI

IOConnectMapMemory

io_connect_method_structureI_structureO

IOConnectMapMemory

io_async_method_scalarI_scalarO

IOConnectMapMemory

io_async_method_scalarI_structureO

IOConnectMapMemory

io_async_method_scalarI_structureI

IOConnectMapMemory

io_async_method_structureI_structureO

// options for IORegistryCreateIterator(), IORegistryEntryCreateIterator, IORegistryEntrySearchCFProperty() 
enum { 
    kIORegistryIterateRecursively = 0x00000001, 
    kIORegistryIterateParents = 0x00000002 
};  
Constants
connect

The connect handle created by IOServiceOpen.

memoryType

What is being requested to be mapped, family defined and not interpreted by I/O Kit. The family may support physical hardware or shared memory mappings.

intoTask

The task port for the task in which to create the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note that in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

An in/out parameter - if the kIOMapAnywhere option is not set, the caller should pass the address where it requests the mapping be created, otherwise nothing needs to be set on input. The address of the mapping created is passed back on success.

ofSize

The size of the mapping created is passed back on success.

connect

The connect handle created by IOServiceOpen.

memoryType

The memory type originally requested in IOConnectMapMemory.

intoTask

The task port for the task from which to remove the mapping (note that this may be different from the task that opened the connection). Pass mach_task_self() to refer to the process calling this function. Note in Mac OS X, each process is based on a Mach task and one or more Mach threads. For more information on the composition of a Mach task and its relationship with Mach threads, see "Tasks and Threads".

atAddress

The address of the mapping to be removed.

connect

The connect handle created by IOServiceOpen.

properties

A CF container - commonly a CFDictionary but this is not enforced. The container should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary, OSArray, etc. objects.

connect

The connect handle created by IOServiceOpen.

propertyName

The name of the property as a CFString.

property

A CF container - should consist of objects which are understood by the I/O Kit - these are currently : CFDictionary, CFArray, CFSet, CFString, CFData, CFNumber, CFBoolean, and are passed in the kernel as the corresponding OSDictionary etc. objects.

connect

The connect handle created by IOServiceOpen.

client

Another connect handle created by IOServiceOpen.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

masterPort

The master port obtained from IOMasterPort. Pass kIOMasterPortDefault to look up the default master port.

path

A C string path.

Discussion

This function parses paths to look up registry entries. The path should begin with '<plane name>:' If there are characters remaining unparsed after an entry has been looked up, this is considered an invalid lookup. Paths are further documented in IORegistryEntry.h.


Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.

 

Last Updated: 2009-02-23