px4io:Ensure proper lifecycle of registration of cdev

This commit is contained in:
David Sidrane 2021-09-24 13:52:27 -07:00 committed by Daniel Agar
parent 9ad0e5b357
commit f01cab3be1
1 changed files with 9 additions and 0 deletions

View File

@ -510,6 +510,14 @@ PX4IO::~PX4IO()
delete _interface;
}
/* In the case the task did not exit
* clean up the alternate device node
*/
if (_primary_pwm_device) {
unregister_driver(PWM_OUTPUT0_DEVICE_PATH);
_primary_pwm_device = false;
}
/* deallocate perfs */
perf_free(_perf_update);
perf_free(_perf_write);
@ -1217,6 +1225,7 @@ out:
/* clean up the alternate device node */
if (_primary_pwm_device) {
unregister_driver(PWM_OUTPUT0_DEVICE_PATH);
_primary_pwm_device = false;
}
/* tell the dtor that we are exiting */