From: lyx Date: Mon, 25 Jul 2011 07:33:35 +0000 (-0700) Subject: newton:modify bu92747 irda_irq type for fir EOF X-Git-Tag: firefly_0821_release~10089^2~6 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=656d3d289af8b66a88dc63c0050446363199b94c;p=firefly-linux-kernel-4.4.55.git newton:modify bu92747 irda_irq type for fir EOF --- diff --git a/drivers/net/irda/ir_serial.c b/drivers/net/irda/ir_serial.c index 76dfdf688e52..676340e5fd03 100755 --- a/drivers/net/irda/ir_serial.c +++ b/drivers/net/irda/ir_serial.c @@ -189,7 +189,9 @@ static irqreturn_t bu92747_irda_irq(int irqno, void *dev_id) if (irq_src & (REG_INT_DRX | FRM_EVT_RX_EOFRX | FRM_EVT_RX_RDE)) { bu92747_irda_do_rx(s); - tty_flip_buffer_push(s->port.state->port.tty); + if (!IS_FIR(s)) + tty_flip_buffer_push(s->port.state->port.tty); + } if ((irq_src & REG_INT_EOF) && (s->port.state->port.tty != NULL)) { @@ -366,7 +368,7 @@ static int bu92747_irda_startup(struct uart_port *port) INIT_WORK(&s->work, bu92747_irda_work); if (request_irq(s->irq, bu92747_irda_irq, - IRQ_TYPE_EDGE_FALLING, "bu92747_irda", s) < 0) { + IRQ_TYPE_LEVEL_LOW, "bu92747_irda", s) < 0) { dev_warn(s->dev, "cannot allocate irq %d\n", s->irq); s->irq = 0; destroy_workqueue(s->workqueue);