static int lirc_serial_resume(struct platform_device *dev) { unsigned long flags; hardware_init_port(); local_irq_save(flags); /* Enable Interrupt */ do_gettimeofday(&lasttv); soutp(UART_IER, sinp(UART_IER)|UART_IER_MSI); off(); lirc_buffer_clear(&rbuf); local_irq_restore(flags); return 0; }
static int lirc_serial_resume(struct platform_device *dev) { unsigned long flags; if (hardware_init_port() < 0) { lirc_serial_exit(); return -EINVAL; } spin_lock_irqsave(&hardware[type].lock, flags); /* Enable Interrupt */ do_gettimeofday(&lasttv); soutp(UART_IER, sinp(UART_IER)|UART_IER_MSI); off(); lirc_buffer_clear(&rbuf); spin_unlock_irqrestore(&hardware[type].lock, flags); return 0; }