Hi,
In general I would check ELCR (I/O port register 0x4d0) to check if it is correctly programmed to EDGE/LEVEL (it should be edge)
Also, how the Linux is supposed to detect the I/O port irq? I think you need some PNP device in ACPI to let linux infer the IRQ.
I would also try to disable the IRQ from SoC, you just need to check how they are enabled (sorry not an expert here) and also I would use the legacy 0x3f8 instead.
Thanks Rudolf