Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: RDa 17. 05. 2013, 19:56:32
-
Nemáte někdo zkušenosti s psaním jednoduchých ovladačů pro Linux?
Potřeboval bych napsat modul, který zpřístupní paměť z naší PCIe karty jako zařízení, ze kterého můžu data vykopírovat přes cat nebo dd.
-
Kdysi jsem něco takového dělal, není to nic složitého, driver musí nejdřív zavolat register_chrdev
https://www.kernel.org/doc/htmldocs/kernel-api/API---register-chrdev.html
tím zaregistruješ tvoje znakové zařízení, se kterým budeš z userspace komunikovat, potom request_mem_region (nemůžu k tomu najít dokomentaci, možná to nějak přejmenovali), tím se zpřístupní (rezervuje) pamět karty v kernelu a nakonec remap_pfn_range
https://www.kernel.org/doc/htmldocs/kernel-api/API-remap-pfn-range.html
čímž se zpřístupní pamět kernelu do userspace.
V user space se to potom tváří jako znakové zařízení, na kterém se dá zavolat mmap a tím si zpřístupníš pamět karty.
Jinak doporučuju
https://www.kernel.org/doc/htmldocs/device-drivers.html