Files
Linux_Drivers/u-boot-2021.10/cmd/cvi_jpeg.c
wangliang.wang 607778300c [uboot] Upgrade the MMF SDK from V4.0.0 to V4.1.0
1. add cv181x functions
	2. Delete some useless files and add .gitignore

Change-Id: Iea2b2fa43b5a1152e5e99fb32b88f8d2c249251a
2023-03-10 20:42:30 +08:00

51 lines
1.1 KiB
C

#include <stdlib.h>
#include <common.h>
#include <command.h>
extern int jpeg_decoder(void *bs_addr, void *yuv_addr, int size);
extern int get_jpeg_size(int *width_addr, int *height_addr);
static int do_cvi_jpeg_dec(struct cmd_tbl *cmdtp, int flag, int argc, char * const argv[])
{
char *bs_addr = NULL;
char *yuv_addr = NULL;
int size = 0;
if (argc != 4) {
printf("Usage:\n%s\n", cmdtp->usage);
return 1;
}
bs_addr = (char *)simple_strtol(argv[1], NULL, 16);
if (!bs_addr) {
printf("Usage:\n%s\n", cmdtp->usage);
return 1;
}
yuv_addr = (char *)simple_strtol(argv[2], NULL, 16);
if (!yuv_addr) {
printf("Usage:\n%s\n", cmdtp->usage);
return 1;
}
size = (int)simple_strtol(argv[3], NULL, 16);
if (!size) {
printf("Usage:\n%s\n", cmdtp->usage);
return 1;
}
printf("\nstart jpeg dec task!, bs_addr %p, yuv_addr %p, size %d\n", bs_addr, yuv_addr, size);
jpeg_decoder(bs_addr, yuv_addr, size);
get_jpeg_size((int *)(bs_addr + size - 8), (int *)(bs_addr + size - 4));
return CMD_RET_SUCCESS;
}
U_BOOT_CMD(cvi_jpeg_dec, 4, 0, do_cvi_jpeg_dec, "Jpeg decoder ", "\n"
);