函数逻辑报告 |
Source Code:kernel\dma\swiotlb.c |
Create Date:2022-07-27 11:36:10 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Create a swiotlb mapping for the buffer at @phys, and in case of DMAing* to the device copy the data into it as well.
函数原型:bool swiotlb_map(struct device *dev, phys_addr_t *phys, dma_addr_t *dma_addr, size_t size, enum dma_data_direction dir, unsigned long attrs)
返回类型:bool
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct device * | dev | |
| phys_addr_t * | phys | |
| dma_addr_t * | dma_addr | |
| size_t | size | |
| enum dma_data_direction | dir | |
| unsigned long | attrs |
| 665 | trace_swiotlb_bounced(dev, * dma_addr, size, swiotlb_force) |
| 667 | 如果此条件成立可能性小(为编译器优化)(swiotlb_force == swiotlb=noforce )则 |
| 668 | dev_warn_ratelimited(dev, "Cannot do DMA to address %pa\n", phys) |
| 670 | 返回:false |
| 676 | 如果phys恒等于DMA_MAPPING_ERROR则返回:false |
| 680 | dma_addr等于__phys_to_dma(dev, * phys) |
| 681 | 如果此条件成立可能性小(为编译器优化)(!dma_capable(dev, * dma_addr, size, true))则 |
| 684 | 返回:false |
| 687 | 返回:true |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |