dxd - dynax driver framework 3.0.2
cross platform open source driver development framework
Loading...
Searching...
No Matches
dxd::pci::device::scatter_gather< limit_t > Class Template Reference

a memory's device addresses below 1<< limit_t, from initialize() to free(): mapped by the device's IOMMU (DART), in at most the 32 runs one preparation hands More...

#include <dxd_pci_device.h>

Inheritance diagram for dxd::pci::device::scatter_gather< limit_t >:
Collaboration diagram for dxd::pci::device::scatter_gather< limit_t >:

Public Member Functions

void free()
os_result initialize(device& device, ::IOMemoryDescriptor* memory)
os_result initialize(device& device, ::MDL* mdl)
os_result initialize(::DEVICE_OBJECT* wdm_pdo, ::MDL* mdl)
 the device's PDO
 scatter_gather()= default
 scatter_gather()= default
 scatter_gather(device& device, ::IOMemoryDescriptor* memory)
 scatter_gather(device& device, ::MDL* mdl)
 ~scatter_gather()

Public Attributes

array<dx::pci::segment> segment
uint32_t segments{}
os_result status{not_initialized}

Detailed Description

template<unsigned int limit_t = 64>
class dxd::pci::device::scatter_gather< limit_t >

a memory's device addresses below 1<< limit_t, from initialize() to free(): mapped by the device's IOMMU (DART), in at most the 32 runs one preparation hands

Constructor & Destructor Documentation

◆ scatter_gather() [1/4]

template<unsigned int limit_t= 64>
dxd::pci::device::scatter_gather<limit_t>::scatter_gather()
default

◆ scatter_gather() [2/4]

template<unsigned int limit_t= 64>
dxd::pci::device::scatter_gather<limit_t>::scatter_gather(device& device, ::IOMemoryDescriptor* memory)
inline
Here is the call graph for this function:

◆ ~scatter_gather()

template<unsigned int limit_t= 64>
dxd::pci::device::scatter_gather<limit_t>::~scatter_gather()
inline
Here is the call graph for this function:

◆ scatter_gather() [3/4]

template<unsigned int limit_t= 64>
dxd::pci::device::scatter_gather<limit_t>::scatter_gather()
default

◆ scatter_gather() [4/4]

template<unsigned int limit_t= 64>
dxd::pci::device::scatter_gather<limit_t>::scatter_gather(device& device, ::MDL* mdl)
inline
Here is the call graph for this function:

Member Function Documentation

◆ free()

template<unsigned int limit_t= 64>
void dxd::pci::device::scatter_gather<limit_t>::free()
inline
Here is the caller graph for this function:

◆ initialize() [1/3]

template<unsigned int limit_t= 64>
os_result dxd::pci::device::scatter_gather<limit_t>::initialize(device& device, ::IOMemoryDescriptor* memory)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize() [2/3]

template<unsigned int limit_t= 64>
os_result dxd::pci::device::scatter_gather<limit_t>::initialize(device& device, ::MDL* mdl)
inline
Here is the call graph for this function:

◆ initialize() [3/3]

os_result dxd::pci::scatter_gather<limit_t>::initialize(::DEVICE_OBJECT* wdm_pdo, ::MDL* mdl)
inlineinherited

the device's PDO

Member Data Documentation

◆ segment

template<unsigned int limit_t= 64>
array<dx::pci::segment> dxd::pci::device::scatter_gather<limit_t>::segment

◆ segments

template<unsigned int limit_t= 64>
uint32_t dxd::pci::device::scatter_gather<limit_t>::segments{}

◆ status

template<unsigned int limit_t= 64>
os_result dxd::pci::device::scatter_gather<limit_t>::status{not_initialized}

The documentation for this class was generated from the following files: