реклама на сайте
подробности

 
 
> Sam7x256 и EMAC data abort ...., может кто сталкивался, как обрабатывать?
serwz
сообщение Feb 11 2009, 13:48
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 23
Регистрация: 17-11-05
Пользователь №: 10 989



Устройство на Sam7x256 в большой сетке периодически уходит в EMAC data abort.
Устанавливается бит SVMST_EMAC: Saved EMAC Abort Source, почему это случается
и как бороться, может кто сталкивался?
Как обрабатывать эту ситуацию ?
Если работать с устройством p2p, то работает днями без проблем.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Feb 11 2009, 15:57
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Ошибка OVR не связана с возникающим Data Abort.

Цитата(serwz @ Feb 11 2009, 18:52) *
По поводу обработчика исключений, читал разные мануалы и т.д. все пишут обрабатывается как стандартное прерывание.

Со стороны ядра - да, похоже на обычное прерывание. Но AIC к abort'ам никак не относится.
Go to the top of the page
 
+Quote Post
serwz
сообщение Feb 11 2009, 16:09
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 23
Регистрация: 17-11-05
Пользователь №: 10 989



Цитата(aaarrr @ Feb 11 2009, 19:57) *
Ошибка OVR не связана с возникающим Data Abort.


Со стороны ядра - да, похоже на обычное прерывание. Но AIC к abort'ам никак не относится.


Ну тогда совсем не понятно, откуда берется признак EMAC abort, что причина?
драйвер только читает память контроллера и анализирует уже пришедшие пакеты, при чет тут EMAC data abort?

Ладно.
Спасибо за ответы, еще раз проверю драйвер.
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 12 2009, 00:57
Сообщение #4


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(serwz @ Feb 11 2009, 18:09) *
драйвер только читает память контроллера и анализирует уже пришедшие пакеты, при чет тут EMAC data abort?

Вот вопросы и ответы которые могут быть полезны, и которые Вы сами могли задать и ответить:

Это не драйвер аборт вызвал, а EMAC самолично.
Почему? - потому что ему сказали складывать или брать данные с неверного адреса.
Кто ему так сказал? - по всей видимости проц.
Где он так сказал? - да где угодно (например при формировании TX пакета) - вылезли за границу буфера - затерли шапку другого буфера, EMAC взял эту шапку - а там каша вместо верного адреса - вот и аборт.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 02:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016