update factory.bin and update.bin
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
cmake_minimum_required(VERSION 3.21)
|
||||
include($ENV{XMOS_CMAKE_PATH}/xcommon.cmake)
|
||||
project(app_usb_aud_phaten_gs)
|
||||
project(app_usb_aud_sy102)
|
||||
|
||||
set(APP_HW_TARGET synido.xn)
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/../deps.cmake)
|
||||
@@ -35,6 +35,12 @@ if (HOST_OS_DETECTION)
|
||||
set(EXTRA_BUILD_FLAGS ${EXTRA_BUILD_FLAGS} -DHOST_OS_DETECTION)
|
||||
endif()
|
||||
|
||||
# Firmware version (maps to BCD_DEVICE_J.M.N in USB descriptor)
|
||||
set(FW_VER_J 1)
|
||||
set(FW_VER_M 0)
|
||||
set(FW_VER_N 0)
|
||||
set(FW_VERSION "v${FW_VER_J}.${FW_VER_M}.${FW_VER_N}")
|
||||
|
||||
set(SW_USB_AUDIO_FLAGS ${EXTRA_BUILD_FLAGS} -Os
|
||||
-report
|
||||
-L${CMAKE_CURRENT_LIST_DIR}/../../lib_ex3d/lib_ex3d/lib
|
||||
@@ -44,9 +50,9 @@ set(SW_USB_AUDIO_FLAGS ${EXTRA_BUILD_FLAGS} -Os
|
||||
-DUSB_TILE=tile[0]
|
||||
-DXUA_QUAD_SPI_FLASH=1
|
||||
-D${TARGET_BOARD}
|
||||
-DBCD_DEVICE_J=1
|
||||
-DBCD_DEVICE_M=0
|
||||
-DBCD_DEVICE_N=0
|
||||
-DBCD_DEVICE_J=${FW_VER_J}
|
||||
-DBCD_DEVICE_M=${FW_VER_M}
|
||||
-DBCD_DEVICE_N=${FW_VER_N}
|
||||
-D${CODEC_IC}
|
||||
-DWINDOWS_OS_DESCRIPTOR_SUPPORT
|
||||
-DDEBUG_PRINT_ENABLE=0)
|
||||
@@ -154,3 +160,49 @@ set(APP_INCLUDES src src/core src/extensions ../../lib_dnr/lib_dnr)
|
||||
set(XMOS_SANDBOX_DIR ${CMAKE_CURRENT_LIST_DIR}/../..)
|
||||
|
||||
XMOS_REGISTER_APP()
|
||||
|
||||
###=========================================================================###
|
||||
# Flash image generation
|
||||
# Slot assignment (matches MODE_Fxx flag values in audiohw.xc):
|
||||
# slot 1 = f3_f4_fps_uac2 (COAX_IN_FLAG = MODE_F3_F4_FPS_UAC2)
|
||||
# slot 2 = f5_music_uac1 (UAC1_IN_FLAG = MODE_F5_MUSIC_UAC1) <- factory base
|
||||
# slot 3 = f1_music_uac2 (OPT_IN_FLAG = MODE_F1_MUSIC_UAC2)
|
||||
# slot 4 = f6_f7_fps_uac1 (USB_IN_FLAG = MODE_F6_F7_FPS_UAC1)
|
||||
###=========================================================================###
|
||||
|
||||
set(APP_BIN_DIR ${CMAKE_CURRENT_LIST_DIR}/bin)
|
||||
set(APP_BASE ${PROJECT_NAME})
|
||||
set(XE_F1 ${APP_BIN_DIR}/f1_music_uac2/${APP_BASE}_f1_music_uac2.xe)
|
||||
set(XE_F3F4 ${APP_BIN_DIR}/f3_f4_fps_uac2/${APP_BASE}_f3_f4_fps_uac2.xe)
|
||||
set(XE_F5 ${APP_BIN_DIR}/f5_music_uac1/${APP_BASE}_f5_music_uac1.xe)
|
||||
set(XE_F6F7 ${APP_BIN_DIR}/f6_f7_fps_uac1/${APP_BASE}_f6_f7_fps_uac1.xe)
|
||||
set(LOADER_OBJ ${CMAKE_CURRENT_LIST_DIR}/loader.o)
|
||||
set(TARGET_XN ${CMAKE_CURRENT_LIST_DIR}/src/core/synido.xn)
|
||||
|
||||
# factory_<project>_<version>.bin — full factory image (base + 4 upgrade slots)
|
||||
add_custom_target(factory_bin
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "xflash ${XE_F5} --loader ${LOADER_OBJ} --upgrade 1 ${XE_F3F4} --upgrade 2 ${XE_F5} --upgrade 3 ${XE_F1} --upgrade 4 ${XE_F6F7} -o ${CMAKE_CURRENT_LIST_DIR}/factory_${APP_BASE}_${FW_VERSION}.bin"
|
||||
COMMAND xflash ${XE_F5} --loader ${LOADER_OBJ}
|
||||
--upgrade 1 ${XE_F3F4}
|
||||
--upgrade 2 ${XE_F5}
|
||||
--upgrade 3 ${XE_F1}
|
||||
--upgrade 4 ${XE_F6F7}
|
||||
-o ${CMAKE_CURRENT_LIST_DIR}/factory_${APP_BASE}_${FW_VERSION}.bin
|
||||
#DEPENDS f1_music_uac2 f3_f4_fps_uac2 f5_music_uac1 f6_f7_fps_uac1
|
||||
COMMENT "Generating factory image: factory_${APP_BASE}_${FW_VERSION}.bin"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
# update_<project>_<version>.bin — DFU upgrade package (upgrade slots only)
|
||||
add_custom_target(update_bin
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "xflash --factory-version 15.2 --target-file ${TARGET_XN} --upgrade 1 ${XE_F3F4} --upgrade 2 ${XE_F5} --upgrade 3 ${XE_F1} --upgrade 4 ${XE_F6F7} -o ${CMAKE_CURRENT_LIST_DIR}/update_${APP_BASE}_${FW_VERSION}.bin"
|
||||
COMMAND xflash --factory-version 15.2 --target-file ${TARGET_XN}
|
||||
--upgrade 1 ${XE_F3F4}
|
||||
--upgrade 2 ${XE_F5}
|
||||
--upgrade 3 ${XE_F1}
|
||||
--upgrade 4 ${XE_F6F7}
|
||||
-o ${CMAKE_CURRENT_LIST_DIR}/update_${APP_BASE}_${FW_VERSION}.bin
|
||||
#DEPENDS f1_music_uac2 f3_f4_fps_uac2 f5_music_uac1 f6_f7_fps_uac1
|
||||
COMMENT "Generating update image: update_${APP_BASE}_${FW_VERSION}.bin"
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user