diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c
index 03b495c2de14537b9f46109b40c2c96a47d2723a..04cc88cc528cec7eb742eee9e5e952e3662be502 100644
--- a/drivers/serial/imx.c
+++ b/drivers/serial/imx.c
@@ -403,7 +403,8 @@ static int imx_startup(struct uart_port *port)
 	if (retval) goto error_out2;
 
 	retval = request_irq(sport->rtsirq, imx_rtsint,
-			     IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
+			     (sport->rtsirq < IMX_IRQS) ? 0 :
+			       IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
 			     DRIVER_NAME, sport);
 	if (retval) goto error_out3;