mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
Device: remove _irq_attached flag, test with _irq == 0 instead
This commit is contained in:
parent
64df463a85
commit
a5e6f3213f
@ -91,8 +91,7 @@ Device::Device(const char *name,
|
||||
_name(name),
|
||||
_debug_enabled(false),
|
||||
// private
|
||||
_irq(irq),
|
||||
_irq_attached(false)
|
||||
_irq(irq)
|
||||
{
|
||||
sem_init(&_lock, 0, 1);
|
||||
|
||||
@ -109,7 +108,7 @@ Device::~Device()
|
||||
{
|
||||
sem_destroy(&_lock);
|
||||
|
||||
if (_irq_attached) {
|
||||
if (_irq) {
|
||||
unregister_interrupt(_irq);
|
||||
}
|
||||
}
|
||||
@ -128,20 +127,17 @@ Device::init()
|
||||
ret = register_interrupt(_irq, this);
|
||||
|
||||
if (ret != OK) {
|
||||
goto out;
|
||||
_irq = 0;
|
||||
}
|
||||
|
||||
_irq_attached = true;
|
||||
}
|
||||
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
void
|
||||
Device::interrupt_enable()
|
||||
{
|
||||
if (_irq_attached) {
|
||||
if (_irq) {
|
||||
up_enable_irq(_irq);
|
||||
}
|
||||
}
|
||||
@ -149,7 +145,7 @@ Device::interrupt_enable()
|
||||
void
|
||||
Device::interrupt_disable()
|
||||
{
|
||||
if (_irq_attached) {
|
||||
if (_irq) {
|
||||
up_disable_irq(_irq);
|
||||
}
|
||||
}
|
||||
|
||||
@ -209,8 +209,7 @@ protected:
|
||||
sem_t _lock; /**< lock to protect access to all class members (also for derived classes) */
|
||||
|
||||
private:
|
||||
int _irq;
|
||||
bool _irq_attached;
|
||||
int _irq; /**< if non-zero, it's a valid IRQ */
|
||||
|
||||
/** disable copy construction for this and all subclasses */
|
||||
Device(const Device &);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user