Function report |
Source Code:arch\x86\kernel\apic\io_apic.c |
Create Date:2022-07-28 08:29:55 |
Last Modify:2020-03-16 21:24:45 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Find a specific PCI IRQ entry.* Not an __init, possibly needed by modules
Proto:int IO_APIC_get_PCI_irq_vector(int bus, int slot, int pin)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
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 | Return -1 |
1161 | When i < # of MP IRQ source entries cycle |
1163 | found = 0 |
1169 | for_each_ioapic(ioapic_idx) |
1170 | If mpc_ioapic_id(ioapic_idx) == dstapic || dstapic == MP_APIC_ALL Then |
1172 | found = 1 |
1173 | Break |
1175 | If Not found Then Continue |
1179 | irq = pin_2_irq(i, ioapic_idx, dstirq, 0) |
1180 | If irq > 0 && Not IO_APIC_IRQ(irq) Then Continue |
1193 | If best_idx < 0 Then |
1195 | best_ioapic = ioapic_idx |
1198 | If best_idx < 0 Then Return -1 |
1201 | out : |
1202 | Return pin_2_irq(best_idx, best_ioapic, dstirq, IOAPIC_MAP_ALLOC) |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |