V4L/DVB (5392): Zr364xx: Use kernel's byte-swapping function
Some code to swap bytes wasn't using the swab16() function that the kernel provides for this. Make use of it, which results in more efficient code. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Acked-by: Antoine Jacquet <royale@zerezo.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
Родитель
cf3c34c87f
Коммит
93566ad806
|
@ -277,7 +277,7 @@ static unsigned char header3;
|
|||
static int read_frame(struct zr364xx_camera *cam, int framenum)
|
||||
{
|
||||
int i, n, temp, head, size, actual_length;
|
||||
unsigned char *ptr = NULL, *jpeg, swap;
|
||||
unsigned char *ptr = NULL, *jpeg;
|
||||
|
||||
redo:
|
||||
/* hardware brightness */
|
||||
|
@ -308,12 +308,11 @@ static int read_frame(struct zr364xx_camera *cam, int framenum)
|
|||
}
|
||||
|
||||
/* swap bytes if camera needs it */
|
||||
if (cam->method == METHOD0)
|
||||
for (i = 0; i < BUFFER_SIZE; i += 2) {
|
||||
swap = cam->buffer[i];
|
||||
cam->buffer[i] = cam->buffer[i + 1];
|
||||
cam->buffer[i + 1] = swap;
|
||||
}
|
||||
if (cam->method == METHOD0) {
|
||||
u16 *buf = (u16*)cam->buffer;
|
||||
for (i = 0; i < BUFFER_SIZE/2; i++)
|
||||
swab16s(buf + i);
|
||||
}
|
||||
|
||||
/* write the JPEG header */
|
||||
if (!head) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче