Windriver PCI大内存分配说明

在使用windriver进行驱动开发时,不可避免地会使用到内存分配的功能,这里先介绍下jungo公司的技术手册

https://www.jungo.com/st/support/windriver-technical-documents/

其他的相关文档在juno官网上都可以搜索到,非常重要。

 

这里的功能在technical-docunments(简称TD)手册的第1.3节中有具体说明

Technical Document #3: Preallocating contiguous DMA buffers on Windows

; Host-to-device DMA buffer:
HKR,, "DmaToDeviceCount",0x00010001,0x04       ; Number of preallocated DMA_TO_DEVICE buffers 
HKR,, "DmaToDeviceBytes",0x00010001,0x100000   ; Buffer size, in bytes
HKR,, "DmaToDeviceOptions",0x00010001,0x41     ; DMA flags (0x40=DMA_TO_DEVICE
                                               ; + 0x1=DMA_KERNEL_BUFFER_ALLOC)
                
; Device-to-host DMA buffer:
HKR,, "DmaFromDeviceCount",0x00010001,0x04     ; Number of preallocated DMA_FROM_DEVICE buffers 
HKR,, "DmaFromDeviceBytes",0x00010001,0x100000 ; Buffer size, in bytes
HKR,, "DmaFromDeviceOptions",0x00010001,0x21   ; DMA flags (0x20=DMA_FROM_DEVICE
                                               ; + 0x1=DMA_KERNEL_BUFFER_ALLOC)

这里想说明的是关于HKR的配置:

配置一:

DmaToDeviceCount指的是需要分配的内存数目,0x00010001是校验位,0x4是具体的分配数目

配置二:

DmaToDeviceBytes指的是需要分配的内存大小,后面的0x100000,这里0x表示16位,即1048576比特,约100MB的大小

配置一:

DmaFromDeviceOptions指的是分配的内存的h使用方向,0x41表示的是从主机到设备,0x21表示从设备到主机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值