Skip to content

Commit 8e570b9

Browse files
committed
Use common scope var for PICO_CYW43_DRIVER_CURRENT_PATH, and remove wifi only firmware variants
1 parent 8d258a8 commit 8e570b9

File tree

1 file changed

+32
-67
lines changed

1 file changed

+32
-67
lines changed

src/rp2_common/pico_cyw43_driver/CMakeLists.txt

Lines changed: 32 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -158,105 +158,70 @@ if (EXISTS ${PICO_CYW43_DRIVER_PATH}/${CYW43_DRIVER_TEST_FILE})
158158
)
159159
endfunction()
160160

161+
set(PICO_CYW43_DRIVER_CURRENT_PATH ${CMAKE_CURRENT_LIST_DIR})
162+
pico_register_common_scope_var(PICO_CYW43_DRIVER_CURRENT_PATH)
163+
161164
pico_promote_common_scope_vars()
162165

163-
# Set env var, so it can be accessed in the function
164-
set(ENV{PICO_CYW43_DRIVER_CURRENT_PATH} ${CMAKE_CURRENT_LIST_DIR})
165166
function(pico_use_partition_firmware TARGET)
166167
target_compile_definitions(${TARGET} PRIVATE CYW43_USE_PARTITION_FIRMWARE=1)
167-
pico_embed_pt_in_binary(${TARGET} $ENV{PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_pt.json)
168+
pico_embed_pt_in_binary(${TARGET} ${PICO_CYW43_DRIVER_CURRENT_PATH}/wifi_pt.json)
168169

169170
find_package (Python3 REQUIRED COMPONENTS Interpreter)
170171

171172
# Wifi firmware blob
172-
add_custom_target(${TARGET}_firmware_w_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_w_blob.S)
173-
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/firmware_w_blob.S
174-
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
175-
)
176-
177-
# Wifi and bluetooth firmware blob
178-
add_custom_target(${TARGET}_firmware_wb_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S)
173+
add_custom_target(${TARGET}_firmware_blob DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S)
179174
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/firmware_wb_blob.S
180-
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
175+
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
181176
)
182177

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

193-
add_dependencies(${TARGET}_firmware_w ${TARGET}_firmware_w_blob)
194-
add_dependencies(${TARGET}_firmware_w_tbyb ${TARGET}_firmware_w_blob)
195-
add_dependencies(${TARGET}_firmware_wb ${TARGET}_firmware_wb_blob)
196-
add_dependencies(${TARGET}_firmware_wb_tbyb ${TARGET}_firmware_wb_blob)
184+
add_dependencies(${TARGET}_firmware ${TARGET}_firmware_blob)
185+
add_dependencies(${TARGET}_firmware_tbyb ${TARGET}_firmware_blob)
197186

198-
target_include_directories(${TARGET}_firmware_w PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
199-
target_include_directories(${TARGET}_firmware_w_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
200-
target_include_directories(${TARGET}_firmware_wb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
201-
target_include_directories(${TARGET}_firmware_wb_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
187+
target_include_directories(${TARGET}_firmware PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
188+
target_include_directories(${TARGET}_firmware_tbyb PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
202189

203-
target_compile_definitions(${TARGET}_firmware_w PRIVATE
204-
NO_PICO_PLATFORM=1
205-
)
206-
target_compile_definitions(${TARGET}_firmware_w_tbyb PRIVATE
207-
NO_PICO_PLATFORM=1
208-
PICO_CRT0_IMAGE_TYPE_TBYB=1
209-
)
210-
target_compile_definitions(${TARGET}_firmware_wb PRIVATE
190+
target_compile_definitions(${TARGET}_firmware PRIVATE
211191
NO_PICO_PLATFORM=1
212192
WB_FIRMWARE=1
213193
)
214-
target_compile_definitions(${TARGET}_firmware_wb_tbyb PRIVATE
194+
target_compile_definitions(${TARGET}_firmware_tbyb PRIVATE
215195
NO_PICO_PLATFORM=1
216196
PICO_CRT0_IMAGE_TYPE_TBYB=1
217197
WB_FIRMWARE=1
218198
)
219199

220-
target_link_options(${TARGET}_firmware_w PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
221-
target_link_options(${TARGET}_firmware_w_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
222-
target_link_options(${TARGET}_firmware_wb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
223-
target_link_options(${TARGET}_firmware_wb_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
200+
target_link_options(${TARGET}_firmware PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
201+
target_link_options(${TARGET}_firmware_tbyb PRIVATE -nostartfiles -nodefaultlibs -Ttext=0x20000000)
224202

225-
target_link_libraries(${TARGET}_firmware_w boot_picobin_headers)
226-
target_link_libraries(${TARGET}_firmware_w_tbyb boot_picobin_headers)
227-
target_link_libraries(${TARGET}_firmware_wb boot_picobin_headers)
228-
target_link_libraries(${TARGET}_firmware_wb_tbyb boot_picobin_headers)
203+
target_link_libraries(${TARGET}_firmware boot_picobin_headers)
204+
target_link_libraries(${TARGET}_firmware_tbyb boot_picobin_headers)
229205

230206
get_target_property(hasSigfile ${TARGET} PICOTOOL_SIGFILE)
231207
if (hasSigfile)
232-
pico_sign_binary(${TARGET}_firmware_w ${sigfile})
233-
pico_sign_binary(${TARGET}_firmware_w_tbyb ${sigfile})
234-
pico_sign_binary(${TARGET}_firmware_wb ${sigfile})
235-
pico_sign_binary(${TARGET}_firmware_wb_tbyb ${sigfile})
208+
pico_sign_binary(${TARGET}_firmware ${sigfile})
209+
pico_sign_binary(${TARGET}_firmware_tbyb ${sigfile})
236210
endif()
237211

238-
pico_hash_binary(${TARGET}_firmware_w)
239-
pico_hash_binary(${TARGET}_firmware_w_tbyb)
240-
pico_hash_binary(${TARGET}_firmware_wb)
241-
pico_hash_binary(${TARGET}_firmware_wb_tbyb)
212+
pico_hash_binary(${TARGET}_firmware)
213+
pico_hash_binary(${TARGET}_firmware_tbyb)
242214

243-
pico_set_uf2_family(${TARGET}_firmware_w 0x12345678)
244-
pico_set_uf2_family(${TARGET}_firmware_w_tbyb 0x12345678)
245-
pico_set_uf2_family(${TARGET}_firmware_wb 0x12345678)
246-
pico_set_uf2_family(${TARGET}_firmware_wb_tbyb 0x12345678)
215+
pico_set_uf2_family(${TARGET}_firmware 0x12345678)
216+
pico_set_uf2_family(${TARGET}_firmware_tbyb 0x12345678)
247217

248-
pico_package_uf2_output(${TARGET}_firmware_w 0x10000000)
249-
pico_package_uf2_output(${TARGET}_firmware_w_tbyb 0x10000000)
250-
pico_package_uf2_output(${TARGET}_firmware_wb 0x10000000)
251-
pico_package_uf2_output(${TARGET}_firmware_wb_tbyb 0x10000000)
218+
pico_package_uf2_output(${TARGET}_firmware 0x10000000)
219+
pico_package_uf2_output(${TARGET}_firmware_tbyb 0x10000000)
252220

253-
pico_add_extra_outputs(${TARGET}_firmware_w)
254-
pico_add_extra_outputs(${TARGET}_firmware_w_tbyb)
255-
pico_add_extra_outputs(${TARGET}_firmware_wb)
256-
pico_add_extra_outputs(${TARGET}_firmware_wb_tbyb)
221+
pico_add_extra_outputs(${TARGET}_firmware)
222+
pico_add_extra_outputs(${TARGET}_firmware_tbyb)
257223

258224
add_dependencies(${TARGET}
259-
${TARGET}_firmware_w ${TARGET}_firmware_w_tbyb
260-
${TARGET}_firmware_wb ${TARGET}_firmware_wb_tbyb)
225+
${TARGET}_firmware ${TARGET}_firmware_tbyb)
261226
endfunction()
262227
endif()

0 commit comments

Comments
 (0)