/openbmc/linux/drivers/net/wireless/intersil/orinoco/ |
H A D | fw.c | 105 const struct firmware *fw_entry; in orinoco_dl_firmware() local 132 err = request_firmware(&fw_entry, firmware, priv->dev); in orinoco_dl_firmware() 140 fw_entry = orinoco_cached_fw_get(priv, false); in orinoco_dl_firmware() 142 hdr = (const struct orinoco_fw_header *) fw_entry->data; in orinoco_dl_firmware() 144 fw_err = validate_fw(hdr, fw_entry->size); in orinoco_dl_firmware() 159 first_block = (fw_entry->data + in orinoco_dl_firmware() 162 end = fw_entry->data + fw_entry->size; in orinoco_dl_firmware() 170 first_block = (fw_entry->data + in orinoco_dl_firmware() 192 release_firmware(fw_entry); in orinoco_dl_firmware() 292 const struct firmware *fw_entry; in symbol_dl_firmware() local [all …]
|
/openbmc/linux/drivers/staging/rtl8192u/ |
H A D | r819xU_firmware.c | 210 const struct firmware *fw_entry; in init_firmware() local 242 rc = request_firmware(&fw_entry, fw_name[init_step], &priv->udev->dev); in init_firmware() 248 if (fw_entry->size > sizeof(pfirmware->firmware_buf)) { in init_firmware() 254 memcpy(pfirmware->firmware_buf, fw_entry->data, fw_entry->size); in init_firmware() 256 file_length = fw_entry->size; in init_firmware() 259 memcpy(&pfirmware->firmware_buf[128], fw_entry->data, fw_entry->size); in init_firmware() 261 file_length = fw_entry->size + 128; in init_firmware() 279 release_firmware(fw_entry); in init_firmware()
|
/openbmc/linux/Documentation/driver-api/firmware/ |
H A D | request_firmware.rst | 8 if(request_firmware(&fw_entry, $FIRMWARE, device) == 0) 9 copy_fw_to_device(fw_entry->data, fw_entry->size); 10 release_firmware(fw_entry); 76 the driver has the firmware image accessible in fw_entry->{data,size}. 77 If something went wrong request_firmware() returns non-zero and fw_entry 79 can call release_firmware(fw_entry) to release the firmware image
|
/openbmc/linux/drivers/misc/ti-st/ |
H A D | st_kim.c | 288 request_firmware(&kim_gdata->fw_entry, bts_scr_name, in download_firmware() 290 if (unlikely((err != 0) || (kim_gdata->fw_entry->data == NULL) || in download_firmware() 291 (kim_gdata->fw_entry->size == 0))) { in download_firmware() 296 ptr = (void *)kim_gdata->fw_entry->data; in download_firmware() 297 len = kim_gdata->fw_entry->size; in download_firmware() 338 release_firmware(kim_gdata->fw_entry); in download_firmware() 349 release_firmware(kim_gdata->fw_entry); in download_firmware() 367 release_firmware(kim_gdata->fw_entry); in download_firmware() 378 release_firmware(kim_gdata->fw_entry); in download_firmware() 390 release_firmware(kim_gdata->fw_entry); in download_firmware() [all …]
|
/openbmc/linux/drivers/net/wireless/rsi/ |
H A D | rsi_91x_hal.c | 891 const struct firmware *fw_entry = NULL; in rsi_load_9113_firmware() local 915 status = request_firmware(&fw_entry, metadata_p->name, adapter->device); in rsi_load_9113_firmware() 921 content_size = fw_entry->size; in rsi_load_9113_firmware() 926 fw_entry->data[LMAC_VER_OFFSET_9113] & 0xFF; in rsi_load_9113_firmware() 928 fw_entry->data[LMAC_VER_OFFSET_9113 + 1] & 0xFF; in rsi_load_9113_firmware() 930 fw_entry->data[LMAC_VER_OFFSET_9113 + 2] & 0xFF; in rsi_load_9113_firmware() 932 fw_entry->data[LMAC_VER_OFFSET_9113 + 3] & 0xFF; in rsi_load_9113_firmware() 934 fw_entry->data[LMAC_VER_OFFSET_9113 + 4] & 0xFF; in rsi_load_9113_firmware() 938 status = bl_write_header(adapter, (u8 *)fw_entry->data, content_size); in rsi_load_9113_firmware() 980 status = auto_fw_upgrade(adapter, (u8 *)fw_entry->data, content_size); in rsi_load_9113_firmware() [all …]
|
/openbmc/linux/drivers/media/usb/go7007/ |
H A D | go7007-driver.c | 80 const struct firmware *fw_entry; in go7007_load_encoder() local 87 if (request_firmware(&fw_entry, fw_name, go->dev)) { in go7007_load_encoder() 91 if (fw_entry->size < 16 || memcmp(fw_entry->data, "WISGO7007FW", 11)) { in go7007_load_encoder() 93 release_firmware(fw_entry); in go7007_load_encoder() 96 fw_len = fw_entry->size - 16; in go7007_load_encoder() 97 bounce = kmemdup(fw_entry->data + 16, fw_len, GFP_KERNEL); in go7007_load_encoder() 100 release_firmware(fw_entry); in go7007_load_encoder() 103 release_firmware(fw_entry); in go7007_load_encoder()
|
H A D | go7007-fw.c | 1545 const struct firmware *fw_entry; in go7007_construct_fw_image() local 1568 if (request_firmware(&fw_entry, GO7007_FW_NAME, go->dev)) { in go7007_construct_fw_image() 1578 src = (__le16 *)fw_entry->data; in go7007_construct_fw_image() 1579 srclen = fw_entry->size / 2; in go7007_construct_fw_image() 1612 release_firmware(fw_entry); in go7007_construct_fw_image() 1619 release_firmware(fw_entry); in go7007_construct_fw_image()
|
/openbmc/linux/sound/pci/pcxhr/ |
H A D | pcxhr_hwdep.c | 370 const struct firmware *fw_entry; in pcxhr_setup_firmware() local 378 if (request_firmware(&fw_entry, path, &mgr->pci->dev)) { in pcxhr_setup_firmware() 385 err = pcxhr_dsp_load(mgr, i, fw_entry); in pcxhr_setup_firmware() 386 release_firmware(fw_entry); in pcxhr_setup_firmware()
|
/openbmc/linux/drivers/soc/ixp4xx/ |
H A D | ixp4xx-npe.c | 510 const struct firmware *fw_entry; in npe_load_firmware() local 536 if ((err = request_firmware(&fw_entry, name, dev)) != 0) in npe_load_firmware() 540 if (fw_entry->size < sizeof(struct dl_image)) { in npe_load_firmware() 544 image = (struct dl_image*)fw_entry->data; in npe_load_firmware() 559 if ((image->size * 4 + sizeof(struct dl_image)) != fw_entry->size) { in npe_load_firmware() 657 release_firmware(fw_entry); in npe_load_firmware() 666 release_firmware(fw_entry); in npe_load_firmware()
|
/openbmc/linux/drivers/input/touchscreen/ |
H A D | hideep.c | 872 const struct firmware *fw_entry; in hideep_update_fw() local 886 error = request_firmware(&fw_entry, fw_name, dev); in hideep_update_fw() 893 if (fw_entry->size % sizeof(__be32)) { in hideep_update_fw() 894 dev_err(dev, "invalid firmware size %zu\n", fw_entry->size); in hideep_update_fw() 899 if (fw_entry->size > ts->fw_size) { in hideep_update_fw() 901 fw_entry->size, ts->fw_size); in hideep_update_fw() 909 error = hideep_update_firmware(ts, (const __be32 *)fw_entry->data, in hideep_update_fw() 910 fw_entry->size); in hideep_update_fw() 916 release_firmware(fw_entry); in hideep_update_fw()
|
/openbmc/linux/drivers/crypto/cavium/cpt/ |
H A D | cptpf_main.c | 253 const struct firmware *fw_entry; in cpt_ucode_load_fw() local 260 ret = request_firmware(&fw_entry, fw, dev); in cpt_ucode_load_fw() 264 ucode = (struct ucode_header *)fw_entry->data; in cpt_ucode_load_fw() 266 memcpy(mcode->version, (u8 *)fw_entry->data, CPT_UCODE_VERSION_SZ); in cpt_ucode_load_fw() 287 memcpy((void *)mcode->code, (void *)(fw_entry->data + sizeof(*ucode)), in cpt_ucode_load_fw() 316 release_firmware(fw_entry); in cpt_ucode_load_fw()
|
/openbmc/linux/sound/sh/ |
H A D | aica.c | 524 const struct firmware *fw_entry; in load_aica_firmware() local 526 err = request_firmware(&fw_entry, "aica_firmware.bin", &pd->dev); in load_aica_firmware() 531 spu_memload(0, fw_entry->data, fw_entry->size); in load_aica_firmware() 533 release_firmware(fw_entry); in load_aica_firmware()
|
/openbmc/linux/drivers/video/fbdev/ |
H A D | broadsheetfb.c | 740 const struct firmware *fw_entry; in broadsheet_loadstore_waveform() local 745 err = request_firmware(&fw_entry, "broadsheet.wbf", dev); in broadsheet_loadstore_waveform() 752 if ((fw_entry->size < 8*1024) || (fw_entry->size > 64*1024)) { in broadsheet_loadstore_waveform() 759 err = broadsheet_store_waveform_to_spiflash(par, fw_entry->data, in broadsheet_loadstore_waveform() 760 fw_entry->size); in broadsheet_loadstore_waveform() 768 dev_info(dev, "Stored broadsheet waveform, size %zd\n", fw_entry->size); in broadsheet_loadstore_waveform() 773 release_firmware(fw_entry); in broadsheet_loadstore_waveform()
|
H A D | metronomefb.c | 524 const struct firmware *fw_entry; in metronomefb_probe() local 623 retval = request_firmware(&fw_entry, "metronome.wbf", &dev->dev); in metronomefb_probe() 629 retval = load_waveform((u8 *) fw_entry->data, fw_entry->size, 3, 31, in metronomefb_probe() 631 release_firmware(fw_entry); in metronomefb_probe()
|
/openbmc/linux/sound/pci/mixart/ |
H A D | mixart_hwdep.c | 564 const struct firmware *fw_entry; in snd_mixart_setup_firmware() local 569 if (request_firmware(&fw_entry, path, &mgr->pci->dev)) { in snd_mixart_setup_firmware() 575 err = mixart_dsp_load(mgr, i, fw_entry); in snd_mixart_setup_firmware() 576 release_firmware(fw_entry); in snd_mixart_setup_firmware()
|
/openbmc/linux/drivers/staging/ks7010/ |
H A D | ks7010_sdio.c | 697 const struct firmware *fw_entry) in ks7010_copy_firmware() argument 710 length = fw_entry->size; in ks7010_copy_firmware() 723 memcpy(rom_buf, fw_entry->data + n, size); in ks7010_copy_firmware() 758 const struct firmware *fw_entry = NULL; in ks7010_upload_firmware() local 772 ret = request_firmware(&fw_entry, ROM_FILE, in ks7010_upload_firmware() 777 ret = ks7010_copy_firmware(priv, fw_entry); in ks7010_upload_firmware() 800 release_firmware(fw_entry); in ks7010_upload_firmware()
|
/openbmc/linux/drivers/net/wireless/intel/iwlwifi/ |
H A D | iwl-nvm-parse.c | 1806 const struct firmware *fw_entry; in iwl_read_external_nvm() local 1839 ret = request_firmware(&fw_entry, nvm_file_name, trans->dev); in iwl_read_external_nvm() 1847 nvm_file_name, fw_entry->size); in iwl_read_external_nvm() 1849 if (fw_entry->size > MAX_NVM_FILE_LEN) { in iwl_read_external_nvm() 1855 eof = fw_entry->data + fw_entry->size; in iwl_read_external_nvm() 1856 dword_buff = (const __le32 *)fw_entry->data; in iwl_read_external_nvm() 1865 if (fw_entry->size > NVM_HEADER_SIZE && in iwl_read_external_nvm() 1868 file_sec = (const void *)(fw_entry->data + NVM_HEADER_SIZE); in iwl_read_external_nvm() 1881 file_sec = (const void *)fw_entry->data; in iwl_read_external_nvm() 1952 release_firmware(fw_entry); in iwl_read_external_nvm()
|
/openbmc/linux/sound/soc/sh/ |
H A D | siu_dai.c | 718 const struct firmware *fw_entry; in siu_probe() local 729 ret = request_firmware(&fw_entry, "siu_spb.bin", &pdev->dev); in siu_probe() 737 memcpy(&info->fw, fw_entry->data, fw_entry->size); in siu_probe() 739 release_firmware(fw_entry); in siu_probe()
|
/openbmc/linux/sound/soc/codecs/ |
H A D | tas2781-fmwlib.c | 1909 const struct firmware *fw_entry = NULL; in tas2781_load_calibration() local 1915 ret = request_firmware(&fw_entry, file_name, tas_priv->dev); in tas2781_load_calibration() 1922 if (!fw_entry->size) { in tas2781_load_calibration() 1924 __func__, (unsigned long)fw_entry->size); in tas2781_load_calibration() 1928 fmw.size = fw_entry->size; in tas2781_load_calibration() 1929 fmw.data = fw_entry->data; in tas2781_load_calibration() 1971 if (fw_entry) in tas2781_load_calibration() 1972 release_firmware(fw_entry); in tas2781_load_calibration() 2066 const struct firmware *fw_entry; in tasdevice_dsp_parser() local 2069 ret = request_firmware(&fw_entry, tas_priv->coef_binaryname, in tasdevice_dsp_parser() [all …]
|
/openbmc/linux/sound/pci/echoaudio/ |
H A D | echoaudio.h | 442 static int get_firmware(const struct firmware **fw_entry, 444 static void free_firmware(const struct firmware *fw_entry,
|
/openbmc/linux/drivers/media/usb/ttusb-dec/ |
H A D | ttusb_dec.c | 1315 const struct firmware *fw_entry = NULL; in ttusb_dec_boot_dsp() local 1319 result = request_firmware(&fw_entry, dec->firmware_name, &dec->udev->dev); in ttusb_dec_boot_dsp() 1326 firmware = fw_entry->data; in ttusb_dec_boot_dsp() 1327 firmware_size = fw_entry->size; in ttusb_dec_boot_dsp() 1332 release_firmware(fw_entry); in ttusb_dec_boot_dsp() 1345 release_firmware(fw_entry); in ttusb_dec_boot_dsp() 1361 release_firmware(fw_entry); in ttusb_dec_boot_dsp() 1370 release_firmware(fw_entry); in ttusb_dec_boot_dsp() 1401 release_firmware(fw_entry); in ttusb_dec_boot_dsp()
|
/openbmc/linux/drivers/media/radio/wl128x/ |
H A D | fmdrv_common.c | 1233 const struct firmware *fw_entry; in fm_download_firmware() local 1242 ret = request_firmware(&fw_entry, fw_name, in fm_download_firmware() 1248 fmdbg("Firmware(%s) length : %zu bytes\n", fw_name, fw_entry->size); in fm_download_firmware() 1250 fw_data = (void *)fw_entry->data; in fm_download_firmware() 1251 fw_len = fw_entry->size; in fm_download_firmware() 1287 fw_entry->size - fw_len, fw_entry->size); in fm_download_firmware() 1289 release_firmware(fw_entry); in fm_download_firmware()
|
/openbmc/linux/drivers/staging/wlan-ng/ |
H A D | prism2fw.c | 189 const struct firmware *fw_entry = NULL; in prism2_fwtry() local 193 if (request_ihex_firmware(&fw_entry, in prism2_fwtry() 204 PRISM2_USB_FWFILE, fw_entry->size); in prism2_fwtry() 205 prism2_fwapply((const struct ihex_binrec *)fw_entry->data, wlandev); in prism2_fwtry() 207 release_firmware(fw_entry); in prism2_fwtry()
|
/openbmc/linux/drivers/net/wireless/ath/ath6kl/ |
H A D | init.c | 677 const struct firmware *fw_entry; in ath6kl_get_fw() local 680 ret = request_firmware(&fw_entry, filename, ar->dev); in ath6kl_get_fw() 684 *fw_len = fw_entry->size; in ath6kl_get_fw() 685 *fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); in ath6kl_get_fw() 690 release_firmware(fw_entry); in ath6kl_get_fw()
|
/openbmc/linux/drivers/usb/atm/ |
H A D | ueagle-atm.c | 599 static void uea_upload_pre_firmware(const struct firmware *fw_entry, in uea_upload_pre_firmware() argument 609 if (!fw_entry) { in uea_upload_pre_firmware() 614 pfw = fw_entry->data; in uea_upload_pre_firmware() 615 size = fw_entry->size; in uea_upload_pre_firmware() 671 release_firmware(fw_entry); in uea_upload_pre_firmware() 1908 const struct firmware *fw_entry; in load_XILINX_firmware() local 1916 ret = request_firmware(&fw_entry, fw_name, &sc->usb_dev->dev); in load_XILINX_firmware() 1923 pfw = fw_entry->data; in load_XILINX_firmware() 1924 size = fw_entry->size; in load_XILINX_firmware() 1957 release_firmware(fw_entry); in load_XILINX_firmware()
|