ARM IO端口/內(nèi)存
這里簡(jiǎn)單說一下操作步驟:
本文引用地址:http://www.biyoush.com/article/201611/316619.htm1、申請(qǐng)
2、映射
3、訪問
4、釋放
具體操作操作步驟如下:
1、申請(qǐng)——request_mem_region
申請(qǐng)后在系統(tǒng)相當(dāng)于對(duì)已有資源做了個(gè)標(biāo)記,即本資源已經(jīng)申請(qǐng)占用,若相同資源再申請(qǐng)時(shí)內(nèi)核會(huì)報(bào)錯(cuò)。
2、映射———ioremap
通過ioremap才能將物理寄存器地址映射成虛擬地址方能于內(nèi)核中應(yīng)用,這里的好處是,可以通過基地址加偏移來訪問寄存器。
3、訪問
這里有特定的讀寫操作函數(shù)如writel etc.
4、釋放
映射完后要釋放資源使用到的函數(shù)為iounmap+release_mem_region
說明:有時(shí)不通過申請(qǐng)而直接映射訪問,只不過,這樣有點(diǎn)不規(guī)范,但內(nèi)核中的應(yīng)用還是很多,而且容易相互影響。
評(píng)論