Чем отличается написание драйвера для PCI устройства в linux от написания драйвера для PCI-E устройства?
Не могу найти понятного мануала по написанию драйвера PCI-E устройства под линукс, все примеры под обычный PCI. Особенно интересуют моменты: инициализация нескольких устройств на одной шине (один мастер, два слейва); обработка прерываний каждым из них; режим dma. Дайте, пожалуйста, ссылки на примеры. Заранее благодарен.
Мне бы описание. Опыта разработки нет. Можно ли сделать так, чтобы одно устройство-мастер давало команду устройству-слейву1 на dma передачу информации в устройство-слейв2?
> Мне бы описание.
Стандарт PCI-E будет вашим описанием.
> Можно ли сделать так, чтобы одно устройство-мастер давало команду устройству-слейву1 на dma передачу информации в устройство-слейв2
Обычно в контексте PCI говорят о бас-мастерах и всех остальных.
Вам нужно, чтобы одно устройство давало команду другому непосредственно через PCI, или через драйвер хостовой ОС?
Обмен таким образом должен выглядеть: Мастер с помощью дма дает команду слейву1 передать данные в слейв 2. Затем слейв 1 передает данные в слейв 2 посредствам дма.