看板 LinuxDev 關於我們 聯絡資訊
https://github.com/grandemk/qemu_devices 你可以參考這個, 先在 qemu 上練習 pci driver 另外找 ldd 或是類似的書籍把 pci 那邊看過, 雖然過時, 但是原理都是一樣的 如果時程很趕還是找一下外包, 你沒碰過 driver, 這不是短時間可以上手的 ※ 引述《uniquelegend (back7590)》之銘言: : 最近突然需要實現用dma與fpga溝通, : 但由於一直以來都沒有碰有關driver的東西, : 而且有時間壓力, : 所以一直都是在網路上瞎找資料。 : (因為真的沒有按部就班的從基礎學起, : 所以可能會有非常嚴重的概念錯誤, : 請各位見諒。) : 想請問一些觀念問題或有沒有推薦的書? : 1. : 像是使用持續性(coherent)的DMA是在掛載driver時就將配置buffer的部分寫在driver中了; : 那如果是streaming這種,既然是每次動作時重新map,那是不是配置buffer的部分就是直接寫在軟體動作裡? : 2. : (這問題不知道會不會錯版) : fpga的部分等軟體分配完buffer後,將總線地址傳給fpga。 : 照著TLP格式來放入此地址,並將TLP丟給RQ/RC通道, : 就會自動判定成DMA請求並執行嗎? : (因為部分原因,所以pcie ip的部分沒有使用官方含有dma的ip,而是使用最基礎的Ultrasc : 目前只是要將fpga內的資料在軟體請求時,透過dma寫入主機。 : 但因為相關概念真的非常不足, : 也沒有人可以詢問,所以可能很多觀念有嚴重錯誤,煩請大家不吝指教。 -- 紙上得來終覺淺,絕知此事要躬行。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.148.76 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1645706697.A.17F.html ※ 編輯: descent (1.200.148.76 臺灣), 02/24/2022 20:47:29
uniquelegend: 好的!謝謝您的幫忙!我會去看看! 02/24 22:29
uniquelegend: 因為我是碩生 所以目前只能自己嘗試摸索 02/24 22:29
hizuki: 過時了,現在有pci device內的mem的map api 02/25 13:14