Hi, guys:
I am working on the GMSL camera which is max9286+entron s001a190(max96705),the camera is 8 bit yuv422 and 30 frames/s. I noticed the driver missed yuv,but [Sensor Driver Programming Guid] said it support YUV. Here is my change
— a/kernel/nvidia/drivers/media/platform/tegra/camera/sensor_common.c
+++ b/kernel/nvidia/drivers/media/platform/tegra/camera/sensor_common.c
@@ -196,6 +196,7 @@ static int extract_pixel_format(
{
size_t size = strnlen(pixel_t, OF_MAX_STR_LEN);
-
printk(KERN_ERR "%s: pixel_t=%s\n", __func__, pixel_t); if (strncmp(pixel_t, "bayer_bggr10", size) == 0) *format = V4L2_PIX_FMT_SBGGR10; else if (strncmp(pixel_t, "bayer_rggb10", size) == 0)
@@ -214,6 +215,8 @@ static int extract_pixel_format(
*format = V4L2_PIX_FMT_XBGGR10P;
else if (strncmp(pixel_t, “bayer_xrggb10p”, size) == 0)
*format = V4L2_PIX_FMT_XRGGB10P;
-
else if (strncmp(pixel_t, "yuv_yuyv8", size) == 0)
-
*format = V4L2_PIX_FMT_YUYV; else { pr_err("%s: Need to extend format%s\n", __func__, pixel_t); return -EINVAL;
@@ -532,7 +535,7 @@ int sensor_common_parse_num_modes(const struct device *dev)
break;
num_modes++;
}
-
dev_info(dev, "num_modes=%d\n", num_modes); return num_modes;
}
EXPORT_SYMBOL(sensor_common_parse_num_modes);
when i run the command v4l2-ctl --set-fmt-video=width=1280,height=720,pixelformat=YUYV --stream-mmap --stream-count=100 -d /dev/video0, the console print log like this :
[ 281.541217] tegra194-vi5 15c10000.vi: corr_err: discarding frame 155, flags: 0, err_data 512
[ 281.574509] tegra194-vi5 15c10000.vi: corr_err: discarding frame 156, flags: 0, err_data 512
[ 281.607851] tegra194-vi5 15c10000.vi: corr_err: discarding frame 157, flags: 0, err_data 512
[ 281.641175] tegra194-vi5 15c10000.vi: corr_err: discarding frame 158, flags: 0, err_data 512
[ 281.674552] tegra194-vi5 15c10000.vi: corr_err: discarding frame 159, flags: 0, err_data 512
[ 281.707882] tegra194-vi5 15c10000.vi: corr_err: discarding frame 160, flags: 0, err_data 512
[ 281.741157] tegra194-vi5 15c10000.vi: corr_err: discarding frame 161, flags: 0, err_data 512
[ 281.774502] tegra194-vi5 15c10000.vi: corr_err: discarding frame 162, flags: 0, err_data 512
[ 281.807870] tegra194-vi5 15c10000.vi: corr_err: discarding frame 163, flags: 0, err_data 512
[ 281.841203] tegra194-vi5 15c10000.vi: corr_err: discarding frame 164, flags: 0, err_data 512
[ 281.874535] tegra194-vi5 15c10000.vi: corr_err: discarding frame 165, flags: 0, err_data 512
[ 281.907947] tegra194-vi5 15c10000.vi: corr_err: discarding frame 166, flags: 0, err_data 512
what i can do ? help guys