aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/rtl8192u/r819xU_firmware.c
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2011-01-08 23:20:04 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2011-01-21 15:19:11 -0500
commit0a8692b534e18fcec6eac07551bb37a22659f5c7 (patch)
tree3a337882ad85d1bc96a69c5e95882a4397068650 /drivers/staging/rtl8192u/r819xU_firmware.c
parent31d5bbf3da8c3c9de5944f2c09cbc7ea5a72bdb4 (diff)
rtl8192u_usb: Remove built-in firmware images
These firmware images are already unused. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/rtl8192u/r819xU_firmware.c')
-rw-r--r--drivers/staging/rtl8192u/r819xU_firmware.c76
1 files changed, 25 insertions, 51 deletions
diff --git a/drivers/staging/rtl8192u/r819xU_firmware.c b/drivers/staging/rtl8192u/r819xU_firmware.c
index 49ae1705377..6766f468639 100644
--- a/drivers/staging/rtl8192u/r819xU_firmware.c
+++ b/drivers/staging/rtl8192u/r819xU_firmware.c
@@ -244,13 +244,6 @@ bool init_firmware(struct net_device *dev)
244 struct r8192_priv *priv = ieee80211_priv(dev); 244 struct r8192_priv *priv = ieee80211_priv(dev);
245 bool rt_status = TRUE; 245 bool rt_status = TRUE;
246 246
247 u8 *firmware_img_buf[3] = { &rtl8190_fwboot_array[0],
248 &rtl8190_fwmain_array[0],
249 &rtl8190_fwdata_array[0]};
250
251 u32 firmware_img_len[3] = { sizeof(rtl8190_fwboot_array),
252 sizeof(rtl8190_fwmain_array),
253 sizeof(rtl8190_fwdata_array)};
254 u32 file_length = 0; 247 u32 file_length = 0;
255 u8 *mapped_file = NULL; 248 u8 *mapped_file = NULL;
256 u32 init_step = 0; 249 u32 init_step = 0;
@@ -284,59 +277,40 @@ bool init_firmware(struct net_device *dev)
284 * Download boot, main, and data image for System reset. 277 * Download boot, main, and data image for System reset.
285 * Download data image for firmware reseta 278 * Download data image for firmware reseta
286 */ 279 */
287 priv->firmware_source = FW_SOURCE_IMG_FILE;
288 for(init_step = starting_state; init_step <= FW_INIT_STEP2_DATA; init_step++) { 280 for(init_step = starting_state; init_step <= FW_INIT_STEP2_DATA; init_step++) {
289 /* 281 /*
290 * Open Image file, and map file to contineous memory if open file success. 282 * Open Image file, and map file to contineous memory if open file success.
291 * or read image file from array. Default load from IMG file 283 * or read image file from array. Default load from IMG file
292 */ 284 */
293 if(rst_opt == OPT_SYSTEM_RESET) { 285 if(rst_opt == OPT_SYSTEM_RESET) {
294 switch(priv->firmware_source) { 286 rc = request_firmware(&fw_entry, fw_name[init_step],&priv->udev->dev);
295 case FW_SOURCE_IMG_FILE: 287 if(rc < 0 ) {
296 rc = request_firmware(&fw_entry, fw_name[init_step],&priv->udev->dev); 288 RT_TRACE(COMP_ERR, "request firmware fail!\n");
297 if(rc < 0 ) { 289 goto download_firmware_fail;
298 RT_TRACE(COMP_ERR, "request firmware fail!\n");
299 goto download_firmware_fail;
300 }
301
302 if(fw_entry->size > sizeof(pfirmware->firmware_buf)) {
303 RT_TRACE(COMP_ERR, "img file size exceed the container buffer fail!\n");
304 goto download_firmware_fail;
305 }
306
307 if(init_step != FW_INIT_STEP1_MAIN) {
308 memcpy(pfirmware->firmware_buf,fw_entry->data,fw_entry->size);
309 mapped_file = pfirmware->firmware_buf;
310 file_length = fw_entry->size;
311 } else {
312 #ifdef RTL8190P
313 memcpy(pfirmware->firmware_buf,fw_entry->data,fw_entry->size);
314 mapped_file = pfirmware->firmware_buf;
315 file_length = fw_entry->size;
316 #else
317 memset(pfirmware->firmware_buf,0,128);
318 memcpy(&pfirmware->firmware_buf[128],fw_entry->data,fw_entry->size);
319 mapped_file = pfirmware->firmware_buf;
320 file_length = fw_entry->size + 128;
321 #endif
322 }
323 pfirmware->firmware_buf_size = file_length;
324 break;
325
326 case FW_SOURCE_HEADER_FILE:
327 mapped_file = firmware_img_buf[init_step];
328 file_length = firmware_img_len[init_step];
329 if(init_step == FW_INIT_STEP2_DATA) {
330 memcpy(pfirmware->firmware_buf, mapped_file, file_length);
331 pfirmware->firmware_buf_size = file_length;
332 }
333 break;
334
335 default:
336 break;
337 } 290 }
338 291
292 if(fw_entry->size > sizeof(pfirmware->firmware_buf)) {
293 RT_TRACE(COMP_ERR, "img file size exceed the container buffer fail!\n");
294 goto download_firmware_fail;
295 }
339 296
297 if(init_step != FW_INIT_STEP1_MAIN) {
298 memcpy(pfirmware->firmware_buf,fw_entry->data,fw_entry->size);
299 mapped_file = pfirmware->firmware_buf;
300 file_length = fw_entry->size;
301 } else {
302#ifdef RTL8190P
303 memcpy(pfirmware->firmware_buf,fw_entry->data,fw_entry->size);
304 mapped_file = pfirmware->firmware_buf;
305 file_length = fw_entry->size;
306#else
307 memset(pfirmware->firmware_buf,0,128);
308 memcpy(&pfirmware->firmware_buf[128],fw_entry->data,fw_entry->size);
309 mapped_file = pfirmware->firmware_buf;
310 file_length = fw_entry->size + 128;
311#endif
312 }
313 pfirmware->firmware_buf_size = file_length;
340 }else if(rst_opt == OPT_FIRMWARE_RESET ) { 314 }else if(rst_opt == OPT_FIRMWARE_RESET ) {
341 /* we only need to download data.img here */ 315 /* we only need to download data.img here */
342 mapped_file = pfirmware->firmware_buf; 316 mapped_file = pfirmware->firmware_buf;