Saya menerapkan driver PCIe, dan saya ingin memahami pada level apa interupsi dapat atau harus diaktifkan / dinonaktifkan. Saya sengaja tidak menentukan OS, karena saya berasumsi itu harus relevan untuk platform apa pun. Yang saya maksud dengan level adalah sebagai berikut:
- Kerangka kerja penanganan OS yang spesifik
- Interupsi dapat dinonaktifkan atau diaktifkan di register ruang konfigurasi PCI / PCIe, mis. Register PERINTAH
- Interupsi juga dapat ditutup pada level perangkat, misalnya kita dapat mengkonfigurasi perangkat tidak memicu interupsi tertentu ke host
Saya mengerti bahwa apa pun jenis interupsi yang digunakan pada PCIe (emulasi INTx, MSI atau MSI-X), itu harus dikirim ke OS host.
Jadi pertanyaan saya adalah - apakah kita benar-benar harus mengaktifkan atau menonaktifkan interupsi pada setiap layer, atau itu hanya cukup di dekat perangkat keras, misalnya dalam register PCI yang relevan?