in particular:
- SW release version (in addition to the git hash)
- OS version (tag + git hash if exists)
- mcu version & revision & UUID
- toolchain version
The uuid can be disabled via parameter, it's enabled by default.
_global_pos_sub->update(&_global_pos_time, &global_pos); could return
false and in that case global_pos was not set but still accessed.
This is prevented by checking if timestamp == 0.
boards define BOARD_NAME, so board_name() is not necessary. HW_ARCH was
just a wrapper around board_name().
This patch simplifies to having only one common method px4_board_name().
1) Ensure if CONFIG_SERIAL_DMA is set that cdcacm uart_ops is initalized
with correct functions in correct slots.
This was detected only with PX4 build flags
2) C&P error from F7 would prevent CONFIG_STM32_SERIALBRK_BSDCOMPAT ifdefed
code from being included.
This is the fixes https://github.com/PX4/Firmware/issues/5710
by adding 2 concepts.
1) Allowing a board to define BOARD_HAS_SHARED_PWM_TIMERS
in this case the io_timeris will be initalized as the
led_pwm_timers - there is an assumptionm that the
number of io_timers == the number of led_pwm timers
2) Allowing a board to define BOARD_LED_PWM_RATE
To set an alternate frequency
Future expansion will require:
1) The ability to have a config with both the I2C RGB LED and
PWM RGB LED drivers loaded.
2) The higher level driver to create multiple instances of the
/dev/rgbld, to support internal and external User facing
RGB LED as supported in FMUv5