Lines Matching refs:ver
275 int btintel_version_info(struct hci_dev *hdev, struct intel_version *ver) in btintel_version_info() argument
282 if (ver->hw_platform != 0x37) { in btintel_version_info()
284 ver->hw_platform); in btintel_version_info()
294 switch (ver->hw_variant) { in btintel_version_info()
306 ver->hw_variant); in btintel_version_info()
310 switch (ver->fw_variant) { in btintel_version_info()
324 bt_dev_err(hdev, "Unsupported firmware variant(%02x)", ver->fw_variant); in btintel_version_info()
328 coredump_info.hw_variant = ver->hw_variant; in btintel_version_info()
329 coredump_info.fw_build_num = ver->fw_build_num; in btintel_version_info()
332 variant, ver->fw_revision >> 4, ver->fw_revision & 0x0f, in btintel_version_info()
333 ver->fw_build_num, ver->fw_build_ww, in btintel_version_info()
334 2000 + ver->fw_build_yy); in btintel_version_info()
427 int btintel_read_version(struct hci_dev *hdev, struct intel_version *ver) in btintel_read_version() argument
438 if (!skb || skb->len != sizeof(*ver)) { in btintel_read_version()
444 memcpy(ver, skb->data, sizeof(*ver)); in btintel_read_version()
1105 struct intel_version *ver, in btintel_download_firmware() argument
1114 switch (ver->hw_variant) { in btintel_download_firmware()
1122 if (btintel_firmware_version(hdev, ver->fw_build_num, in btintel_download_firmware()
1123 ver->fw_build_ww, ver->fw_build_yy, in btintel_download_firmware()
1141 if (ver->fw_variant == 0x23) in btintel_download_firmware()
1153 struct intel_version_tlv *ver, in btintel_download_fw_tlv() argument
1161 if (btintel_firmware_version(hdev, ver->min_fw_build_nn, in btintel_download_fw_tlv()
1162 ver->min_fw_build_cw, in btintel_download_fw_tlv()
1163 ver->min_fw_build_yy, in btintel_download_fw_tlv()
1180 if (ver->img_type == BTINTEL_IMG_OP) in btintel_download_fw_tlv()
1493 struct intel_version *ver) in btintel_legacy_rom_get_fw() argument
1501 ver->hw_platform, ver->hw_variant, ver->hw_revision, in btintel_legacy_rom_get_fw()
1502 ver->fw_variant, ver->fw_revision, ver->fw_build_num, in btintel_legacy_rom_get_fw()
1503 ver->fw_build_ww, ver->fw_build_yy); in btintel_legacy_rom_get_fw()
1520 ver->hw_platform, ver->hw_variant); in btintel_legacy_rom_get_fw()
1648 struct intel_version *ver) in btintel_legacy_rom_setup() argument
1661 if (ver->fw_patch_num) { in btintel_legacy_rom_setup()
1664 ver->fw_patch_num); in btintel_legacy_rom_setup()
1674 fw = btintel_legacy_rom_get_fw(hdev, ver); in btintel_legacy_rom_setup()
1874 static int btintel_get_fw_name(struct intel_version *ver, in btintel_get_fw_name() argument
1879 switch (ver->hw_variant) { in btintel_get_fw_name()
1883 ver->hw_variant, in btintel_get_fw_name()
1892 ver->hw_variant, in btintel_get_fw_name()
1893 ver->hw_revision, in btintel_get_fw_name()
1894 ver->fw_revision, in btintel_get_fw_name()
1905 struct intel_version *ver, in btintel_download_fw() argument
1914 if (!ver || !params) in btintel_download_fw()
1930 if (ver->fw_variant == 0x23) { in btintel_download_fw()
1937 switch (ver->hw_variant) { in btintel_download_fw()
1994 err = btintel_get_fw_name(ver, params, fwname, sizeof(fwname), "sfi"); in btintel_download_fw()
2033 err = btintel_download_firmware(hdev, ver, fw, boot_param); in btintel_download_fw()
2070 struct intel_version *ver) in btintel_bootloader_setup() argument
2088 err = btintel_download_fw(hdev, ver, ¶ms, &boot_param); in btintel_bootloader_setup()
2093 if (ver->fw_variant == 0x23) in btintel_bootloader_setup()
2102 err = btintel_get_fw_name(ver, ¶ms, ddcname, in btintel_bootloader_setup()
2139 static void btintel_get_fw_name_tlv(const struct intel_version_tlv *ver, in btintel_get_fw_name_tlv() argument
2146 cnvi = INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvi_top), in btintel_get_fw_name_tlv()
2147 INTEL_CNVX_TOP_STEP(ver->cnvi_top)); in btintel_get_fw_name_tlv()
2149 cnvr = INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvr_top), in btintel_get_fw_name_tlv()
2150 INTEL_CNVX_TOP_STEP(ver->cnvr_top)); in btintel_get_fw_name_tlv()
2155 if (INTEL_HW_VARIANT(ver->cnvi_bt) >= 0x1e) { in btintel_get_fw_name_tlv()
2158 if (ver->img_type == BTINTEL_IMG_BOOTLOADER) { in btintel_get_fw_name_tlv()
2167 if (memcmp(ver->fw_id, zero, sizeof(zero))) { in btintel_get_fw_name_tlv()
2170 ver->fw_id, suffix); in btintel_get_fw_name_tlv()
2184 static void btintel_get_iml_tlv(const struct intel_version_tlv *ver, in btintel_get_iml_tlv() argument
2191 cnvi = INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvi_top), in btintel_get_iml_tlv()
2192 INTEL_CNVX_TOP_STEP(ver->cnvi_top)); in btintel_get_iml_tlv()
2194 cnvr = INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvr_top), in btintel_get_iml_tlv()
2195 INTEL_CNVX_TOP_STEP(ver->cnvr_top)); in btintel_get_iml_tlv()
2202 struct intel_version_tlv *ver, in btintel_prepare_fw_download_tlv() argument
2210 if (!ver || !boot_param) in btintel_prepare_fw_download_tlv()
2226 if (ver->img_type == BTINTEL_IMG_OP) { in btintel_prepare_fw_download_tlv()
2235 if (!bacmp(&ver->otp_bd_addr, BDADDR_ANY)) { in btintel_prepare_fw_download_tlv()
2241 if (ver->img_type == BTINTEL_IMG_OP) { in btintel_prepare_fw_download_tlv()
2247 if (INTEL_HW_VARIANT(ver->cnvi_bt) >= 0x1e) in btintel_prepare_fw_download_tlv()
2248 btintel_get_iml_tlv(ver, fwname, sizeof(fwname), "sfi"); in btintel_prepare_fw_download_tlv()
2250 btintel_get_fw_name_tlv(ver, fwname, sizeof(fwname), "sfi"); in btintel_prepare_fw_download_tlv()
2252 btintel_get_fw_name_tlv(ver, fwname, sizeof(fwname), "sfi"); in btintel_prepare_fw_download_tlv()
2283 err = btintel_download_fw_tlv(hdev, ver, fw, boot_param, in btintel_prepare_fw_download_tlv()
2284 INTEL_HW_VARIANT(ver->cnvi_bt), in btintel_prepare_fw_download_tlv()
2285 ver->sbe_type); in btintel_prepare_fw_download_tlv()
2411 static void btintel_set_ppag(struct hci_dev *hdev, struct intel_version_tlv *ver) in btintel_set_ppag() argument
2422 switch (ver->cnvr_top & 0xFFF) { in btintel_set_ppag()
2427 ver->cnvr_top & 0xFFF); in btintel_set_ppag()
2687 static int btintel_set_dsbr(struct hci_dev *hdev, struct intel_version_tlv *ver) in btintel_set_dsbr() argument
2704 apply_dsbr = (ver->img_type == BTINTEL_IMG_IML && in btintel_set_dsbr()
2705 ((ver->cnvi_top & 0xfff) == BTINTEL_CNVI_BLAZARI) && in btintel_set_dsbr()
2706 INTEL_CNVX_TOP_STEP(ver->cnvi_top) == 0x01); in btintel_set_dsbr()
2737 struct intel_version_tlv *ver) in btintel_bootloader_setup_tlv() argument
2754 err = btintel_prepare_fw_download_tlv(hdev, ver, &boot_param); in btintel_bootloader_setup_tlv()
2759 if (ver->img_type == BTINTEL_IMG_OP) in btintel_bootloader_setup_tlv()
2766 err = btintel_read_version_tlv(hdev, ver); in btintel_bootloader_setup_tlv()
2771 err = btintel_set_dsbr(hdev, ver); in btintel_bootloader_setup_tlv()
2780 if (ver->img_type == BTINTEL_IMG_IML) { in btintel_bootloader_setup_tlv()
2781 err = btintel_prepare_fw_download_tlv(hdev, ver, &boot_param); in btintel_bootloader_setup_tlv()
2792 btintel_get_fw_name_tlv(ver, ddcname, sizeof(ddcname), "ddc"); in btintel_bootloader_setup_tlv()
2807 btintel_set_ppag(hdev, ver); in btintel_bootloader_setup_tlv()
2974 struct intel_version ver; in btintel_setup_combined() local
3038 if (skb->len == sizeof(ver) && skb->data[1] == 0x37) { in btintel_setup_combined()
3041 memcpy(&ver, skb->data, sizeof(ver)); in btintel_setup_combined()
3044 btintel_version_info(hdev, &ver); in btintel_setup_combined()
3053 switch (ver.hw_variant) { in btintel_setup_combined()
3073 err = btintel_legacy_rom_setup(hdev, &ver); in btintel_setup_combined()
3093 btintel_set_msft_opcode(hdev, ver.hw_variant); in btintel_setup_combined()
3095 err = btintel_bootloader_setup(hdev, &ver); in btintel_setup_combined()
3100 ver.hw_variant); in btintel_setup_combined()
3106 ver.hw_platform, ver.hw_variant, in btintel_setup_combined()
3107 ver.hw_revision); in btintel_setup_combined()
3158 err = btintel_read_version(hdev, &ver); in btintel_setup_combined()
3172 btintel_set_msft_opcode(hdev, ver.hw_variant); in btintel_setup_combined()
3174 err = btintel_bootloader_setup(hdev, &ver); in btintel_setup_combined()