Lines Matching refs:firmware

10 #include <linux/firmware.h>
295 /* Check for supported iBT hardware variants of this firmware
331 bt_dev_err(hdev, "Unsupported firmware variant(%02x)", ver->fw_variant);
373 const struct firmware *fw;
473 /* Check for supported iBT hardware variants of this firmware
496 /* It is required that every single firmware fragment is acknowledged
501 bt_dev_err(hdev, "Unsupported Intel firmware loading method (0x%x)",
522 bt_dev_info(hdev, "Minimum firmware build %u week %u %u",
595 /* If image type is Operational firmware (0x03), then
607 /* If image type is Operational firmware (0x03), then
943 bt_dev_info(hdev, "Minimum firmware build %u week %u %u",
952 const struct firmware *fw)
956 /* Start the firmware download transaction with the Init fragment
961 bt_dev_err(hdev, "Failed to send firmware header (%d)", err);
965 /* Send the 256 bytes of public key information from the firmware
970 bt_dev_err(hdev, "Failed to send firmware pkey (%d)", err);
974 /* Send the 256 bytes of signature information from the firmware
979 bt_dev_err(hdev, "Failed to send firmware signature (%d)", err);
988 const struct firmware *fw)
992 /* Start the firmware download transaction with the Init fragment
997 bt_dev_err(hdev, "Failed to send firmware header (%d)", err);
1001 /* Send the 96 bytes of public key information from the firmware
1006 bt_dev_err(hdev, "Failed to send firmware pkey (%d)", err);
1010 /* Send the 96 bytes of signature information from the firmware
1015 bt_dev_err(hdev, "Failed to send firmware signature (%d)",
1023 const struct firmware *fw,
1040 * a 4 byte alignment. It happens so that the firmware file
1045 * firmware data buffer as a single Data fragement.
1051 "Failed to send firmware data (%d)",
1067 const struct firmware *fw,
1078 * HCI_Intel_Reset command and it is embedded in the firmware
1080 * the firmware data and save it for later use.
1108 const struct firmware *fw,
1113 /* SfP and WsP don't seem to update the firmware version on file
1123 /* Skip download if firmware has the same version */
1128 /* Return -EALREADY to indicate that the firmware has
1135 /* The firmware variant determines if the device is in bootloader
1136 * mode or is running operational firmware. The value 0x06 identifies
1138 * firmware.
1140 * If the firmware version has changed that means it needs to be reset
1141 * to bootloader when operational so the new firmware can be loaded.
1156 const struct firmware *fw, u32 *boot_param,
1162 /* Skip download if firmware has the same version */
1168 /* Return -EALREADY to indicate that firmware has
1174 /* The firmware variant determines if the device is in bootloader
1175 * mode or is running operational firmware. The value 0x01 identifies
1177 * firmware.
1179 * If the firmware version has changed that means it needs to be reset
1180 * to bootloader when operational so the new firmware can be loaded.
1553 static const struct firmware *btintel_legacy_rom_get_fw(struct hci_dev *hdev,
1556 const struct firmware *fw;
1569 bt_dev_err(hdev, "Intel firmware file request failed (%d)",
1574 bt_dev_err(hdev, "failed to open Intel firmware file: %s (%d)",
1577 /* If the correct firmware patch file is not found, use the
1578 * default firmware patch file instead
1589 bt_dev_info(hdev, "Intel Bluetooth firmware file: %s", fwname);
1595 const struct firmware *fw,
1607 * in the current firmware buffer doesn't start with 0x01 or
1609 * the firmware file is corrupted and it should stop the patching
1623 /* Ensure that the remain firmware data is long enough than the length
1624 * of command parameter. If not, the firmware file is corrupted.
1631 /* If there is a command that loads a patch in the firmware
1634 * is not required when the default firmware patch file is used
1669 /* Every HCI commands in the firmware file has its correspond event.
1670 * If event is not found or remain is smaller than zero, the firmware
1687 * the firmware file. At fist, it checks the length and then
1711 const struct firmware *fw;
1729 /* Opens the firmware patch file based on the firmware version read
1730 * from the controller. If it fails to open the matching firmware
1731 * patch file, it tries to open the default firmware patch file.
1742 * firmware patch data and configuration parameters.
1752 /* The firmware data file consists of list of Intel specific HCI
1756 * It reads the command and its expected event from the firmware file,
1758 * the returned event is compared with the event read from the firmware
1762 * Once the firmware patching is completed successfully,
1766 * If the firmware patching fails, the manufacturer mode is
1787 * with reset and activate the downloaded firmware patches.
1811 bt_dev_info(hdev, "Intel firmware patch completed");
1819 * deactivate the downloaded firmware patches.
1825 bt_dev_info(hdev, "Intel firmware patch completed and deactivated");
1846 bt_dev_info(hdev, "Waiting for firmware download to complete");
1922 * is done by the operational firmware sending bootup notification.
1924 * Booting into operational firmware should not take longer than
1970 const struct firmware *fw;
1978 /* The firmware variant determines if the device is in bootloader
1979 * mode or is running operational firmware. The value 0x06 identifies
1981 * firmware.
1983 * When the operational firmware is already present, then only
1995 /* SfP and WsP don't seem to update the firmware version on file
2015 /* It is required that every single firmware fragment is acknowledged
2020 bt_dev_err(hdev, "Unsupported Intel firmware loading method (%u)",
2026 * also be no valid address for the operational firmware.
2035 * revision information are used to select the right firmware for SfP
2038 * The firmware filename is ibt-<hw_variant>-<dev_revid>.sfi.
2051 * The firmware file name for these will be
2063 bt_dev_err(hdev, "Unsupported Intel firmware naming");
2075 bt_dev_err(hdev, "Failed to load Intel firmware file %s (%d)",
2080 bt_dev_info(hdev, "Found device firmware: %s", fwname);
2083 bt_dev_err(hdev, "Invalid size of firmware file (%zu)",
2093 /* Start firmware downloading and get boot parameter */
2111 * booting the loaded firmware, wait for the bootloader notification
2117 * The firmware loading should not take longer than 5 seconds
2143 * command while downloading the firmware.
2153 /* controller is already having an operational firmware */
2167 bt_dev_err(hdev, "Unsupported Intel firmware naming");
2205 /* The firmware file name for new generation controllers will be
2235 const struct firmware *fw;
2243 /* The firmware variant determines if the device is in bootloader
2244 * mode or is running operational firmware. The value 0x03 identifies
2246 * firmware.
2248 * When the operational firmware is already present, then only
2280 bt_dev_err(hdev, "Failed to load Intel firmware file %s (%d)",
2286 bt_dev_info(hdev, "Found device firmware: %s", fwname);
2289 bt_dev_err(hdev, "Invalid size of firmware file (%zu)",
2299 /* Start firmware downloading and get boot parameter */
2319 * booting the loaded firmware, wait for the bootloader notification
2325 * The firmware loading should not take longer than 5 seconds
2447 bt_dev_info(hdev, "No support for BT device in ACPI firmware");
2467 bt_dev_dbg(hdev, "PPAG-BT: Bluetooth domain is disabled in ACPI firmware");
2548 bt_dev_dbg(hdev, "No support for bluetooth device in ACPI firmware");
2615 * command while downloading the firmware.
2625 /* check if controller is already having an operational firmware */
2904 /* Check for supported iBT hardware variants of this firmware
2992 /* Check for supported iBT hardware variants of this firmware
3005 * the operational firmware supports both old and TLV based
3009 * For upgrading firmware case, the TLV based version cannot
3010 * be used because the firmware filename for legacy bootloader
3180 /* When switching to the operational firmware
3187 /* When the firmware loading completes the
3189 * indicating the result of the firmware