新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > ARM IO端口/內(nèi)存

ARM IO端口/內(nèi)存

作者: 時間:2016-11-11 來源:網(wǎng)絡 收藏
linux在arm中并沒有IO端口概念,寄存器和內(nèi)存位于內(nèi)存空間的時候稱作IO內(nèi)存。

這里簡單說一下操作步驟:

本文引用地址:http://m.butianyuan.cn/article/201611/316619.htm

1、申請

2、映射

3、訪問

4、釋放

具體操作操作步驟如下:

1、申請——request_mem_region

申請后在系統(tǒng)相當于對已有資源做了個標記,即本資源已經(jīng)申請占用,若相同資源再申請時內(nèi)核會報錯。

2、映射———ioremap
通過ioremap才能將物理寄存器地址映射成虛擬地址方能于內(nèi)核中應用,這里的好處是,可以通過基地址加偏移來訪問寄存器。

3、訪問

這里有特定的讀寫操作函數(shù)如writel etc.

4、釋放

映射完后要釋放資源使用到的函數(shù)為iounmap+release_mem_region

說明:有時不通過申請而直接映射訪問,只不過,這樣有點不規(guī)范,但內(nèi)核中的應用還是很多,而且容易相互影響。



關鍵詞: ARMIO端口內(nèi)

評論


技術專區(qū)

關閉