diff
- data = vmalloc(fw->size);
+ data = vzalloc(fw->size);  // vzalloc zeros the allocated memory
  if (!data) {
      bt_dev_err(hdev, "QCA Failed to allocate memory for file: %s",
                 config->fwname);
      release_firmware(fw);
      return -ENOMEM;
  }
- memcpy(data, fw->data, size);
+ memcpy(data, fw->data, fw->size);  // Use fw->size directly
