LINUX.ORG.RU

История изменений

Исправление tailgunner, (текущая версия) :

pci_resource_start(pdev, 0)

Тут 0 - это BAR0?

Да. Глава 12 LDD 3, кстати.

как считать сразу весь блок 4К

Для этого придется, внезапно, делать поддержку DMA в твоем устройстве. Без этого только MMIO.

само понятие DMA в моем случае бессмысленно, я там просто получаю ряд пакетов, в которых есть команда записать N байт начиная с некоторого адреса

Понятие DMA никогда не бессмысленно. В твоем случае нужно как минимум сообщить устройству, куда писать данные и каким прерыванием извещать процессор об окончании транзакции, а от этого уже недалеко и до нормальных DMA-дескрипторов и scatter-gather.

Исправление tailgunner, :

pci_resource_start(pdev, 0)

Тут 0 - это BAR0?

Да. Глава 12 LDD 3, кстати.

как считать сразу весь блок 4К

Для этого придется, внезапно, делать поддержку DMA в твоем устройстве. Без этого только MMIO.

само понятие DMA в моем случае бессмысленно, я там просто получаю ряд пакетов, в которых есть команда записать N байт начиная с некоторого адреса

Понятие DMA никогда не бессмысленно. В твоем случае нужно как минимум сообщить устройству, куда писать данные, а от этого уже недалеко и до нормальных DMA-дескрипторов и scatter-gather.

Исходная версия tailgunner, :

pci_resource_start(pdev, 0)

Тут 0 - это BAR0?

Да. Глава 12 LDD 3, кстати.

как считать сразу весь блок 4К

Для этого придется, внезапно, делать поддержку DMA в твоем устройстве. Без этого только MMIO.