Sorry for the large patch :)
- move cleanup into destructor (this was done on the wrong task before)
- move init into init() method
- sensor & peripheral reset do not start/stop fmu anymore
- remove err & errx (they do not release the lock and could lead to dead-
locks)
Provides:
- thread-safety for module start/stop
- some shared code for module start/stop. Should also be less prone to
errors.
- constructor & destructors are called from within the new module thread
- can be used for work queue & thread modules
- strutured & formal way for module printf usage & module documentation
Limitation:
- supports only modules with one instance (eg. not mavlink)
This is part 2 of the fix. The tool that extracts the nuttx
git tag was broken by a new tag added the did not match
the form nuttx-M.mm. To the value was printed as
OS: NuttX
OS version: 0.0.0 c0 (192)
Once that issue was fixed, it was apparent that recent
changes to version.c return the values as base 10, before
it was hex. This fixes the formatting.
This is part one of a fix for cascading failure. The NuttX
nuttx repos was tagged with upstream_7.18+ and broke the tag
extraction that was expecting nuttx-M.mm
previously, get_devname() was used as the I2C device path, but on NuttX,
get_devname() is the device file which the driver creates. This patch
changes it, so the sematics are the same as on NuttX: both now use _bus
to decide to which I2C bus device to talk to.
I did not see any other use-cases than the led on ocpoc.
Add -D__DF_RPI in posix_rpi_common.cmake
Add rpi_rc_in and rpi_pca9685_pwm_out driver in posix_rpi_common.cmake
Rename posix_rpi_cross_without_navio_or_pxfmini to posix_rpi_cross_no_shield.cmake