Changeset 20273 for trunk


Ignore:
Timestamp:
2010-03-18T14:55:14+01:00 (7 years ago)
Author:
blogic
Message:

[ifxmips] Bugfix: do not call request_irq() with interrupts disabled, signed off by Ithamar R. Adema

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ifxmips/patches-2.6.30/120-serial.patch

    r18082 r20273  
    1 Index: linux-2.6.30.8/drivers/serial/Kconfig 
     1Index: linux-2.6.30.10/drivers/serial/Kconfig 
    22=================================================================== 
    3 --- linux-2.6.30.8.orig/drivers/serial/Kconfig  2009-09-24 17:28:02.000000000 +0200 
    4 +++ linux-2.6.30.8/drivers/serial/Kconfig       2009-10-19 21:31:32.000000000 +0200 
     3--- linux-2.6.30.10.orig/drivers/serial/Kconfig 2009-12-04 07:00:07.000000000 +0100 
     4+++ linux-2.6.30.10/drivers/serial/Kconfig      2010-03-18 12:24:20.000000000 +0100 
    55@@ -1365,6 +1365,14 @@ 
    66        help 
     
    1818        tristate "Freescale QUICC Engine serial port support" 
    1919        depends on QUICC_ENGINE 
    20 Index: linux-2.6.30.8/drivers/serial/Makefile 
     20Index: linux-2.6.30.10/drivers/serial/Makefile 
    2121=================================================================== 
    22 --- linux-2.6.30.8.orig/drivers/serial/Makefile 2009-09-24 17:28:02.000000000 +0200 
    23 +++ linux-2.6.30.8/drivers/serial/Makefile      2009-10-19 21:31:32.000000000 +0200 
     22--- linux-2.6.30.10.orig/drivers/serial/Makefile        2009-12-04 07:00:07.000000000 +0100 
     23+++ linux-2.6.30.10/drivers/serial/Makefile     2010-03-18 12:24:20.000000000 +0100 
    2424@@ -77,3 +77,4 @@ 
    2525 obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o 
     
    2727 obj-$(CONFIG_SERIAL_QE) += ucc_uart.o 
    2828+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o 
    29 Index: linux-2.6.30.8/drivers/serial/ifxmips_asc.c 
     29Index: linux-2.6.30.10/drivers/serial/ifxmips_asc.c 
    3030=================================================================== 
    3131--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
    32 +++ linux-2.6.30.8/drivers/serial/ifxmips_asc.c 2009-10-19 21:41:27.000000000 +0200 
    33 @@ -0,0 +1,561 @@ 
     32+++ linux-2.6.30.10/drivers/serial/ifxmips_asc.c        2010-03-18 14:04:58.000000000 +0100 
     33@@ -0,0 +1,555 @@ 
    3434+/* 
    3535+ *  Based on drivers/char/serial.c, by Linus Torvalds, Theodore Ts'o. 
     
    259259+static int ifxmipsasc_startup(struct uart_port *port) 
    260260+{ 
    261 +       unsigned long flags; 
    262261+       int retval; 
    263262+ 
     
    272271+       ifxmips_w32(ifxmips_r32(port->membase + IFXMIPS_ASC_CON) | ASCCON_M_8ASYNC | ASCCON_FEN | ASCCON_TOEN | ASCCON_ROEN, port->membase + IFXMIPS_ASC_CON); 
    273272+ 
    274 +       local_irq_save(flags); 
    275 + 
    276273+       retval = request_irq(port->irq, ifxmipsasc_tx_int, IRQF_DISABLED, "asc_tx", port); 
    277274+       if (retval) { 
     
    293290+ 
    294291+       ifxmips_w32(ASC_IRNREN_RX_BUF | ASC_IRNREN_TX_BUF | ASC_IRNREN_ERR | ASC_IRNREN_TX, port->membase + IFXMIPS_ASC_IRNREN); 
    295 + 
    296 +       local_irq_restore(flags); 
    297292+       return 0; 
    298293+ 
     
    301296+err1: 
    302297+       free_irq(port->irq, port); 
    303 +       local_irq_restore(flags); 
    304298+       return retval; 
    305299+} 
Note: See TracChangeset for help on using the changeset viewer.