函数逻辑报告 |
Source Code:arch\x86\kernel\apic\io_apic.c |
Create Date:2022-07-27 09:29:26 |
Last Modify:2020-03-16 21:24:45 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:Find a specific PCI IRQ entry.* Not an __init, possibly needed by modules
函数原型:int IO_APIC_get_PCI_irq_vector(int bus, int slot, int pin)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
int | bus | |
int | slot | |
int | pin |
1150 | best_ioapic等于负1, best_idx等于负1 |
1152 | Define the default level of output to be very little* This can be turned up by using apic=verbose for more* information and apic=debug for _lots_ of information.* apic_verbosity is defined in apic.c(APIC_DEBUG, "querying PCI -> IRQ mapping bus:%d, slot:%d, pin:%d.\n", bus, slot, pin) |
1156 | Define the default level of output to be very little* This can be turned up by using apic=verbose for more* information and apic=debug for _lots_ of information.* apic_verbosity is defined in apic.c(APIC_VERBOSE, "PCI BIOS passed nonexistent PCI bus %d!\n", bus) |
1158 | 返回:负1 |
1161 | 以i小于# of MP IRQ source entries 循环 |
1163 | found等于0 |
1169 | for_each_ioapic(ioapic_idx) |
1170 | 如果mpc_ioapic_id(ioapic_idx)恒等于dstapic或dstapic恒等于MP_APIC_ALL则 |
1175 | 如果非found则继续下一循环 |
1179 | irq等于pin_2_irq(i, ioapic_idx, dstirq, 0) |
1180 | 如果irq大于0且非IO_APIC_IRQ(irq)则继续下一循环 |
1193 | 如果best_idx小于0则 |
1195 | best_ioapic等于ioapic_idx |
1198 | 如果best_idx小于0则返回:负1 |
1201 | out : |
1202 | 返回:pin_2_irq(best_idx, best_ioapic, dstirq, IOAPIC_MAP_ALLOC) |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |