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

Ethernet HAL, редко подвисает передача. кто-то сталкивался?

stm32h743, hal+lwip. Очень редко заклинивает передачу при интенсивном обмене.

При заклиненной передаче вижу ситуацию: не очищен бит own в дескрипторе, освобождение которого ожидает драйвер (всего 4 дескриптора, остальные 3 дескриптора при этом очищены).

Если ручками бит own очищаю, передачу расклинивает. К сожалению не посмотрел какой дескриптор ожидает периферия, жду следующего появления глюка.

Кеш включен, MPU регионов с дескрипторами настроены по рекомендациям ST:

// ======= memory policy (ethernet tx/rx descriptors)
  MPU->RNR = 11;// region number
  MPU->RBAR = 0x3004001B;// base address
  MPU->RASR =   (0                   << MPU_RASR_XN_Pos) |// DisableExec
                (1                   << MPU_RASR_AP_Pos)   |//AccessPermission (1 - privilegied only)
                ((0)                 << MPU_RASR_TEX_Pos)  |//TypeExtField
                (0                   << MPU_RASR_S_Pos)    |//IsShareable
                (0                   << MPU_RASR_C_Pos)    |//IsCacheable
                (1                   << MPU_RASR_B_Pos)    |//IsBufferable
                (0                   << MPU_RASR_SRD_Pos)  |//SubRegionDisable
                (MPU_REGION_SIZE_512B<< MPU_RASR_SIZE_Pos)|//Size
                (1                   << MPU_RASR_ENABLE_Pos);//Enable

 

 

Кто-нибудь сталкивался с этим? Можно конечно механизм расклинивания дескрипторов для этой ситуации сделать, но хочется найти косяк и исправить по человечески.

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


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

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

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

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

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

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

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

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

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

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