Пример #1
0
void __exit cleanup_module(void)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 18)
	lirc_serial_exit();
#endif
#if defined(LIRC_ALLOW_MMAPPED_IO)
	if(iommap != 0)
	{
		release_mem_region(iommap, 8<<ioshift);
	}
	else
	{
		release_region(io, 8);
	}
#else
	release_region(io, 8);
#endif
	lirc_unregister_plugin(plugin.minor);
	dprintk("cleaned up module\n");
}
Пример #2
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;
}