当前位置: 技术问答>linux和unix
驱动给地址写值的问题,大家看看
来源: 互联网 发布时间:2016-05-24
本文导语: 给一个地址address,给一个值s 将s写进address地址里,要怎么写? 不要直接给值? 会的回答,不要只是说理论,说理论的就别回答了。 | 用 check_mem_region(mem_addr, mem_size) 函数来检查该内存...
给一个地址address,给一个值s
将s写进address地址里,要怎么写?
不要直接给值?
会的回答,不要只是说理论,说理论的就别回答了。
将s写进address地址里,要怎么写?
不要直接给值?
会的回答,不要只是说理论,说理论的就别回答了。
|
用 check_mem_region(mem_addr, mem_size) 函数来检查该内存地址有没有被用到,
可以用的话调用函数 request_mem_region(mem_addr, mem_size, "设备名称") 申请该内存,成功的话,
调用 writeb(values, mem_addr),或者 writew(values, mem_addr),writel(values, mem_addr),
来在 mem_addr 地址 写入 value 值,三个函数分别为写入 8位,16位和32位的值。
最后需要调用 release_mem_region(mem_addr, mem_size) 函数来释放该段内存。
可以用的话调用函数 request_mem_region(mem_addr, mem_size, "设备名称") 申请该内存,成功的话,
调用 writeb(values, mem_addr),或者 writew(values, mem_addr),writel(values, mem_addr),
来在 mem_addr 地址 写入 value 值,三个函数分别为写入 8位,16位和32位的值。
最后需要调用 release_mem_region(mem_addr, mem_size) 函数来释放该段内存。
|
总线地址可以直接用: IOADDRESS(address) = values;直接使用