Добрый день

Встала задача написать драйвер под мой модуль, написанный на verilog, на кристалле Zynq 7020(плата Zedboard) под управлением ОС Linux.

Я всю свою рабочую деятельность занимался разработкой и программированием ПЛИС Altera, но начальство поставило задачу в этот раз реализовать что-нибудь из требуемого на Xilinx и сравнить по характеристикам и производительности

Я установил Vivado 2017.1 на Ubuntu 16.04

Мне удалось запустить образ PetaLinux под данную плату с моим проектом, сейчас встал вопрос о том, как перехватывать и регистрировать прерывания в драйвере, а затем самого сгенерировать прерывание на сторону вышестоящей программы.

я создал проект с генерацией статической библиотеки при компиляции в SDK, выбрав ОС LINUX(OS Platform)

у меня возникли следующие вопросы:
1. я не смог в SDK под кросскомпилятор arm-xilinx-linux-gnueabi-gcc(папка в SDK arm-xilinx-linux-gnueabi-, да и в других папках тоже) найти файлы для работы с прерываниями, а именно interrupt.h,irq.h, есть только пустой файл irqn.r

какие файлы необходимо подключать в SDK для работы с прерываниями под PetaLinux? как регистрировать и передавать прерывания дальше на уровень выше?

2. все прерывания заведены на процессорную системы IRQ_F2P[15:0], как мне добраться до них из-под PetaLinux???

3. я немного читал про ограничения самой PetaLinux, т.к. надо было получить результат побыстрее, а PetaLinux сразу встал под сгенерированную мною систему

может кто посоветует, где взять образ ОС Linux под Zedboard, где она бы не была так урезана, как PetaLinux

Буду очень благодарен, если скинете примеры по работе с прерываниями под ОС PetaLinux(либо Linux) под данный кристалл.

спасибо, жду ваших предложений