A legacy (IntA) interrupt works on an old CPU under Linux, but fails under the same Linux OS with a newer CPU in that system. I'm unsure if the problem is in the BIOS or in the Linux driver, as both are custom.
I have two separate systems running the same very old Linux OS with Xenomai 2 with the same interrupt source; one works and the other does not. In the system where the interrupt works, a old processor is used and the original IRQ 10 is re-mapped to IRQ 18 when the driver is inserted. In the new system where the interrupt doesn't work, I see the original IRQ 10 is not remapped.
I have two questions:
Why and how does the kernel remap the IRQ?
Why does the re-mapping allow the interrupt to work?