KasperskyOS Community Edition 1.1

Содержание

DmaInfo

Структура, описывающая DMA-буфер, объявлена в файле io/io_dma.h.

typedef struct {

/** DMA-флаги (атрибуты). */

DmaAttr flags;

/** Минимальный порядок DMA-блоков в буфере. */

rtl_size_t orderMin;

/** Размер DMA-буфера. */

rtl_size_t size;

/** Число DMA-блоков (меньше или равно DMA_FRAMES_COUNT_MAX).

* Может быть равно 0, если DMA-буфер недоступен для устройства. */

rtl_size_t count;

/** Массив описателей DMA-блоков. */

union DmaFrameDescriptor {

struct {

/** Порядок (order) DMA-блока. Число страниц в блоке равно двум

* в степени order. */

DmaAddr order: DMA_FRAME_ORDER_BITS;

/** Физический или IOMMU-адрес DMA-блока. */

DmaAddr frame: DMA_FRAME_BASE_BITS;

};

/** Описатель DMA-блока */

DmaAddr raw;

} descriptors[1];

} DmaInfo;

В начало
[Topic dma_info]