static irqreturn_t sir_interrupt(int irq, void *dev_id);
static void send_space(unsigned long len);
static void send_pulse(unsigned long len);
-static int init_hardware(void);
+static void init_hardware(void);
static void drop_hardware(void);
/* Initialisation */
-static int init_port(void);
-static void drop_port(void);
static inline unsigned int sinp(int offset)
{
}
}
-static int init_hardware(void)
+static void init_hardware(void)
{
unsigned long flags;
/* turn on UART */
outb(UART_MCR_DTR | UART_MCR_RTS | UART_MCR_OUT2, io + UART_MCR);
spin_unlock_irqrestore(&hardware_lock, flags);
- return 0;
}
static void drop_hardware(void)
/* SECTION: Initialisation */
-static int init_port(void)
+static int init_sir_ir(void)
{
int retval;
}
pr_info("I/O port 0x%.4x, IRQ %d.\n", io, irq);
- return 0;
-}
-
-static void drop_port(void)
-{
- del_timer_sync(&timerlist);
-}
-
-static int init_sir_ir(void)
-{
- int retval;
-
- retval = init_port();
- if (retval < 0)
- return retval;
init_hardware();
+
return 0;
}
static int sir_ir_remove(struct platform_device *dev)
{
drop_hardware();
- drop_port();
+ del_timer_sync(&timerlist);
return 0;
}