Re: a question about interrupt of IDE controller( bug 5637)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 	When the IDE controller works in legacy mode, the default IRQ for Ide0
> interface is 14 and IRQ for Ide1 interface is 15. The default interrupt
> mode for IRQ14/15 is edge/high. If the interrupt of some PCI devices is
> routed to IRQ14 or 15 and the interrupt mode is switched to Low/Level,
> an exception will appear.(If the I/O APIC is used as the Interrupt
> controller, IRQ14/15 nobody cared for. If the I8259 is used as the
> interrupt controller, maybe some IDE interrupts will be lost). 

Yes.

> 	In the Bug 5637: When the system works in acpi mode, there is no PCI
> interrupt router for IDE pci device in ACPI tables and OS will guess an
> interrupt for IDE PCI device, which is obtained from IDE PCI
> configuration space(The IRQ number is 15). OS will register the IRQ 15
> using acpi_register_gsi and switch the interrupt mode of IRQ 15 to
> Low/level. Because the interrupt mode for IRQ 15 is uncorrect, there
> will be interrupt flood and the system reports: IRQ 15 nobody cared.
> 	
> 	How to fix this issue? Is IRQ 14/15 always reserved for the IDE
> device?

No.

If the IDE device is in legacy mode then the IRQ is fixed at 14/15 for
the two channels. If it is in PCI mode then the PCI and ACPI routing
applies. This is defined in the header of the IDE device.

Class STORAGE:IDE

Programming class bit 0 -> channel 0 is legacy (0x1F0, 0x3F6, 14)
Programming class bit 2 -> channel 1 is legacy (0x170, 0x376. 15)

-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux