Перейти к содержанию
    

TI NDK получение пакетов из Ethernet`а

Добрые люди подскажите как надо получать пакеты от драйвера Ethernet`а, желательно llPacket`ом.

Как отправлять - понятно, там есть не двусмысленная ф-я:

 

void llPacketSend( Uint32 dev, PBM_Handle hPkt )

 

Но как принимать - загадка. Я понимаю что надо работать с пакетным буфером, надо как-то через очереди оформлять, но как это делается - не понятно, и в документациях я ничего не нащел.

 

Посмотрел примерную перечень команд для NE2000 совместимых драйверов - тоже самое, есть явная команда "отправить", но нет команды "принять".

 

Есть абсолютно недокументированная библиотечная ф-я

 

_extern void EtherRxPacket( PBM_Handle hPkt );

 

но нормально с ней работать т.ж. не получается.

 

 

 

 

 

lp1: _llPacketServiceCheck( i );

if( !(i & FLAG_EVENT_ETHERNET) ) goto lp1;

llPacketService();

 

Если мы выходим из цикла значит уже есть пакет?? Можно считать из PBMQ_rx??

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

_llPacketServiceCheck( i ) - устанавливает флаги (FLAG_EVENT_ETHERNET ...) только тогда, когда вызывается переодически (с периодом 100мс), при "polling`е" он эти флаги не устанавливает.

 

Теперь я пакеты получаю, но слишком медленно, а многое даже не получаю.

 

У кого какие мысли по уэтому поводу, может включенный стек мещает, или у процесса слышклм высокий приоритет и он мещает драйверу, HAL`у или что еще??? Неужели никто не работал с NDK.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...