WdfIoResourceRequirementsListAppendIoResList function (wdfresource.h)

[Applies to KMDF only]

The WdfIoResourceRequirementsListAppendIoResList method adds a logical configuration to the end of a resource requirements list.

Syntax

NTSTATUS WdfIoResourceRequirementsListAppendIoResList(
  [in] WDFIORESREQLIST RequirementsList,
  [in] WDFIORESLIST    IoResList
);

Parameters

[in] RequirementsList

A handle to a framework resource-requirements-list object that represents a device's resource requirements list.

[in] IoResList

A handle to a framework resource-range-list object that represents a logical configuration of hardware resources for a device.

Return value

WdfIoResourceRequirementsListAppendIoResList returns STATUS_SUCCESS if the operation succeeds. Otherwise, this method might return one of the following values:

Return code Description
STATUS_INVALID_PARAMETER
An invalid parameter was specified.
STATUS_INVALID_DEVICE_REQUEST
The specified resource-requirements-list object does not own the specified resource-range-list object.
STATUS_INSUFFICIENT_RESOURCES
The framework could not allocate space to store the resource-range-list object.
 

A system bug check occurs if the driver supplies an invalid object handle.

Remarks

For more information about resource requirements lists, see Hardware Resources for Framework-Based Drivers.

Examples

The following code example shows how an EvtDeviceResourceRequirementsQuery callback function creates an empty logical configuration and appends it to a resource requirements list.

NTSTATUS
Example_EvtDeviceResourceRequirementsQuery(
    IN WDFDEVICE Device,
    IN WDFIORESREQLIST RequirementsList
    )
{
    NTSTATUS  status;
    WDFIORESLIST  logConfig;

    status = WdfIoResourceListCreate(
                                     RequirementsList,
                                     WDF_NO_OBJECT_ATTRIBUTES,
                                     &logConfig
                                     );
    if (!NT_SUCCESS(status)) {
        return status;
    }

    status = WdfIoResourceRequirementsListAppendIoResList(
                                             RequirementsList,
                                             logConfig
                                             );
    if (!NT_SUCCESS(status)) {
        return status;
    }
...
}

Requirements

Requirement Value
Target Platform Universal
Minimum KMDF version 1.0
Header wdfresource.h (include Wdf.h)
Library Wdf01000.sys (see Framework Library Versioning.)
IRQL <=DISPATCH_LEVEL
DDI compliance rules DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

See also

WdfIoResourceListCreate

WdfIoResourceRequirementsListInsertIoResList