parent
664d0036c8
commit
770157fea0
|
@ -170,7 +170,7 @@ Irq_session_component::Irq_session_component(Cap_session *cap_session,
|
||||||
PERR("Unavailable IRQ %lx requested", irq_number);
|
PERR("Unavailable IRQ %lx requested", irq_number);
|
||||||
throw Root::Invalid_args();
|
throw Root::Invalid_args();
|
||||||
}
|
}
|
||||||
|
|
||||||
long irq_trigger = Arg_string::find_arg(args, "irq_trigger").long_value(-1);
|
long irq_trigger = Arg_string::find_arg(args, "irq_trigger").long_value(-1);
|
||||||
irq_trigger = irq_trigger == -1 ? 0 : irq_trigger;
|
irq_trigger = irq_trigger == -1 ? 0 : irq_trigger;
|
||||||
|
|
||||||
|
@ -216,10 +216,8 @@ void Irq_session_component::wait_for_irq()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Irq_session_component::~Irq_session_component()
|
Irq_session_component::~Irq_session_component() {
|
||||||
{
|
_proxy->remove_sharer(); }
|
||||||
PERR("Implement me, immediately!");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/***************************************
|
/***************************************
|
||||||
|
|
|
@ -196,6 +196,12 @@ class Genode::Irq_proxy : public THREAD,
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual void remove_sharer()
|
||||||
|
{
|
||||||
|
Lock::Guard lock_guard(_mutex);
|
||||||
|
--_num_sharers;
|
||||||
|
}
|
||||||
|
|
||||||
template <typename PROXY>
|
template <typename PROXY>
|
||||||
static PROXY *get_irq_proxy(long irq_number, Range_allocator *irq_alloc = 0)
|
static PROXY *get_irq_proxy(long irq_number, Range_allocator *irq_alloc = 0)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue