NTSTATUS NTAPI CPortWavePci::NewMasterDmaChannel( OUT PDMACHANNEL *DmaChannel, IN PUNKNOWN OuterUnknown OPTIONAL, IN POOL_TYPE PoolType, IN PRESOURCELIST ResourceList OPTIONAL, IN BOOLEAN ScatterGather, IN BOOLEAN Dma32BitAddresses, IN BOOLEAN Dma64BitAddresses, IN BOOLEAN IgnoreCount, IN DMA_WIDTH DmaWidth, IN DMA_SPEED DmaSpeed, IN ULONG MaximumLength, IN ULONG DmaPort) { NTSTATUS Status; DEVICE_DESCRIPTION DeviceDescription; DPRINT("IPortWavePci_fnNewMasterDmaChannel This %p entered\n", this); PC_ASSERT_IRQL_EQUAL(PASSIVE_LEVEL); Status = PcDmaMasterDescription(ResourceList, ScatterGather, Dma32BitAddresses, IgnoreCount, Dma64BitAddresses, DmaWidth, DmaSpeed, MaximumLength, DmaPort, &DeviceDescription); if (NT_SUCCESS(Status)) { return PcNewDmaChannel(DmaChannel, OuterUnknown, PoolType, &DeviceDescription, m_pDeviceObject); } return Status; }
NTSTATUS NTAPI CPortWaveCyclic::NewMasterDmaChannel( OUT PDMACHANNEL* DmaChannel, IN PUNKNOWN OuterUnknown, IN PRESOURCELIST ResourceList OPTIONAL, IN ULONG MaximumLength, IN BOOLEAN Dma32BitAddresses, IN BOOLEAN Dma64BitAddresses, IN DMA_WIDTH DmaWidth, IN DMA_SPEED DmaSpeed) { NTSTATUS Status; DEVICE_DESCRIPTION DeviceDescription; PC_ASSERT_IRQL_EQUAL(PASSIVE_LEVEL); Status = PcDmaMasterDescription(ResourceList, (Dma32BitAddresses | Dma64BitAddresses), Dma32BitAddresses, 0, Dma64BitAddresses, DmaWidth, DmaSpeed, MaximumLength, 0, &DeviceDescription); if (NT_SUCCESS(Status)) { return PcNewDmaChannel(DmaChannel, OuterUnknown, NonPagedPool, &DeviceDescription, m_pDeviceObject); } return Status; }