[問題] I/O Port練習(PCI Device)

看板C_and_CPP (C/C++)作者 (阿哩他命EX PLUS)時間7年前 (2018/06/20 15:41), 編輯推噓0(002)
留言2則, 2人參與, 7年前最新討論串1/1
各位好 目前正在練習 I/O Port方式存取PCI Device 經google後找到官方的相關function介紹: https://docs.microsoft.com/zh-tw/cpp/c-runtime-library/console-and-port-i-o I/O Port的存取是使用網頁中的_inp, _outp這類function嗎? 另外也看到這些function在VS2015後就不支援了(雖然我是使用VS2010) 那是否有其他方法? 另外關於存取PCI裝置 參考了下列網址 http://gdemon.blogspot.com/2008/07/pciprobing.html http://iorlvskyo.blogspot.com/2011/10/pci-configuration-space.html 文中提到可透過0XCF8來指定所要存取的PCI Device的Address 再透過0xCFC將Data讀出 而Address = 0x80000000 + (Bus << 16) + (Device << 11) + (Function << 8) + Index 所以是算出Address後丟到前面提到的function 再從0xCFC讀出? 不曉得這樣的流程對不對? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 202.39.226.12 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1529480514.A.19E.html

06/21 01:18, 7年前 , 1F
用inline asm, 或另外寫asm
06/21 01:18, 1F

06/21 17:13, 7年前 , 2F
改灌linux會輕鬆很多
06/21 17:13, 2F
文章代碼(AID): #1RAWL26U (C_and_CPP)
文章代碼(AID): #1RAWL26U (C_and_CPP)