/* Remove IrLAP and all allocated memory. Stop any pending timers.  */
static void __irlap_close(struct irlap_cb *self)
/* Remove IrLAP and all allocated memory. Stop any pending timers.  */
static void __irlap_close(struct irlap_cb *self)
{
	IRDA_ASSERT(self != NULL, return;);
	IRDA_ASSERT(self->magic == LAP_MAGIC, return;);
	del_timer(&self->slot_timer);
	del_timer(&self->query_timer);
	del_timer(&self->discovery_timer);
	del_timer(&self->final_timer);
	del_timer(&self->poll_timer);
	del_timer(&self->wd_timer);
	del_timer(&self->backoff_timer);
	del_timer(&self->media_busy_timer);
	irlap_flush_all_queues(self);
	self->magic = 0;
	kfree(self);
}