Цитата(zltigo @ Jun 16 2008, 23:42)

Как-то все мутно изложено

Хотел просто покороче.
Имеются прерывания irq от rs485 (Это просто для информации).
Имеется быстрое регулярное прерывание от таймера fiq.
Каждое N-ое прерывание fiq надо вызвать софтовое прерывание (N=56). При этом прерывание софтовое выполняется достаточно долго (3-30 прерываний fiq) и необходимо чтобы прерывания fiq и irq были бы разрешены.
Ещё раз почитав думаю что это можно сделать двумя способами. 1 через swi. 2 посредством VIC с вызывом прерываний с софтовым вектором. Во втором случае необходимо использовать ключевое слово __nested. Хотя пока в голове туман.
Вопрос если я хочу воспользоваться swi, то такие вопросы:
1) как вызвать прерывание
2) как его разрешить
3) если я вызову в прерывании fiq, то оно будет обработано по выходу?
4) Почему в данном случае не надо сохранять SPSR_irq
Если я воспользуюсь irq, то вроде бы всё понятно.