aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/video/cx231xx/cx231xx-417.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/media/video/cx231xx/cx231xx-417.c b/drivers/media/video/cx231xx/cx231xx-417.c
index a5b1b13d1fd6..b5b69989ff8d 100644
--- a/drivers/media/video/cx231xx/cx231xx-417.c
+++ b/drivers/media/video/cx231xx/cx231xx-417.c
@@ -1053,16 +1053,15 @@ static int cx231xx_load_firmware(struct cx231xx *dev)
1053 /*download the firmware by ep5-out*/ 1053 /*download the firmware by ep5-out*/
1054 1054
1055 for (frame = 0; frame < (int)(CX231xx_FIRM_IMAGE_SIZE*20/_buffer_size); 1055 for (frame = 0; frame < (int)(CX231xx_FIRM_IMAGE_SIZE*20/_buffer_size);
1056 frame++) { 1056 frame++) {
1057 for (i = 0; i < _buffer_size; i++) { 1057 for (i = 0; i < _buffer_size; i++) {
1058 *(p_buffer+i) = 1058 *(p_buffer + i) = (u8)(*(p_fw + (frame * 128 * 8 + (i / 4))) & 0x000000FF);
1059 (u8)(*(p_fw+(frame*128*8+(i++/4))) & 0x000000FF); 1059 i++;
1060 *(p_buffer+i) = 1060 *(p_buffer + i) = (u8)((*(p_fw + (frame * 128 * 8 + (i / 4))) & 0x0000FF00) >> 8);
1061 (u8)((*(p_fw+(frame*128*8+(i++/4))) & 0x0000FF00)>>8); 1061 i++;
1062 *(p_buffer+i) = 1062 *(p_buffer + i) = (u8)((*(p_fw + (frame * 128 * 8 + (i / 4))) & 0x00FF0000) >> 16);
1063 (u8)((*(p_fw+(frame*128*8+(i++/4))) & 0x00FF0000)>>16); 1063 i++;
1064 *(p_buffer+i) = 1064 *(p_buffer + i) = (u8)((*(p_fw + (frame * 128 * 8 + (i / 4))) & 0xFF000000) >> 24);
1065 (u8)((*(p_fw+(frame*128*8+(i/4))) & 0xFF000000)>>24);
1066 } 1065 }
1067 cx231xx_ep5_bulkout(dev, p_buffer, _buffer_size); 1066 cx231xx_ep5_bulkout(dev, p_buffer, _buffer_size);
1068 } 1067 }