37 u16 frag_length, frag_offset = 0;
43 unsigned char *seg_ptr;
51 if((buffer_len - frag_offset) > frag_threshold) {
56 frag_length = buffer_len - frag_offset;
67 skb = dev_alloc_skb(frag_length + 4);
69 memcpy((
unsigned char *)(skb->cb),&dev,
sizeof(dev));
83 for(i=0 ; i < frag_length; i+=4) {
84 *seg_ptr++ = ((i+0)<frag_length)?code_virtual_address[i+3]:0;
85 *seg_ptr++ = ((i+1)<frag_length)?code_virtual_address[i+2]:0;
86 *seg_ptr++ = ((i+2)<frag_length)?code_virtual_address[i+1]:0;
87 *seg_ptr++ = ((i+3)<frag_length)?code_virtual_address[i+0]:0;
98 priv->
ieee80211->softmac_hard_start_xmit(skb,dev);
101 code_virtual_address += frag_length;
102 frag_offset += frag_length;
104 }
while(frag_offset < buffer_len);
116 bool rtStatus =
true;
120 unsigned char *ptr_buf;
121 bool bLastInitPacket =
false;
126 skb = dev_alloc_skb(Length+ 4);
127 memcpy((
unsigned char *)(skb->cb),&dev,
sizeof(dev));
132 ptr_buf =
skb_put(skb, Length);
139 RT_TRACE(
COMP_FIRMWARE,
"===================NULL packet==================================> tx full!\n");
142 priv->
ieee80211->softmac_hard_start_xmit(skb,dev);
166 int check_putcodeOK_time = 200000, check_bootOk_time = 200000;
176 }
while(check_putcodeOK_time--);
180 goto CPUCheckMainCodeOKAndTurnOnCPU_Fail;
196 }
while(check_bootOk_time--);
199 goto CPUCheckMainCodeOKAndTurnOnCPU_Fail;
206 CPUCheckMainCodeOKAndTurnOnCPU_Fail:
216 int check_time = 200000;
226 }
while(check_time--);
229 goto CPUCheckFirmwareReady_Fail;
235 CPUCheckFirmwareReady_Fail:
255 const char *
fw_name[3] = {
"RTL8192U/boot.img",
257 "RTL8192U/data.img"};
289 goto download_firmware_fail;
294 goto download_firmware_fail;
300 file_length = fw_entry->
size;
305 file_length = fw_entry->
size;
310 file_length = fw_entry->
size + 128;
332 if(rt_status !=
TRUE) {
333 goto download_firmware_fail;
346 if(rt_status !=
true)
349 goto download_firmware_fail;
365 if(rt_status !=
TRUE) {
367 goto download_firmware_fail;
379 if(rt_status !=
TRUE) {
381 goto download_firmware_fail;
395 download_firmware_fail: