LINUX.ORG.RU

Работа с MSI прерываниями, Как корректно выделить вектор прерываний ?


0

2

Всем привет

Разрабатываю сетевой драйвер под Altera Arria2 GX (Авалон-ST). Можно ли установить вектор из 8 прерываний MSI, если проект поддерживает только MSI прерываня, а не MSI - X?

Со стороны разработчика драйверов - запрашивать 8 отдельных обработчиков прерываний, для обработки 8 очередей пакетов.

pci_enable_msi_block () возвращает 1. Это означает, что можно запросить только 1 линию прерывания.

Возможности устройства:

Capabilities: [50] Message Signalled Interrupts: Mask- 64bit+ Queue=0/5 Enable- Address: 0000000000000000 Data: 0000 Capabilities: [78] Power Management version 3 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Capabilities: [80] Express (v1) Endpoint, MSI 00 DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+ MaxPayload 128 bytes, MaxReadReq 512 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend- LnkCap: Port #1, Speed 2.5GT/s, Width x4, ASPM L0s, Latency L0 unlimited, L1 unlimited ClockPM- Suprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- Capabilities: [100] Virtual Channel <?>

Разработка под Linux.

P.S. Где-то здесь была похожая тема, но решение не было найдено.

С наилучшими пожеланиями, Игорь

2.6.32 версии ещё нельзя было больше чем один использовать. Сейчас - не знаю. Может допилили. Если допилили - тогда не знаю как, давно уже для ядра ничего не писал.

mi_estas
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.