pci配置空間讀取實例_第1頁
pci配置空間讀取實例_第2頁
pci配置空間讀取實例_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、原貼內(nèi)容:聽說PCI配置空間一共是256個字節(jié),0cf8-0cff只有8個字節(jié).那256個字節(jié)是放在什么地方的?內(nèi)存?在x86 AT兼容機上訪問PCI配置空間的方法是讀寫cf8h到cfch的10空 間。其中cf8h-cfbh是地址空間,cfch-cffh是數(shù)據(jù)空間。訪問的時候具體做法是 先把一個32bit的地址信息out到cf8h,然后再讀寫cfch的數(shù)據(jù)。這個32bit的地址信息的含義是這樣的,它包括了 PCI的bus號,device 號,dunction號以及register號。一個機器可以有256條PCI總線,一條總線上有 32個設(shè)備,一個設(shè)備可以有8個functiono在確定了了這3個

2、數(shù)以后,就能訪問 PCI配置空間了。一個設(shè)備可以是一個真正的PCI設(shè)備,也可以是一個PCI橋或者 是cardbus橋。他們的配置空間的各個byte的定義不同?,F(xiàn)在拿一個真正的設(shè)備 舉例。他的配置空間大小是256bytes,分成頭部和自定義部分。頭部中的各個特定 btyes是定死的,每個PCI設(shè)備都要實現(xiàn)。廠商號和設(shè)備號就是第一二個byteo通 過讀取他們就可以獲得相應(yīng)信息。你把這256字節(jié)和cf8h-cfch搞混了。后者是10端口,而前者是存在于PCI 設(shè)備上的,相當(dāng)于特殊的寄存器,并不占用10或者內(nèi)存空間。至于為PCI設(shè)備分配 內(nèi)存空間那又是另一個概念了。以下是一個PCI讀入函數(shù):;GET_

3、PCI:改變PCI配置空間信息;入口: CL/CX要讀入的寄存器也就是設(shè)備號,func號,寄存器號(不包括總線號);出口: AL/AX讀入值;破壞:AX, DXGET.PCI PROC NEARxchg ax,ex ;shl ecx,16 ;xchg ax, ex ;保存 axmov ax, 8000H :PCI地址的最高位置1來是的這次讀寫有效;詳細(xì)參見PCI標(biāo)準(zhǔn)文檔shl eax, 16 ;形成地址高16位,總線號0;這個總線號0與具體芯片組有關(guān)mov ax, ex ;讀入設(shè)備號,func號,寄存器號(低八位)and al, NOT 03h ;把bitO和bitl清零,表示是一個type。配置讀寫;typeO表示讀寫本bus設(shè)備;typel表示讀寫本bus上的PCI橋連接的那個bus的設(shè)備;具體看文檔;山此只能得到4的倍數(shù)的的配置空間里的bytes,但是不要緊;因為讀入 cfch-cffh 的是 32bits, =8*4;正好可以讀入不能訪問的bytesmov dx, OcfSh ;往 0cf8h 寫地址out dx, eaxadd dl, 4 ;0cfch 數(shù)據(jù)口,mov al, cland al, 03h ;取4個bytes中的需

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論