On Wed, May 25, 2022 at 2:18 AM C Smith via Xenomai <xenomai@xenomai.org> wrote: > We are using Xenomai 3.1.2 on kernel 4.19.229, X86 CPU > We have a (Moxa CP-104ul) serial card on an isolated PCI bus interrupt 17. > lspci -v confirms that the serial card is isolated and that no other > peripheral uses this interrupt. > > We have the 16550A serial driver loaded, and an external serial device > trying to initiate a serial connection, but no interrupts are being > generated. The interrupt counter in /proc/xenomai/irq stay at 0. > > [user@device~]$ cat /proc/xenomai/irq > IRQ CPU0 CPU1 CPU2 CPU3 > 17: 0 0 0 0 rtser2 > rtser3 rtser4 rtser5 > > As an experiment: if we enable the Azalia sound chip in the BIOS, and > load its Alsa sound driver, the Serial card will then share IRQ 17 > with that sound chip, and then the serial card works. The serial > interrupt counter is incrementing in /proc/xenomai/irq and our serial > peripheral can utilize the serial port OK.
I think enabling it in the BIOS is the key. Can you try keeping the sound driver disabled and only enable in the BIOS. > We don't want the sound driver enabled, but this test indicates that > 16550A somehow failed to enable its interrupt, whereas the sound > driver succeeded in doing so. > > How can we check a PIC, etc. to verify that the serial interrupt is > truly enabled when the 16550A driver is loaded alone? You can enable CONFIG_GENERIC_IRQ_DEBUGFS and then poke into /sys/kernel/debug/irq/. -- Thanks, //richard