Browse Source

ROMFS handle bl_update generically

- include all available legacy bootloaders
release/1.12
Daniel Agar 4 years ago committed by Lorenz Meier
parent
commit
f8eaa6e46b
  1. 9
      .ci/Jenkinsfile-hardware
  2. 28
      ROMFS/CMakeLists.txt
  3. 5
      ROMFS/px4fmu_common/extras/README.txt
  4. 16
      ROMFS/px4fmu_common/init.d/rcS
  5. BIN
      boards/airmind/mindpx-v2/bootloader/airmind_mindpx-v2_bootloader.bin
  6. BIN
      boards/av/x-v1/bootloader/av_x-v1_bootloader.bin
  7. BIN
      boards/bitcraze/crazyflie/bootloader/bitcraze_crazyflie_bootloader.bin
  8. 4
      boards/bitcraze/crazyflie/default.cmake
  9. BIN
      boards/bitcraze/crazyflie21/bootloader/bitcraze_crazyflie21_bootloader.bin
  10. 11
      boards/bitcraze/crazyflie21/default.cmake
  11. 3
      boards/bitcraze/crazyflie21/src/spi.cpp
  12. 19
      boards/cuav/nora/init/rc.board_defaults
  13. 19
      boards/cuav/x7pro/init/rc.board_defaults
  14. 18
      boards/cubepilot/cubeorange/init/rc.board_defaults
  15. BIN
      boards/cubepilot/io-v2/bootloader/cubepilot_io-v2_bootloader.bin
  16. 20
      boards/holybro/durandal-v1/init/rc.board_defaults
  17. BIN
      boards/holybro/kakutef7/bootloader/holybro_kakutef7_bootloader.bin
  18. BIN
      boards/holybro/pix32v5/bootloader/holybro_pix32v5_bootloader.bin
  19. BIN
      boards/modalai/fc-v1/bootloader/modalai_fc-v1_bootloader.bin
  20. 19
      boards/mro/ctrl-zero-h7-oem/init/rc.board_defaults
  21. 19
      boards/mro/ctrl-zero-h7/init/rc.board_defaults
  22. 19
      boards/mro/pixracerpro/init/rc.board_defaults
  23. BIN
      boards/mro/x21/bootloader/mro_x21_bootloader.bin
  24. BIN
      boards/nxp/fmuk66-e/bootloader/nxp_fmuk66-e_bootloader.bin
  25. 2
      boards/nxp/fmuk66-e/default.cmake
  26. BIN
      boards/nxp/fmuk66-v3/bootloader/nxp_fmuk66-v3_bootloader.bin
  27. 2
      boards/nxp/fmuk66-v3/default.cmake
  28. BIN
      boards/omnibus/f4sd/bootloader/omnibus_f4sd_bootloader.bin
  29. BIN
      boards/px4/fmu-v2/bootloader/px4_fmu-v2_bootloader.bin
  30. 1
      boards/px4/fmu-v2/default.cmake
  31. 23
      boards/px4/fmu-v2/init/rc.board_defaults
  32. BIN
      boards/px4/fmu-v3/bootloader/px4_fmu-v3_bootloader.bin
  33. 23
      boards/px4/fmu-v3/init/rc.board_defaults
  34. BIN
      boards/px4/fmu-v4/bootloader/px4_fmu-v4_bootloader.bin
  35. BIN
      boards/px4/fmu-v4pro/bootloader/px4_fmu-v4pro_bootloader.bin
  36. BIN
      boards/px4/fmu-v5/bootloader/px4_fmu-v5_bootloader.bin
  37. BIN
      boards/px4/fmu-v5x/bootloader/px4_fmu-v5x_bootloader.bin
  38. 4
      boards/px4/fmu-v5x/default.cmake
  39. BIN
      boards/px4/io-v2/bootloader/px4_io-v2_bootloader.bin
  40. BIN
      boards/uvify/core/bootloader/uvify_core_bootloader.bin
  41. 6
      cmake/px4_add_board.cmake
  42. 27
      src/systemcmds/bl_update/CMakeLists.txt

9
.ci/Jenkinsfile-hardware

@ -258,6 +258,7 @@ pipeline { @@ -258,6 +258,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
@ -333,6 +334,7 @@ pipeline { @@ -333,6 +334,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
}
@ -407,6 +409,7 @@ pipeline { @@ -407,6 +409,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 13000"' // generic vtol standard
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
@ -482,6 +485,7 @@ pipeline { @@ -482,6 +485,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
@ -560,6 +564,7 @@ pipeline { @@ -560,6 +564,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "px4io forceupdate 14662 /etc/extras/px4_io-v2_default.bin" || true' // force px4io update
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
@ -635,6 +640,7 @@ pipeline { @@ -635,6 +640,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic quadcopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
}
@ -713,6 +719,7 @@ pipeline { @@ -713,6 +719,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set IMU_GYRO_RATEMAX 250"' // limit cpu usage
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set MAV_0_CONFIG 0"' // limit cpu usage
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
}
@ -787,6 +794,7 @@ pipeline { @@ -787,6 +794,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic vtol standardulticopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
}
@ -941,6 +949,7 @@ pipeline { @@ -941,6 +949,7 @@ pipeline {
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set CBRK_BUZZER 782097"' // disable buzzer
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOCONFIG 2"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_AUTOSTART 4001"' // generic multicopter
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param set SYS_BL_UPDATE 1"' // update bootloader
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "param save"'
sh './Tools/HIL/run_nsh_cmd.py --device `find /dev/serial -name *usb-*` --cmd "reboot" || true' // reboot to apply
}

28
ROMFS/CMakeLists.txt

@ -31,11 +31,12 @@ @@ -31,11 +31,12 @@
#
############################################################################
message(STATUS "ROMFS: ${config_romfs_root}")
set(romfs_src_dir ${PX4_SOURCE_DIR}/ROMFS/${config_romfs_root})
set(romfs_gen_root_dir ${PX4_BINARY_DIR}/etc)
file(RELATIVE_PATH romfs_path_relative ${PX4_SOURCE_DIR} ${romfs_src_dir})
message(STATUS "ROMFS: ${romfs_path_relative}")
set_property(GLOBAL PROPERTY PX4_ROMFS_FILES)
set_property(GLOBAL PROPERTY PX4_ROMFS_CMAKE_FILES)
@ -149,9 +150,22 @@ if(config_io_board) @@ -149,9 +150,22 @@ if(config_io_board)
copy_px4io_bin
${fw_io_bin}
)
file(RELATIVE_PATH iofw_file_relative ${PX4_SOURCE_DIR} ${fw_io_bin})
message(STATUS "ROMFS: Adding ${iofw_file_relative} -> /etc/extras/${config_io_board}.bin")
endif()
if(config_build_bootloader)
# board bootloader (built or included)
if(TARGET copy_bootloader_bin)
if(board_bootloader_firmware)
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${board_bootloader_firmware})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
else()
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${bootloader_bin})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
endif()
list(APPEND extras_dependencies
copy_bootloader_bin
${bootloader_bin}
@ -162,7 +176,8 @@ endif() @@ -162,7 +176,8 @@ endif()
# optional board architecture defaults
set(board_arch_rc_file "rc.board_arch_defaults")
if(EXISTS "${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file}")
message(STATUS "ROMFS: Adding ${board_arch_rc_file}")
file(RELATIVE_PATH rc_file_relative ${PX4_SOURCE_DIR} ${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file})
message(STATUS "ROMFS: Adding ${rc_file_relative} -> /etc/init.d/${board_arch_rc_file}")
add_custom_command(
OUTPUT
@ -193,7 +208,8 @@ list(APPEND OPTIONAL_BOARD_RC @@ -193,7 +208,8 @@ list(APPEND OPTIONAL_BOARD_RC
foreach(board_rc_file ${OPTIONAL_BOARD_RC})
if(EXISTS "${PX4_BOARD_DIR}/init/${board_rc_file}")
message(STATUS "ROMFS: Adding ${board_rc_file}")
file(RELATIVE_PATH rc_file_relative ${PX4_SOURCE_DIR} ${PX4_BOARD_DIR}/init/${board_rc_file})
message(STATUS "ROMFS: Adding ${rc_file_relative} -> /etc/init.d/${board_rc_file}")
add_custom_command(
OUTPUT
@ -221,7 +237,7 @@ if(config_uavcan_peripheral_firmware) @@ -221,7 +237,7 @@ if(config_uavcan_peripheral_firmware)
foreach(uavcan_peripheral_config ${config_uavcan_peripheral_firmware})
# include the px4io binary in ROMFS
message(STATUS "ROMFS: Building and including UAVCAN peripheral ${uavcan_peripheral_config}")
message(STATUS "ROMFS: Adding UAVCAN peripheral ${uavcan_peripheral_config} -> /etc/uavcan/fw/")
ExternalProject_Add(build_${uavcan_peripheral_config}
SOURCE_DIR ${CMAKE_SOURCE_DIR}
DOWNLOAD_COMMAND ""

5
ROMFS/px4fmu_common/extras/README.txt

@ -1,5 +0,0 @@ @@ -1,5 +0,0 @@
px4fmuv3_bl.bin: Bootloader binary of the PX4 Bootloader
(https://github.com/PX4/Bootloader)
based on commit 184b813699a9cfd6f43a5a21556a06b4372baf5f
for the target px4fmuv3_bl

16
ROMFS/px4fmu_common/init.d/rcS

@ -549,6 +549,22 @@ else @@ -549,6 +549,22 @@ else
. ${R}etc/init.d/rc.autostart.post
fi
#
# Bootloader upgrade
#
if param compare -s SYS_BL_UPDATE 1
then
if [ -f "/etc/extras/bootloader.bin" ]
then
param set SYS_BL_UPDATE 0
param save
echo "bootloader update..."
bl_update "/etc/extras/bootloader.bin"
echo "bootloader update done, rebooting"
reboot
fi
fi
if ! param compare SYS_PARAM_VER ${PARAM_DEFAULTS_VER}
then
echo "Switched to different parameter version. Resetting parameters."

BIN
boards/airmind/mindpx-v2/bootloader/airmind_mindpx-v2_bootloader.bin

Binary file not shown.

BIN
boards/av/x-v1/bootloader/av_x-v1_bootloader.bin

Binary file not shown.

BIN
boards/bitcraze/crazyflie/bootloader/bitcraze_crazyflie_bootloader.bin

Binary file not shown.

4
boards/bitcraze/crazyflie/default.cmake

@ -14,8 +14,8 @@ px4_add_board( @@ -14,8 +14,8 @@ px4_add_board(
barometer/lps25h
distance_sensor/vl53l0x
gps
magnetometer/akm/ak8963
imu/invensense/mpu9250
magnetometer/akm/ak8963
optical_flow/pmw3901
pwm_out
MODULES
@ -45,7 +45,7 @@ px4_add_board( @@ -45,7 +45,7 @@ px4_add_board(
#bl_update
dmesg
dumpfile
esc_calib
#esc_calib
hardfault_log
i2cdetect
led_control

BIN
boards/bitcraze/crazyflie21/bootloader/bitcraze_crazyflie21_bootloader.bin

Binary file not shown.

11
boards/bitcraze/crazyflie21/default.cmake

@ -11,12 +11,12 @@ px4_add_board( @@ -11,12 +11,12 @@ px4_add_board(
ROMFSROOT px4fmu_common
CONSTRAINED_FLASH
DRIVERS
barometer/bmp388
distance_sensor/vl53l1x
gps
imu/bosch/bmi088/bmi088_i2c
optical_flow/pmw3901
pwm_out
imu/bosch/bmi088/bmi088_i2c
barometer/bmp388
MODULES
attitude_estimator_q
#camera_feedback
@ -24,7 +24,8 @@ px4_add_board( @@ -24,7 +24,8 @@ px4_add_board(
dataman
ekf2
events
gyro_fft
flight_mode_manager
#gyro_fft
land_detector
landing_target_estimator
load_mon
@ -40,10 +41,10 @@ px4_add_board( @@ -40,10 +41,10 @@ px4_add_board(
sensors
#temperature_compensation
SYSTEMCMDS
bl_update
#bl_update
dmesg
dumpfile
esc_calib
#esc_calib
hardfault_log
i2cdetect
led_control

3
boards/bitcraze/crazyflie21/src/spi.cpp

@ -49,15 +49,14 @@ @@ -49,15 +49,14 @@
#include <stm32_gpio.h>
#include "board_config.h"
#include <px4_arch/spi_hw_description.h>
#include <drivers/drv_sensor.h>
#include <nuttx/spi/spi.h>
constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
initSPIBus(SPI::Bus::SPI1, {
initSPIDevice(DRV_FLOW_DEVTYPE_PMW3901, SPI::CS{GPIO::PortB, GPIO::Pin4}),
initSPIDevice(SPIDEV_MMCSD(0), SPI::CS{GPIO::PortC, GPIO::Pin12}),
initSPIDevice(DRV_FLOW_DEVTYPE_PMW3901, SPI::CS{GPIO::PortB, GPIO::Pin4}),
initSPIDevice(DRV_DEVTYPE_UNUSED, SPI::CS{GPIO::PortB, GPIO::Pin5}),
}),
};

19
boards/cuav/nora/init/rc.board_defaults

@ -3,25 +3,6 @@ @@ -3,25 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/cuav_nora_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 18
param set-default BAT1_V_DIV 18
param set-default BAT2_V_DIV 18

19
boards/cuav/x7pro/init/rc.board_defaults

@ -3,25 +3,6 @@ @@ -3,25 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/cuav_x7pro_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 18
param set-default BAT1_V_DIV 18
param set-default BAT2_V_DIV 18

18
boards/cubepilot/cubeorange/init/rc.board_defaults

@ -3,24 +3,6 @@ @@ -3,24 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/cubepilot_cubeorange_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 10.1
param set-default BAT1_V_DIV 10.1

BIN
boards/cubepilot/io-v2/bootloader/cubepilot_io-v2_bootloader.bin

Binary file not shown.

20
boards/holybro/durandal-v1/init/rc.board_defaults

@ -3,25 +3,5 @@ @@ -3,25 +3,5 @@
# Holybro Durandal V1 specific board defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/holybro_durandal-v1_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
# Enable IMU thermal control
param set-default SENS_EN_THERMAL 1

BIN
boards/holybro/kakutef7/bootloader/holybro_kakutef7_bootloader.bin

Binary file not shown.

BIN
boards/holybro/pix32v5/bootloader/holybro_pix32v5_bootloader.bin

Binary file not shown.

BIN
boards/modalai/fc-v1/bootloader/modalai_fc-v1_bootloader.bin

Binary file not shown.

19
boards/mro/ctrl-zero-h7-oem/init/rc.board_defaults

@ -3,25 +3,6 @@ @@ -3,25 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/mro_ctrl-zero-h7-oem_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 10.1
param set-default BAT1_V_DIV 10.1

19
boards/mro/ctrl-zero-h7/init/rc.board_defaults

@ -3,25 +3,6 @@ @@ -3,25 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/mro_ctrl-zero-h7_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 10.1
param set-default BAT1_V_DIV 10.1

19
boards/mro/pixracerpro/init/rc.board_defaults

@ -3,25 +3,6 @@ @@ -3,25 +3,6 @@
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/mro_pixracerpro_bootloader.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE
param set-default BAT_V_DIV 10.1
param set-default BAT1_V_DIV 10.1

BIN
boards/mro/x21/bootloader/mro_x21_bootloader.bin

Binary file not shown.

BIN
boards/nxp/fmuk66-e/bootloader/nxp_fmuk66-e_bootloader.bin

Binary file not shown.

2
boards/nxp/fmuk66-e/default.cmake

@ -82,7 +82,7 @@ px4_add_board( @@ -82,7 +82,7 @@ px4_add_board(
vmount
vtol_att_control
SYSTEMCMDS
bl_update
#bl_update
#dmesg
dumpfile
esc_calib

BIN
boards/nxp/fmuk66-v3/bootloader/nxp_fmuk66-v3_bootloader.bin

Binary file not shown.

2
boards/nxp/fmuk66-v3/default.cmake

@ -82,7 +82,7 @@ px4_add_board( @@ -82,7 +82,7 @@ px4_add_board(
vmount
vtol_att_control
SYSTEMCMDS
bl_update
#bl_update
#dmesg
dumpfile
esc_calib

BIN
boards/omnibus/f4sd/bootloader/omnibus_f4sd_bootloader.bin

Binary file not shown.

BIN
boards/px4/fmu-v2/bootloader/px4_fmu-v2_bootloader.bin

Binary file not shown.

1
boards/px4/fmu-v2/default.cmake

@ -8,7 +8,6 @@ px4_add_board( @@ -8,7 +8,6 @@ px4_add_board(
ARCHITECTURE cortex-m4
CONSTRAINED_MEMORY
ROMFSROOT px4fmu_common
BOOTLOADER ${PX4_SOURCE_DIR}/ROMFS/px4fmu_common/extras/px4fmuv3_bl.bin
IO px4_io-v2_default
#TESTING
#UAVCAN_INTERFACES 2

23
boards/px4/fmu-v2/init/rc.board_defaults

@ -1,23 +0,0 @@ @@ -1,23 +0,0 @@
#!/bin/sh
#
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/px4fmuv3_bl.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE

BIN
boards/px4/fmu-v3/bootloader/px4_fmu-v3_bootloader.bin

Binary file not shown.

23
boards/px4/fmu-v3/init/rc.board_defaults

@ -1,23 +0,0 @@ @@ -1,23 +0,0 @@
#!/bin/sh
#
# board specific defaults
#------------------------------------------------------------------------------
#
# Bootloader upgrade
#
set BL_FILE /etc/extras/px4fmuv3_bl.bin
if [ -f $BL_FILE ]
then
if param compare SYS_BL_UPDATE 1
then
param set SYS_BL_UPDATE 0
param save
echo "BL update..."
bl_update $BL_FILE
echo "BL update done"
reboot
fi
fi
unset BL_FILE

BIN
ROMFS/px4fmu_common/extras/px4fmuv3_bl.bin → boards/px4/fmu-v4/bootloader/px4_fmu-v4_bootloader.bin

Binary file not shown.

BIN
boards/px4/fmu-v4pro/bootloader/px4_fmu-v4pro_bootloader.bin

Binary file not shown.

BIN
boards/px4/fmu-v5/bootloader/px4_fmu-v5_bootloader.bin

Binary file not shown.

BIN
boards/px4/fmu-v5x/bootloader/px4_fmu-v5x_bootloader.bin

Binary file not shown.

4
boards/px4/fmu-v5x/default.cmake

@ -37,13 +37,13 @@ px4_add_board( @@ -37,13 +37,13 @@ px4_add_board(
imu/invensense/icm20602
imu/invensense/icm42688p
irlock
lights/blinkm
#lights/blinkm
lights/rgbled
lights/rgbled_ncp5623c
magnetometer # all available magnetometer drivers
optical_flow # all available optical flow drivers
#osd
pca9685
#pca9685
pca9685_pwm_out
power_monitor/ina226
#protocol_splitter

BIN
boards/px4/io-v2/bootloader/px4_io-v2_bootloader.bin

Binary file not shown.

BIN
boards/uvify/core/bootloader/uvify_core_bootloader.bin

Binary file not shown.

6
cmake/px4_add_board.cmake

@ -48,7 +48,6 @@ @@ -48,7 +48,6 @@
# [ ROMFSROOT <string> ]
# [ BUILD_BOOTLOADER ]
# [ IO <string> ]
# [ BOOTLOADER <string> ]
# [ UAVCAN_INTERFACES <string> ]
# [ UAVCAN_PERIPHERALS <list> ]
# [ DRIVERS <list> ]
@ -74,7 +73,6 @@ @@ -74,7 +73,6 @@
# ROMFSROOT : relative path to the ROMFS root directory
# BUILD_BOOTLOADER : flag to enable building and including the bootloader config
# IO : name of IO board to be built and included in the ROMFS (requires a valid ROMFSROOT)
# BOOTLOADER : bootloader file to include for flashing via bl_update (currently NuttX only)
# UAVCAN_INTERFACES : number of interfaces for UAVCAN
# UAVCAN_PERIPHERALS : list of UAVCAN peripheral firmware to build and embed
# DRIVERS : list of drivers to build for this board (relative to src/drivers)
@ -148,7 +146,6 @@ function(px4_add_board) @@ -148,7 +146,6 @@ function(px4_add_board)
ARCHITECTURE
ROMFSROOT
IO
BOOTLOADER
UAVCAN_INTERFACES
UAVCAN_TIMER_OVERRIDE
LINKER_PREFIX
@ -210,9 +207,6 @@ function(px4_add_board) @@ -210,9 +207,6 @@ function(px4_add_board)
set(romfs_extra_files)
set(config_romfs_extra_dependencies)
if(BOOTLOADER)
list(APPEND romfs_extra_files ${BOOTLOADER})
endif()
foreach(metadata ${EMBEDDED_METADATA})
if(${metadata} STREQUAL "parameters")
list(APPEND romfs_extra_files ${PX4_BINARY_DIR}/params.json.xz)

27
src/systemcmds/bl_update/CMakeLists.txt

@ -64,10 +64,10 @@ if(config_build_bootloader) @@ -64,10 +64,10 @@ if(config_build_bootloader)
ExternalProject_Get_Property(bootloader_firmware BINARY_DIR)
set(bootloader_exe "${BINARY_DIR}/${bootloader_config}.elf")
set(bootloader_bin "${PX4_BINARY_DIR}/romfs_extras/${bootloader_config}.bin" CACHE FILEPATH "bootloader binary path")
set(board_bootloader_firmware "${BINARY_DIR}/${bootloader_config}.elf" CACHE FILEPATH "bootloader original binary path")
set(bootloader_bin "${PX4_BINARY_DIR}/romfs_extras/bootloader.bin" CACHE FILEPATH "bootloader binary path")
file(RELATIVE_PATH bootloader_exe_relative ${CMAKE_CURRENT_BINARY_DIR} ${bootloader_exe})
file(RELATIVE_PATH bootloader_exe_relative ${CMAKE_CURRENT_BINARY_DIR} ${board_bootloader_firmware})
file(RELATIVE_PATH bootloader_bin_relative ${CMAKE_CURRENT_BINARY_DIR} ${bootloader_bin})
add_custom_command(OUTPUT ${bootloader_bin}
@ -77,4 +77,25 @@ if(config_build_bootloader) @@ -77,4 +77,25 @@ if(config_build_bootloader)
COMMENT "Copying ${bootloader_config} to ROMFS extras"
)
add_custom_target(copy_bootloader_bin DEPENDS ${bootloader_bin})
elseif(EXISTS "${PX4_BOARD_DIR}/bootloader/")
if(EXISTS ${PX4_BOARD_DIR}/bootloader/${PX4_BOARD_VENDOR}_${PX4_BOARD_MODEL}_bootloader.bin)
set(board_bootloader_firmware ${PX4_BOARD_DIR}/bootloader/${PX4_BOARD_VENDOR}_${PX4_BOARD_MODEL}_bootloader.bin CACHE FILEPATH "bootloader original binary path")
set(bootloader_bin "${PX4_BINARY_DIR}/romfs_extras/bootloader.bin" CACHE FILEPATH "bootloader binary path")
add_custom_command(OUTPUT ${bootloader_bin}
COMMAND ${CMAKE_COMMAND} -E make_directory ${PX4_BINARY_DIR}/romfs_extras
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${board_bootloader_firmware} ${PX4_BINARY_DIR}/romfs_extras/bootloader.bin
DEPENDS ${board_bootloader_firmware}
COMMENT "Copying ${board_bootloader_firmware} to ROMFS extras"
)
add_custom_target(copy_bootloader_bin DEPENDS ${bootloader_bin})
else()
file(GLOB bootloader_bin_files ${PX4_BOARD_DIR}/bootloader/*.bin)
foreach(bin_file ${bootloader_bin_files})
message(FATAL_ERROR "incorrect bootloader filename ${bin_file} should be ${PX4_BOARD_VENDOR}_${PX4_BOARD_MODEL}_bootloader.bin")
endforeach()
endif()
endif()

Loading…
Cancel
Save