函数逻辑报告 |
Source Code:lib\logic_pio.c |
Create Date:2022-07-27 07:13:49 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:logic_pio_register_range - register logical PIO range for a host*@new_range: pointer to the IO range to be registered.* Returns 0 on success, the error code in case of failure.* Register a new IO range node in the IO range list.
函数原型:int logic_pio_register_range(struct logic_pio_hwaddr *new_range)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct logic_pio_hwaddr * | new_range |
39 | mmio_end等于0 |
41 | ret等于0 |
43 | 如果非new_range或非fwnode或非 range size populated 或flags恒等于LOGIC_PIO_INDIRECT且非ops则返回:负EINVAL |
50 | mutex_lock( & io_range_mutex) |
54 | 转到:end_register |
56 | 如果flags恒等于LOGIC_PIO_CPU_MMIO且flags恒等于LOGIC_PIO_CPU_MMIO则 |
66 | 否则如果flags恒等于LOGIC_PIO_INDIRECT且flags恒等于LOGIC_PIO_INDIRECT则 |
68 | iio_sz加等于 range size populated |
73 | 如果flags恒等于LOGIC_PIO_CPU_MMIO则 |
74 | 如果mmio_end加 range size populated 减1大于MMIO_UPPER_LIMIT则 |
76 | 如果mmio_end加SZ_64K减1大于MMIO_UPPER_LIMIT则 |
78 | 转到:end_register |
81 | 打印警告信息("Requested IO range too big, new size set to 64K\n") |
84 | 否则如果flags恒等于LOGIC_PIO_INDIRECT则 |
85 | 如果iio_sz加 range size populated 减1大于IO_SPACE_LIMIT则 |
87 | 转到:end_register |
90 | 否则 |
93 | 转到:end_register |
96 | 添加RCU链表项 |
98 | end_register : |
99 | mutex_unlock( & io_range_mutex) |
100 | 返回:ret |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |