Skip to content

Commit 6b69108

Browse files
committed
Use common scope var for PICO_CYW43_DRIVER_CURRENT_PATH, and remove wifi only firmware variants
1 parent 9efa702 commit 6b69108

File tree

1 file changed

+32
-67
lines changed

1 file changed

+32
-67
lines changed

src/rp2_common/pico_cyw43_driver/CMakeLists.txt

+32-67
Original file line numberDiff line numberDiff line change
@@ -154,105 +154,70 @@ if (EXISTS ${PICO_CYW43_DRIVER_PATH}/${CYW43_DRIVER_TEST_FILE})
154154
)
155155
endfunction()
156156

157+
set(PICO_CYW43_DRIVER_CURRENT_PATH ${CMAKE_CURRENT_LIST_DIR})
158+
pico_register_common_scope_var(PICO_CYW43_DRIVER_CURRENT_PATH)
159+
157160
pico_promote_common_scope_vars()
158161

159-
# Set env var, so it can be accessed in the function
160-
set(ENV{PICO_CYW43_DRIVER_CURRENT_PATH} ${CMAKE_CURRENT_LIST_DIR})
161162
function(pico_use_partition_firmware TARGET)
162163
target_compile_definitions(${TARGET} PRIVATE CYW43_USE_PARTITION_FIRMWARE=1)
163-
pico_embed_pt_in_binary(${TARGET} $ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_pt.json)
164+
pico_embed_pt_in_binary(${TARGET} ${PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_pt.json)
164165

165166
find_package (Python3 REQUIRED COMPONENTS Interpreter)
166167

167168
# Wifi firmware blob
168-
add_custom_target(${TARGET}_firmware_w_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_w_blob.S)
169-
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/firmware_w_blob.S
170-
COMMAND ${Python3_EXECUTABLE} $ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/cyw43_firmware.py ${PICO_CYW43_DRIVER_PATH}/firmware/w43439A0_7_95_49_00_combined.h ${CMAKE_CURRENT_BINARY_DIR}/firmware_w_blob.S
171-
)
172-
173-
# Wifi and bluetooth firmware blob
174-
add_custom_target(${TARGET}_firmware_wb_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S)
169+
add_custom_target(${TARGET}_firmware_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S)
175170
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S
176-
COMMAND ${Python3_EXECUTABLE} $ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/cyw43_firmware.py ${PICO_CYW43_DRIVER_PATH}/firmware/wb43439A0_7_95_49_00_combined.h ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S
171+
COMMAND ${Python3_EXECUTABLE} ${PICO_CYW43_DRIVER_CURRENT_PATH}/cyw43_firmware.py ${PICO_CYW43_DRIVER_PATH}/firmware/wb43439A0_7_95_49_00_combined.h ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S
177172
)
178173

179-
# Create UF2s for all the variants - Wifi vs Wifi+Bluetooth, and TBYB
180-
add_executable(${TARGET}_firmware_w
181-
$ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
182-
add_executable(${TARGET}_firmware_w_tbyb
183-
$ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
184-
add_executable(${TARGET}_firmware_wb
185-
$ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
186-
add_executable(${TARGET}_firmware_wb_tbyb
187-
$ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
174+
# Create UF2s for regular and TBYB firmwares
175+
add_executable(${TARGET}_firmware
176+
${PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
177+
add_executable(${TARGET}_firmware_tbyb
178+
${PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_firmware.S)
188179

189-
add_dependencies(${TARGET}_firmware_w ${TARGET}_firmware_w_blob)
190-
add_dependencies(${TARGET}_firmware_w_tbyb ${TARGET}_firmware_w_blob)
191-
add_dependencies(${TARGET}_firmware_wb ${TARGET}_firmware_wb_blob)
192-
add_dependencies(${TARGET}_firmware_wb_tbyb ${TARGET}_firmware_wb_blob)
180+
add_dependencies(${TARGET}_firmware ${TARGET}_firmware_blob)
181+
add_dependencies(${TARGET}_firmware_tbyb ${TARGET}_firmware_blob)
193182

194-
target_include_directories(${TARGET}_firmware_w PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
195-
target_include_directories(${TARGET}_firmware_w_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
196-
target_include_directories(${TARGET}_firmware_wb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
197-
target_include_directories(${TARGET}_firmware_wb_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
183+
target_include_directories(${TARGET}_firmware PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
184+
target_include_directories(${TARGET}_firmware_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
198185

199-
target_compile_definitions(${TARGET}_firmware_w PRIVATE
200-
NO_PICO_PLATFORM=1
201-
)
202-
target_compile_definitions(${TARGET}_firmware_w_tbyb PRIVATE
203-
NO_PICO_PLATFORM=1
204-
PICO_CRT0_IMAGE_TYPE_TBYB=1
205-
)
206-
target_compile_definitions(${TARGET}_firmware_wb PRIVATE
186+
target_compile_definitions(${TARGET}_firmware PRIVATE
207187
NO_PICO_PLATFORM=1
208188
WB_FIRMWARE=1
209189
)
210-
target_compile_definitions(${TARGET}_firmware_wb_tbyb PRIVATE
190+
target_compile_definitions(${TARGET}_firmware_tbyb PRIVATE
211191
NO_PICO_PLATFORM=1
212192
PICO_CRT0_IMAGE_TYPE_TBYB=1
213193
WB_FIRMWARE=1
214194
)
215195

216-
target_link_options(${TARGET}_firmware_w PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
217-
target_link_options(${TARGET}_firmware_w_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
218-
target_link_options(${TARGET}_firmware_wb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
219-
target_link_options(${TARGET}_firmware_wb_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
196+
target_link_options(${TARGET}_firmware PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
197+
target_link_options(${TARGET}_firmware_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
220198

221-
target_link_libraries(${TARGET}_firmware_w boot_picobin_headers)
222-
target_link_libraries(${TARGET}_firmware_w_tbyb boot_picobin_headers)
223-
target_link_libraries(${TARGET}_firmware_wb boot_picobin_headers)
224-
target_link_libraries(${TARGET}_firmware_wb_tbyb boot_picobin_headers)
199+
target_link_libraries(${TARGET}_firmware boot_picobin_headers)
200+
target_link_libraries(${TARGET}_firmware_tbyb boot_picobin_headers)
225201

226202
get_target_property(hasSigfile ${TARGET} PICOTOOL_SIGFILE)
227203
if (hasSigfile)
228-
pico_sign_binary(${TARGET}_firmware_w ${sigfile})
229-
pico_sign_binary(${TARGET}_firmware_w_tbyb ${sigfile})
230-
pico_sign_binary(${TARGET}_firmware_wb ${sigfile})
231-
pico_sign_binary(${TARGET}_firmware_wb_tbyb ${sigfile})
204+
pico_sign_binary(${TARGET}_firmware ${sigfile})
205+
pico_sign_binary(${TARGET}_firmware_tbyb ${sigfile})
232206
endif()
233207

234-
pico_hash_binary(${TARGET}_firmware_w)
235-
pico_hash_binary(${TARGET}_firmware_w_tbyb)
236-
pico_hash_binary(${TARGET}_firmware_wb)
237-
pico_hash_binary(${TARGET}_firmware_wb_tbyb)
208+
pico_hash_binary(${TARGET}_firmware)
209+
pico_hash_binary(${TARGET}_firmware_tbyb)
238210

239-
pico_set_uf2_family(${TARGET}_firmware_w 0x12345678)
240-
pico_set_uf2_family(${TARGET}_firmware_w_tbyb 0x12345678)
241-
pico_set_uf2_family(${TARGET}_firmware_wb 0x12345678)
242-
pico_set_uf2_family(${TARGET}_firmware_wb_tbyb 0x12345678)
211+
pico_set_uf2_family(${TARGET}_firmware 0x12345678)
212+
pico_set_uf2_family(${TARGET}_firmware_tbyb 0x12345678)
243213

244-
pico_package_uf2_output(${TARGET}_firmware_w 0x10000000)
245-
pico_package_uf2_output(${TARGET}_firmware_w_tbyb 0x10000000)
246-
pico_package_uf2_output(${TARGET}_firmware_wb 0x10000000)
247-
pico_package_uf2_output(${TARGET}_firmware_wb_tbyb 0x10000000)
214+
pico_package_uf2_output(${TARGET}_firmware 0x10000000)
215+
pico_package_uf2_output(${TARGET}_firmware_tbyb 0x10000000)
248216

249-
pico_add_extra_outputs(${TARGET}_firmware_w)
250-
pico_add_extra_outputs(${TARGET}_firmware_w_tbyb)
251-
pico_add_extra_outputs(${TARGET}_firmware_wb)
252-
pico_add_extra_outputs(${TARGET}_firmware_wb_tbyb)
217+
pico_add_extra_outputs(${TARGET}_firmware)
218+
pico_add_extra_outputs(${TARGET}_firmware_tbyb)
253219

254220
add_dependencies(${TARGET}
255-
${TARGET}_firmware_w ${TARGET}_firmware_w_tbyb
256-
${TARGET}_firmware_wb ${TARGET}_firmware_wb_tbyb)
221+
${TARGET}_firmware ${TARGET}_firmware_tbyb)
257222
endfunction()
258223
endif()

0 commit comments

Comments
 (0)