Firmware: no longer require dfu-prefix

it was adding a header that we weren't using anyway
This commit is contained in:
Dominic Spill
2018-03-22 12:29:27 -06:00
parent d7e2068ff1
commit 92f122d43a
3 changed files with 5 additions and 21 deletions

View File

@ -30,22 +30,6 @@ execute_process(
set(DFU_ALL "")
if(NOT DFU_NOT_FOUND)
string(REGEX REPLACE ".*([0-9]+)\\.[0-9]+.*" "\\1" DFU_VERSION_MAJOR "${DFU_VERSION_STRING}")
string(REGEX REPLACE ".*[0-9]+\\.([0-9])+.*" "\\1" DFU_VERSION_MINOR "${DFU_VERSION_STRING}")
MESSAGE( STATUS "DFU utils version: " ${DFU_VERSION_MAJOR} "." ${DFU_VERSION_MINOR})
execute_process(
COMMAND dfu-prefix -V
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
RESULT_VARIABLE DFU_PREFIX_NOT_FOUND
ERROR_QUIET
OUTPUT_VARIABLE DFU_PREFIX_VERSION_STRING
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if(DFU_PREFIX_NOT_FOUND)
set(DFU_COMMAND dfu-suffix --vid=0x1fc9 --pid=0x000c --did=0x0 -s 0 -a _tmp.dfu)
else(DFU_PREFIX_NOT_FOUND)
set(DFU_COMMAND dfu-suffix --vid=0x1fc9 --pid=0x000c --did=0x0 -a _tmp.dfu && dfu-prefix -s 0 -a _tmp.dfu)
endif(DFU_PREFIX_NOT_FOUND)
set(DFU_ALL "ALL")
else(NOT DFU_NOT_FOUND)
MESSAGE(STATUS "dfu-suffix not found: not building DFU file")

View File

@ -4,5 +4,5 @@ import sys
with open("_header.bin", "wb") as f:
x = struct.pack('<H', os.path.getsize(sys.argv[1] + '_dfu.bin') // 512 + 1)
y = [0xda, 0xff, x[0], x[1], 0xff, 0xff, 0xff, 0xff]
y = [0xda, 0xff, x[0], x[1]] + [0xff] * 12
f.write(bytearray(y))

View File

@ -27,13 +27,13 @@
enable_language(C CXX ASM)
include(../dfu-util.cmake)
SET(PATH_HACKRF ../..)
SET(PATH_HACKRF_FIRMWARE ${PATH_HACKRF}/firmware)
SET(PATH_HACKRF_FIRMWARE_COMMON ${PATH_HACKRF_FIRMWARE}/common)
SET(LIBOPENCM3 ${PATH_HACKRF_FIRMWARE}/libopencm3)
include(${PATH_HACKRF_FIRMWARE}/dfu-util.cmake)
execute_process(
COMMAND git log -n 1 --format=%h
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
@ -206,7 +206,7 @@ macro(DeclareTargets)
DEPENDS ${PROJECT_NAME}_dfu.bin
COMMAND rm -f _tmp.dfu _header.bin
COMMAND cp ${PROJECT_NAME}_dfu.bin _tmp.dfu
COMMAND ${DFU_COMMAND}
COMMAND dfu-suffix --vid=0x1fc9 --pid=0x000c --did=0x0 -a _tmp.dfu
COMMAND python ../../dfu.py ${PROJECT_NAME}
COMMAND cat _header.bin _tmp.dfu >${PROJECT_NAME}.dfu
COMMAND rm -f _tmp.dfu _header.bin