1# 2# Makefile to download and convert TI's CC256x Service Pack .bts files from 3# http://processors.wiki.ti.com/index.php/CC256x_Downloads 4# 5# Service Packs for CC256xB v1.5 and CC256xC v1.0 downloaded from BlueKitchen company website 6# https://e2e.ti.com/support/wireless_connectivity/bluetooth_cc256x/f/660/p/560523/2056007#2056007 7 8TI_GIT_REPO_URL = https://git.ti.com/ti-bt/service-packs/blobs/raw/a027ae390d8790e56e1c78136c78fe6537470e91 9BLUEKITCHEN_URL = https://bluekitchen-gmbh.com/files/ 10CONVERSION_SCRIPT=$(BTSTACK_ROOT)/chipset/cc256x/convert_bts_init_scripts.py 11 12 13# First generation CC2560 - AKA TIInit_6.2.31.bts 14 15# v2.44 - file part of .zip archive 16 17CC2560_BT_SP_BTS.zip: 18 @echo "Downloading $@" 19 @curl -sS -O http://processors.wiki.ti.com/images/d/da/CC2560_BT_SP_BTS.zip 20 21bluetooth_init_cc2560_2.44.bts: CC2560_BT_SP_BTS.zip 22 @echo "Extracting $@" 23 @unzip -q -j -o CC2560_BT_SP_BTS.zip CC2560_BT_SP_BTS/bluetooth_init_cc2560_2.44.bts 24 25# Second generation CC2560A and CC2564 - AKA TIInit_6.6.15.bts 26 27# v2.14 - files part of .zip archive 28 29CC2560A_BT_SP_BTS.zip: 30 @echo "Downloading $@" 31 @curl -sS -O http://processors.wiki.ti.com/images/e/e7/CC2560A_BT_SP_BTS.zip 32 33CC2564_BT_BLE_SP_BTS.zip: 34 @echo "Downloading $@" 35 @curl -sS -O http://processors.wiki.ti.com/images/1/1e/CC2564_BT_BLE_SP_BTS.zip 36 37bluetooth_init_cc2560A_2.14.bts: CC2560A_BT_SP_BTS.zip 38 @echo "Extracting $@" 39 @unzip -q -j -o CC2560A_BT_SP_BTS.zip CC2560A_BT_SP_BTS/bluetooth_init_cc2560A_2.14.bts 40 41bluetooth_init_cc2564_2.14.bts: CC2564_BT_BLE_SP_BTS.zip 42 @echo "Extracting $@" 43 @unzip -q -j -o CC2564_BT_BLE_SP_BTS.zip CC2564_BT_BLE_SP_BTS/bluetooth_init_cc2564_2.14.bts 44 45# Third generation CC256xB - AKA TIInit_6.7.16.bts 46 47# v1.2 - versioned files TI Git Repo 48bluetooth_init_cc2560B_1.2_BT_Spec_4.1.bts: 49 @echo "Downloading $@" 50 @curl -sS -O $(TI_GIT_REPO_URL)/bluetooth_init_cc2560B_1.2_BT_Spec_4.1.bts 51 52bluetooth_init_cc2564B_1.2_BT_Spec_4.1.bts: 53 @echo "Downloading $@" 54 @curl -sS -O $(TI_GIT_REPO_URL)/bluetooth_init_cc2564B_1.2_BT_Spec_4.1.bts 55 56BLE_init_cc2564B_1.2.bts: 57 @echo "Downloading $@" 58 @curl -sS -O $(TI_GIT_REPO_URL)/BLE_init_cc2564B_1.2.bts 59 60# v1.4 - versioned files TI Git Repo 61TIInit_6.7.16_bt_spec_4.1.bts: 62 @echo "Downloading $@" 63 @curl -sS -O https://git.ti.com/ti-bt/service-packs/blobs/raw/54f5c151dacc608b19ab2ce4c30e27a3983048b2/initscripts/TIInit_6.7.16_bt_spec_4.1.bts 64 65TIInit_6.7.16_ble_add-on.bts: 66 @echo "Downloading $@" 67 @curl -sS -O https://git.ti.com/ti-bt/service-packs/blobs/raw/89c8db14929f10d75627b132690432cd71f5f54f/initscripts/TIInit_6.7.16_ble_add-on.bts 68 69# v1.5 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xb-bt-sp 70cc256x_bt_sp_v1.5.zip: 71 echo "Downloading $@" 72 @curl -sS -O $(BLUEKITCHEN_URL)/cc256x_bt_sp_v1.5.zip 73 74cc256x_bt_sp_v1.5/initscripts-TIInit_6.7.16_bt_spec_4.1.bts: cc256x_bt_sp_v1.5.zip 75 @echo "Extracting $@" 76 @mkdir -p cc256x_bt_sp_v1.5 77 @unzip -q -j -o cc256x_bt_sp_v1.5.zip -d cc256x_bt_sp_v1.5 CC256X_BT_SP/v1.5/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 78 79cc256x_bt_sp_v1.5/initscripts-TIInit_6.7.16_ble_add-on.bts: cc256x_bt_sp_v1.5.zip 80 @echo "Extracting $@" 81 @mkdir -p cc256x_bt_sp_v1.5 82 @unzip -q -j -o cc256x_bt_sp_v1.5.zip -d cc256x_bt_sp_v1.5 CC256X_BT_SP/v1.5/initscripts-TIInit_6.7.16_ble_add-on.bts 83 84# v1.6 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xb-bt-sp 85cc256xb_bt_sp_v1.6.zip: 86 echo "Downloading $@" 87 @curl -sS -O $(BLUEKITCHEN_URL)/cc256xb_bt_sp_v1.6.zip 88 89cc256xb_bt_sp_v1.6/initscripts-TIInit_6.7.16_bt_spec_4.1.bts: cc256xb_bt_sp_v1.6.zip 90 @echo "Extracting $@" 91 @mkdir -p cc256xb_bt_sp_v1.6 92 @unzip -q -j -o cc256xb_bt_sp_v1.6.zip -d cc256xb_bt_sp_v1.6 CC256XB_BT_SP/v1.6/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 93 94cc256xb_bt_sp_v1.6/initscripts-TIInit_6.7.16_ble_add-on.bts: cc256xb_bt_sp_v1.6.zip 95 @echo "Extracting $@" 96 @mkdir -p cc256xb_bt_sp_v1.6 97 @unzip -q -j -o cc256xb_bt_sp_v1.6.zip -d cc256xb_bt_sp_v1.6 CC256XB_BT_SP/v1.6/initscripts-TIInit_6.7.16_ble_add-on.bts 98 99# v1.7 - not available, please use v1.8 or newer 100 101# v1.8 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xb-bt-sp 102cc256xb_bt_sp_v1.8.zip: 103 echo "Downloading $@" 104 @curl -sS -O $(BLUEKITCHEN_URL)/cc256xb_bt_sp_v1.8.zip 105 106cc256xb_bt_sp_v1.8/initscripts-TIInit_6.7.16_bt_spec_4.1.bts: cc256xb_bt_sp_v1.8.zip 107 @echo "Extracting $@" 108 @mkdir -p cc256xb_bt_sp_v1.8 109 @unzip -q -j -o cc256xb_bt_sp_v1.8.zip -d cc256xb_bt_sp_v1.8 CC256XB_BT_SP/v1.8/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 110 111cc256xb_bt_sp_v1.8/initscripts-TIInit_6.7.16_ble_add-on.bts: cc256xb_bt_sp_v1.8.zip 112 @echo "Extracting $@" 113 @mkdir -p cc256xb_bt_sp_v1.8 114 @unzip -q -j -o cc256xb_bt_sp_v1.8.zip -d cc256xb_bt_sp_v1.8 CC256XB_BT_SP/v1.8/initscripts-TIInit_6.7.16_ble_add-on.bts 115 116 117# Fourth generation CC256xC - TIInit_6.12.26.bts 118 119# v1.0 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xc-bt-sp 120cc256xc_bt_sp_v1.0.zip: 121 @echo "Downloading $@" 122 @curl -sS -O $(BLUEKITCHEN_URL)/cc256xc_bt_sp_v1.0.zip 123 124initscripts-TIInit_6.12.26_v1.0.bts: cc256xc_bt_sp_v1.0.zip 125 @echo "Extracting $@" 126 @unzip -q -p cc256xc_bt_sp_v1.0.zip CC256XC_BT_SP/v1.0/initscripts-TIInit_6.12.26.bts > $@ 127 128initscripts-TIInit_6.12.26_ble_add-on_v1.0.bts: cc256xc_bt_sp_v1.0.zip 129 @echo "Extracting $@" 130 @unzip -q -p cc256xc_bt_sp_v1.0.zip CC256XC_BT_SP/v1.0/initscripts-TIInit_6.12.26_ble_add-on.bts > $@ 131 132# v1.1 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xc-bt-sp 133cc256xc_bt_sp_v1.1.zip: 134 @echo "Downloading $@" 135 @curl -sS -O $(BLUEKITCHEN_URL)/cc256xc_bt_sp_v1.1.zip 136 137initscripts-TIInit_6.12.26_v1.1.bts: cc256xc_bt_sp_v1.1.zip 138 @echo "Extracting $@" 139 @unzip -q -p cc256xc_bt_sp_v1.1.zip CC256XC_BT_SP/v1.1/initscripts-TIInit_6.12.26.bts > $@ 140 141initscripts-TIInit_6.12.26_ble_add-on_v1.1.bts: cc256xc_bt_sp_v1.1.zip 142 @echo "Extracting $@" 143 @unzip -q -p cc256xc_bt_sp_v1.1.zip CC256XC_BT_SP/v1.1/initscripts-TIInit_6.12.26_ble_add-on.bts > $@ 144 145# v1.1 - unversioned files from BlueKitchen website, original: http://www.ti.com/tool/cc256xc-bt-sp 146cc256xc_bt_sp_v1.2.zip: 147 @echo "Downloading $@" 148 @curl -sS -O $(BLUEKITCHEN_URL)/cc256xc_bt_sp_v1.2.zip 149 150initscripts-TIInit_6.12.26_v1.2.bts: cc256xc_bt_sp_v1.2.zip 151 @echo "Extracting $@" 152 @unzip -q -p cc256xc_bt_sp_v1.2.zip CC256XC_BT_SP/v1.2/initscripts-TIInit_6.12.26.bts > $@ 153 154initscripts-TIInit_6.12.26_ble_add-on_v1.2.bts: cc256xc_bt_sp_v1.2.zip 155 @echo "Extracting $@" 156 @unzip -q -p cc256xc_bt_sp_v1.2.zip CC256XC_BT_SP/v1.2/initscripts-TIInit_6.12.26_ble_add-on.bts > $@ 157 158# Various scripts for WL chipsets 159 160# V4.2 from BlueKitchen website, original: http://www.ti.com/tool/wl18xx-bt-sp 161TIInit_11.8.32.bts: 162 @echo "Downloading $@" 163 @curl -sS -O $(BLUEKITCHEN_URL)/TIInit_11.8.32.bts 164 165TIInit_12.10.28.bts: 166 @echo "Downloading $@" 167 @curl -sS -O $(TI_GIT_REPO_URL)/TIInit_12.10.28.bts 168 169TIInit_12.8.32.bts: 170 @echo "Downloading $@" 171 @curl -sS -O $(TI_GIT_REPO_URL)/TIInit_12.8.32.bts 172 173 174 175# convert to .c files based on main file and option add-on 176 177bluetooth_init_cc2560_2.44.c: bluetooth_init_cc2560_2.44.bts 178 @echo "Creating $@" 179 @$(CONVERSION_SCRIPT) $^ $@ 180 181bluetooth_init_cc2560A_2.14.c: bluetooth_init_cc2560A_2.14.bts 182 @echo "Creating $@" 183 @$(CONVERSION_SCRIPT) $^ $@ 184 185bluetooth_init_cc2567_2.4.c: CC2567_BT_ANT_Service_Pack_2.4.bts 186 @echo "Creating $@" 187 @$(CONVERSION_SCRIPT) $^ $@ 188 189bluetooth_init_cc2567_2.8.c: CC256x_BT_Service_Pack_2.8_ANT_1.16.bts 190 @echo "Creating $@" 191 @$(CONVERSION_SCRIPT) $^ $@ 192 193bluetooth_init_cc2564_2.14.c: bluetooth_init_cc2564_2.14.bts 194 @echo "Creating $@" 195 @$(CONVERSION_SCRIPT) $^ $@ 196 197bluetooth_init_cc2560B_1.2_BT_Spec_4.1.c: bluetooth_init_cc2560B_1.2_BT_Spec_4.1.bts 198 @echo "Creating $@" 199 @$(CONVERSION_SCRIPT) $^ $@ 200 201bluetooth_init_cc2564B_1.2_BT_Spec_4.1.c: bluetooth_init_cc2564B_1.2_BT_Spec_4.1.bts BLE_init_cc2564B_1.2.bts 202 @echo "Creating $@" 203 @$(CONVERSION_SCRIPT) $^ $@ 204 205bluetooth_init_cc2560B_1.4_BT_Spec_4.1.c: TIInit_6.7.16_bt_spec_4.1.bts 206 @echo "Creating $@" 207 @$(CONVERSION_SCRIPT) $^ $@ 208 209bluetooth_init_cc2564B_1.4_BT_Spec_4.1.c: TIInit_6.7.16_bt_spec_4.1.bts TIInit_6.7.16_ble_add-on.bts 210 @echo "Creating $@" 211 @$(CONVERSION_SCRIPT) $^ $@ 212 213bluetooth_init_cc2560B_1.5_BT_Spec_4.1.c: cc256x_bt_sp_v1.5/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 214 @echo "Creating $@" 215 @$(CONVERSION_SCRIPT) $^ $@ 216 217bluetooth_init_cc2564B_1.5_BT_Spec_4.1.c: cc256x_bt_sp_v1.5/initscripts-TIInit_6.7.16_bt_spec_4.1.bts cc256x_bt_sp_v1.5/initscripts-TIInit_6.7.16_ble_add-on.bts 218 @echo "Creating $@" 219 @$(CONVERSION_SCRIPT) $^ $@ 220 221bluetooth_init_cc2560B_1.6_BT_Spec_4.1.c: cc256xb_bt_sp_v1.6/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 222 @echo "Creating $@" 223 @$(CONVERSION_SCRIPT) $^ $@ 224 225bluetooth_init_cc2564B_1.6_BT_Spec_4.1.c: cc256xb_bt_sp_v1.6/initscripts-TIInit_6.7.16_bt_spec_4.1.bts cc256xb_bt_sp_v1.6/initscripts-TIInit_6.7.16_ble_add-on.bts 226 @echo "Creating $@" 227 @$(CONVERSION_SCRIPT) $^ $@ 228 229bluetooth_init_cc2560B_1.8_BT_Spec_4.1.c: cc256xb_bt_sp_v1.8/initscripts-TIInit_6.7.16_bt_spec_4.1.bts 230 @echo "Creating $@" 231 @$(CONVERSION_SCRIPT) $^ $@ 232 233bluetooth_init_cc2564B_1.8_BT_Spec_4.1.c: cc256xb_bt_sp_v1.8/initscripts-TIInit_6.7.16_bt_spec_4.1.bts cc256xb_bt_sp_v1.8/initscripts-TIInit_6.7.16_ble_add-on.bts 234 @echo "Creating $@" 235 @$(CONVERSION_SCRIPT) $^ $@ 236 237bluetooth_init_cc2560C_1.0.c: initscripts-TIInit_6.12.26_v1.0.bts 238 @echo "Creating $@" 239 @$(CONVERSION_SCRIPT) $^ $@ 240 241bluetooth_init_cc2564C_1.0.c: initscripts-TIInit_6.12.26_v1.0.bts initscripts-TIInit_6.12.26_ble_add-on_v1.0.bts 242 @echo "Creating $@" 243 @$(CONVERSION_SCRIPT) $^ $@ 244 245bluetooth_init_cc2560C_1.1.c: initscripts-TIInit_6.12.26_v1.1.bts 246 @echo "Creating $@" 247 @$(CONVERSION_SCRIPT) $^ $@ 248 249bluetooth_init_cc2564C_1.1.c: initscripts-TIInit_6.12.26_v1.1.bts initscripts-TIInit_6.12.26_ble_add-on_v1.1.bts 250 @echo "Creating $@" 251 @$(CONVERSION_SCRIPT) $^ $@ 252 253bluetooth_init_cc2560C_1.2.c: initscripts-TIInit_6.12.26_v1.2.bts 254 @echo "Creating $@" 255 @$(CONVERSION_SCRIPT) $^ $@ 256 257bluetooth_init_cc2564C_1.2.c: initscripts-TIInit_6.12.26_v1.2.bts initscripts-TIInit_6.12.26_ble_add-on_v1.2.bts 258 @echo "Creating $@" 259 @$(CONVERSION_SCRIPT) $^ $@ 260 261TIInit_11.8.32.c: TIInit_11.8.32.bts 262 @echo "Creating $@" 263 @$(CONVERSION_SCRIPT) $^ $@ 264 265TIInit_12.10.28.c: TIInit_12.10.28.bts 266 @echo "Creating $@" 267 @$(CONVERSION_SCRIPT) $^ $@ 268 269TIInit_12.8.32.c: TIInit_12.8.32.bts 270 @echo "Creating $@" 271 @$(CONVERSION_SCRIPT) $^ $@ 272 273all-scripts: \ 274 bluetooth_init_cc2560_2.44.c \ 275 bluetooth_init_cc2560A_2.14.c \ 276 bluetooth_init_cc2564_2.14.bts \ 277 bluetooth_init_cc2560B_1.4_BT_Spec_4.1.c \ 278 bluetooth_init_cc2564B_1.4_BT_Spec_4.1.c \ 279 bluetooth_init_cc2560B_1.5_BT_Spec_4.1.c \ 280 bluetooth_init_cc2564B_1.5_BT_Spec_4.1.c \ 281 bluetooth_init_cc2564B_1.6_BT_Spec_4.1.c \ 282 bluetooth_init_cc2564B_1.8_BT_Spec_4.1.c \ 283 bluetooth_init_cc2560C_1.0.c \ 284 bluetooth_init_cc2564C_1.0.c \ 285 bluetooth_init_cc2560C_1.1.c \ 286 bluetooth_init_cc2564C_1.1.c \ 287 bluetooth_init_cc2560C_1.2.c \ 288 bluetooth_init_cc2564C_1.2.c \ 289 TIInit_11.8.32.c \ 290 TIInit_12.10.28.c \ 291 TIInit_12.8.32.c \ 292 293clean-scripts: 294 rm -fr cc256x*.zip CC256*.zip bluetooth_init_cc256*.c TIInit*.c *.bts BLE_init_cc256*.c 295 296 297