提交 ace6e979 编写于 作者: G Guennadi Liakhovetski 提交者: Mauro Carvalho Chehab

V4L/DVB: mediabus: fix ambiguous pixel code names

Endianness notation is meaningless for 8 bit YUYV codes. Switch pixel code
names to explicitly state the order of colour components in the data
stream.
Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 0f9313ad
...@@ -316,7 +316,7 @@ static struct soc_camera_platform_info camera_info = { ...@@ -316,7 +316,7 @@ static struct soc_camera_platform_info camera_info = {
.format_name = "UYVY", .format_name = "UYVY",
.format_depth = 16, .format_depth = 16,
.format = { .format = {
.code = V4L2_MBUS_FMT_YUYV8_2X8_BE, .code = V4L2_MBUS_FMT_UYVY8_2X8,
.colorspace = V4L2_COLORSPACE_SMPTE170M, .colorspace = V4L2_COLORSPACE_SMPTE170M,
.field = V4L2_FIELD_NONE, .field = V4L2_FIELD_NONE,
.width = 640, .width = 640,
......
...@@ -126,7 +126,7 @@ static int ak881x_try_g_mbus_fmt(struct v4l2_subdev *sd, ...@@ -126,7 +126,7 @@ static int ak881x_try_g_mbus_fmt(struct v4l2_subdev *sd,
v4l_bound_align_image(&mf->width, 0, 720, 2, v4l_bound_align_image(&mf->width, 0, 720, 2,
&mf->height, 0, ak881x->lines, 1, 0); &mf->height, 0, ak881x->lines, 1, 0);
mf->field = V4L2_FIELD_INTERLACED; mf->field = V4L2_FIELD_INTERLACED;
mf->code = V4L2_MBUS_FMT_YUYV8_2X8_LE; mf->code = V4L2_MBUS_FMT_YUYV8_2X8;
mf->colorspace = V4L2_COLORSPACE_SMPTE170M; mf->colorspace = V4L2_COLORSPACE_SMPTE170M;
return 0; return 0;
...@@ -136,7 +136,7 @@ static int ak881x_s_mbus_fmt(struct v4l2_subdev *sd, ...@@ -136,7 +136,7 @@ static int ak881x_s_mbus_fmt(struct v4l2_subdev *sd,
struct v4l2_mbus_framefmt *mf) struct v4l2_mbus_framefmt *mf)
{ {
if (mf->field != V4L2_FIELD_INTERLACED || if (mf->field != V4L2_FIELD_INTERLACED ||
mf->code != V4L2_MBUS_FMT_YUYV8_2X8_LE) mf->code != V4L2_MBUS_FMT_YUYV8_2X8)
return -EINVAL; return -EINVAL;
return ak881x_try_g_mbus_fmt(sd, mf); return ak881x_try_g_mbus_fmt(sd, mf);
...@@ -148,7 +148,7 @@ static int ak881x_enum_mbus_fmt(struct v4l2_subdev *sd, unsigned int index, ...@@ -148,7 +148,7 @@ static int ak881x_enum_mbus_fmt(struct v4l2_subdev *sd, unsigned int index,
if (index) if (index)
return -EINVAL; return -EINVAL;
*code = V4L2_MBUS_FMT_YUYV8_2X8_LE; *code = V4L2_MBUS_FMT_YUYV8_2X8;
return 0; return 0;
} }
......
...@@ -143,10 +143,10 @@ static const struct mt9m111_datafmt *mt9m111_find_datafmt( ...@@ -143,10 +143,10 @@ static const struct mt9m111_datafmt *mt9m111_find_datafmt(
} }
static const struct mt9m111_datafmt mt9m111_colour_fmts[] = { static const struct mt9m111_datafmt mt9m111_colour_fmts[] = {
{V4L2_MBUS_FMT_YUYV8_2X8_LE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_YUYV8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_YVYU8_2X8_LE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_YVYU8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_YUYV8_2X8_BE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_UYVY8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_YVYU8_2X8_BE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_VYUY8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE, V4L2_COLORSPACE_SRGB},
{V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_COLORSPACE_SRGB},
{V4L2_MBUS_FMT_SBGGR8_1X8, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_SBGGR8_1X8, V4L2_COLORSPACE_SRGB},
...@@ -505,22 +505,22 @@ static int mt9m111_set_pixfmt(struct i2c_client *client, ...@@ -505,22 +505,22 @@ static int mt9m111_set_pixfmt(struct i2c_client *client,
case V4L2_MBUS_FMT_RGB565_2X8_LE: case V4L2_MBUS_FMT_RGB565_2X8_LE:
ret = mt9m111_setfmt_rgb565(client); ret = mt9m111_setfmt_rgb565(client);
break; break;
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
mt9m111->swap_yuv_y_chromas = 0; mt9m111->swap_yuv_y_chromas = 0;
mt9m111->swap_yuv_cb_cr = 0; mt9m111->swap_yuv_cb_cr = 0;
ret = mt9m111_setfmt_yuv(client); ret = mt9m111_setfmt_yuv(client);
break; break;
case V4L2_MBUS_FMT_YVYU8_2X8_BE: case V4L2_MBUS_FMT_VYUY8_2X8:
mt9m111->swap_yuv_y_chromas = 0; mt9m111->swap_yuv_y_chromas = 0;
mt9m111->swap_yuv_cb_cr = 1; mt9m111->swap_yuv_cb_cr = 1;
ret = mt9m111_setfmt_yuv(client); ret = mt9m111_setfmt_yuv(client);
break; break;
case V4L2_MBUS_FMT_YUYV8_2X8_LE: case V4L2_MBUS_FMT_YUYV8_2X8:
mt9m111->swap_yuv_y_chromas = 1; mt9m111->swap_yuv_y_chromas = 1;
mt9m111->swap_yuv_cb_cr = 0; mt9m111->swap_yuv_cb_cr = 0;
ret = mt9m111_setfmt_yuv(client); ret = mt9m111_setfmt_yuv(client);
break; break;
case V4L2_MBUS_FMT_YVYU8_2X8_LE: case V4L2_MBUS_FMT_YVYU8_2X8:
mt9m111->swap_yuv_y_chromas = 1; mt9m111->swap_yuv_y_chromas = 1;
mt9m111->swap_yuv_cb_cr = 1; mt9m111->swap_yuv_cb_cr = 1;
ret = mt9m111_setfmt_yuv(client); ret = mt9m111_setfmt_yuv(client);
......
...@@ -121,22 +121,22 @@ struct mt9t112_priv { ...@@ -121,22 +121,22 @@ struct mt9t112_priv {
static const struct mt9t112_format mt9t112_cfmts[] = { static const struct mt9t112_format mt9t112_cfmts[] = {
{ {
.code = V4L2_MBUS_FMT_YUYV8_2X8_BE, .code = V4L2_MBUS_FMT_UYVY8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.fmt = 1, .fmt = 1,
.order = 0, .order = 0,
}, { }, {
.code = V4L2_MBUS_FMT_YVYU8_2X8_BE, .code = V4L2_MBUS_FMT_VYUY8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.fmt = 1, .fmt = 1,
.order = 1, .order = 1,
}, { }, {
.code = V4L2_MBUS_FMT_YUYV8_2X8_LE, .code = V4L2_MBUS_FMT_YUYV8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.fmt = 1, .fmt = 1,
.order = 2, .order = 2,
}, { }, {
.code = V4L2_MBUS_FMT_YVYU8_2X8_LE, .code = V4L2_MBUS_FMT_YVYU8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.fmt = 1, .fmt = 1,
.order = 3, .order = 3,
...@@ -972,7 +972,7 @@ static int mt9t112_s_crop(struct v4l2_subdev *sd, struct v4l2_crop *a) ...@@ -972,7 +972,7 @@ static int mt9t112_s_crop(struct v4l2_subdev *sd, struct v4l2_crop *a)
struct v4l2_rect *rect = &a->c; struct v4l2_rect *rect = &a->c;
return mt9t112_set_params(client, rect->width, rect->height, return mt9t112_set_params(client, rect->width, rect->height,
V4L2_MBUS_FMT_YUYV8_2X8_BE); V4L2_MBUS_FMT_UYVY8_2X8);
} }
static int mt9t112_g_fmt(struct v4l2_subdev *sd, static int mt9t112_g_fmt(struct v4l2_subdev *sd,
...@@ -983,7 +983,7 @@ static int mt9t112_g_fmt(struct v4l2_subdev *sd, ...@@ -983,7 +983,7 @@ static int mt9t112_g_fmt(struct v4l2_subdev *sd,
if (!priv->format) { if (!priv->format) {
int ret = mt9t112_set_params(client, VGA_WIDTH, VGA_HEIGHT, int ret = mt9t112_set_params(client, VGA_WIDTH, VGA_HEIGHT,
V4L2_MBUS_FMT_YUYV8_2X8_BE); V4L2_MBUS_FMT_UYVY8_2X8);
if (ret < 0) if (ret < 0)
return ret; return ret;
} }
......
...@@ -440,21 +440,21 @@ static const struct regval_list ov772x_vga_regs[] = { ...@@ -440,21 +440,21 @@ static const struct regval_list ov772x_vga_regs[] = {
*/ */
static const struct ov772x_color_format ov772x_cfmts[] = { static const struct ov772x_color_format ov772x_cfmts[] = {
{ {
.code = V4L2_MBUS_FMT_YUYV8_2X8_LE, .code = V4L2_MBUS_FMT_YUYV8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.dsp3 = 0x0, .dsp3 = 0x0,
.com3 = SWAP_YUV, .com3 = SWAP_YUV,
.com7 = OFMT_YUV, .com7 = OFMT_YUV,
}, },
{ {
.code = V4L2_MBUS_FMT_YVYU8_2X8_LE, .code = V4L2_MBUS_FMT_YVYU8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.dsp3 = UV_ON, .dsp3 = UV_ON,
.com3 = SWAP_YUV, .com3 = SWAP_YUV,
.com7 = OFMT_YUV, .com7 = OFMT_YUV,
}, },
{ {
.code = V4L2_MBUS_FMT_YUYV8_2X8_BE, .code = V4L2_MBUS_FMT_UYVY8_2X8,
.colorspace = V4L2_COLORSPACE_JPEG, .colorspace = V4L2_COLORSPACE_JPEG,
.dsp3 = 0x0, .dsp3 = 0x0,
.com3 = 0x0, .com3 = 0x0,
...@@ -960,7 +960,7 @@ static int ov772x_g_fmt(struct v4l2_subdev *sd, ...@@ -960,7 +960,7 @@ static int ov772x_g_fmt(struct v4l2_subdev *sd,
if (!priv->win || !priv->cfmt) { if (!priv->win || !priv->cfmt) {
u32 width = VGA_WIDTH, height = VGA_HEIGHT; u32 width = VGA_WIDTH, height = VGA_HEIGHT;
int ret = ov772x_set_params(client, &width, &height, int ret = ov772x_set_params(client, &width, &height,
V4L2_MBUS_FMT_YUYV8_2X8_LE); V4L2_MBUS_FMT_YUYV8_2X8);
if (ret < 0) if (ret < 0)
return ret; return ret;
} }
......
...@@ -155,7 +155,7 @@ static const struct ov9640_reg ov9640_regs_rgb[] = { ...@@ -155,7 +155,7 @@ static const struct ov9640_reg ov9640_regs_rgb[] = {
}; };
static enum v4l2_mbus_pixelcode ov9640_codes[] = { static enum v4l2_mbus_pixelcode ov9640_codes[] = {
V4L2_MBUS_FMT_YUYV8_2X8_BE, V4L2_MBUS_FMT_UYVY8_2X8,
V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE, V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE,
V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_MBUS_FMT_RGB565_2X8_LE,
}; };
...@@ -430,7 +430,7 @@ static void ov9640_alter_regs(enum v4l2_mbus_pixelcode code, ...@@ -430,7 +430,7 @@ static void ov9640_alter_regs(enum v4l2_mbus_pixelcode code,
{ {
switch (code) { switch (code) {
default: default:
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
alt->com12 = OV9640_COM12_YUV_AVG; alt->com12 = OV9640_COM12_YUV_AVG;
alt->com13 = OV9640_COM13_Y_DELAY_EN | alt->com13 = OV9640_COM13_Y_DELAY_EN |
OV9640_COM13_YUV_DLY(0x01); OV9640_COM13_YUV_DLY(0x01);
...@@ -493,7 +493,7 @@ static int ov9640_write_regs(struct i2c_client *client, u32 width, ...@@ -493,7 +493,7 @@ static int ov9640_write_regs(struct i2c_client *client, u32 width,
} }
/* select color matrix configuration for given color encoding */ /* select color matrix configuration for given color encoding */
if (code == V4L2_MBUS_FMT_YUYV8_2X8_BE) { if (code == V4L2_MBUS_FMT_UYVY8_2X8) {
matrix_regs = ov9640_regs_yuv; matrix_regs = ov9640_regs_yuv;
matrix_regs_len = ARRAY_SIZE(ov9640_regs_yuv); matrix_regs_len = ARRAY_SIZE(ov9640_regs_yuv);
} else { } else {
...@@ -579,8 +579,8 @@ static int ov9640_s_fmt(struct v4l2_subdev *sd, ...@@ -579,8 +579,8 @@ static int ov9640_s_fmt(struct v4l2_subdev *sd,
cspace = V4L2_COLORSPACE_SRGB; cspace = V4L2_COLORSPACE_SRGB;
break; break;
default: default:
code = V4L2_MBUS_FMT_YUYV8_2X8_BE; code = V4L2_MBUS_FMT_UYVY8_2X8;
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
cspace = V4L2_COLORSPACE_JPEG; cspace = V4L2_COLORSPACE_JPEG;
} }
...@@ -606,8 +606,8 @@ static int ov9640_try_fmt(struct v4l2_subdev *sd, ...@@ -606,8 +606,8 @@ static int ov9640_try_fmt(struct v4l2_subdev *sd,
mf->colorspace = V4L2_COLORSPACE_SRGB; mf->colorspace = V4L2_COLORSPACE_SRGB;
break; break;
default: default:
mf->code = V4L2_MBUS_FMT_YUYV8_2X8_BE; mf->code = V4L2_MBUS_FMT_UYVY8_2X8;
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
mf->colorspace = V4L2_COLORSPACE_JPEG; mf->colorspace = V4L2_COLORSPACE_JPEG;
} }
......
...@@ -1284,7 +1284,7 @@ static int pxa_camera_get_formats(struct soc_camera_device *icd, unsigned int id ...@@ -1284,7 +1284,7 @@ static int pxa_camera_get_formats(struct soc_camera_device *icd, unsigned int id
} }
switch (code) { switch (code) {
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
formats++; formats++;
if (xlate) { if (xlate) {
xlate->host_fmt = &pxa_camera_formats[0]; xlate->host_fmt = &pxa_camera_formats[0];
...@@ -1293,9 +1293,9 @@ static int pxa_camera_get_formats(struct soc_camera_device *icd, unsigned int id ...@@ -1293,9 +1293,9 @@ static int pxa_camera_get_formats(struct soc_camera_device *icd, unsigned int id
dev_dbg(dev, "Providing format %s using code %d\n", dev_dbg(dev, "Providing format %s using code %d\n",
pxa_camera_formats[0].name, code); pxa_camera_formats[0].name, code);
} }
case V4L2_MBUS_FMT_YVYU8_2X8_BE: case V4L2_MBUS_FMT_VYUY8_2X8:
case V4L2_MBUS_FMT_YUYV8_2X8_LE: case V4L2_MBUS_FMT_YUYV8_2X8:
case V4L2_MBUS_FMT_YVYU8_2X8_LE: case V4L2_MBUS_FMT_YVYU8_2X8:
case V4L2_MBUS_FMT_RGB565_2X8_LE: case V4L2_MBUS_FMT_RGB565_2X8_LE:
case V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE: case V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE:
if (xlate) if (xlate)
......
...@@ -127,8 +127,8 @@ static const struct rj54n1_datafmt *rj54n1_find_datafmt( ...@@ -127,8 +127,8 @@ static const struct rj54n1_datafmt *rj54n1_find_datafmt(
} }
static const struct rj54n1_datafmt rj54n1_colour_fmts[] = { static const struct rj54n1_datafmt rj54n1_colour_fmts[] = {
{V4L2_MBUS_FMT_YUYV8_2X8_LE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_YUYV8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_YVYU8_2X8_LE, V4L2_COLORSPACE_JPEG}, {V4L2_MBUS_FMT_YVYU8_2X8, V4L2_COLORSPACE_JPEG},
{V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_COLORSPACE_SRGB},
{V4L2_MBUS_FMT_RGB565_2X8_BE, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_RGB565_2X8_BE, V4L2_COLORSPACE_SRGB},
{V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE, V4L2_COLORSPACE_SRGB}, {V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE, V4L2_COLORSPACE_SRGB},
...@@ -1046,12 +1046,12 @@ static int rj54n1_s_fmt(struct v4l2_subdev *sd, ...@@ -1046,12 +1046,12 @@ static int rj54n1_s_fmt(struct v4l2_subdev *sd,
/* RA_SEL_UL is only relevant for raw modes, ignored otherwise. */ /* RA_SEL_UL is only relevant for raw modes, ignored otherwise. */
switch (mf->code) { switch (mf->code) {
case V4L2_MBUS_FMT_YUYV8_2X8_LE: case V4L2_MBUS_FMT_YUYV8_2X8:
ret = reg_write(client, RJ54N1_OUT_SEL, 0); ret = reg_write(client, RJ54N1_OUT_SEL, 0);
if (!ret) if (!ret)
ret = reg_set(client, RJ54N1_BYTE_SWAP, 8, 8); ret = reg_set(client, RJ54N1_BYTE_SWAP, 8, 8);
break; break;
case V4L2_MBUS_FMT_YVYU8_2X8_LE: case V4L2_MBUS_FMT_YVYU8_2X8:
ret = reg_write(client, RJ54N1_OUT_SEL, 0); ret = reg_write(client, RJ54N1_OUT_SEL, 0);
if (!ret) if (!ret)
ret = reg_set(client, RJ54N1_BYTE_SWAP, 0, 8); ret = reg_set(client, RJ54N1_BYTE_SWAP, 0, 8);
......
...@@ -743,16 +743,16 @@ static int sh_mobile_ceu_set_bus_param(struct soc_camera_device *icd, ...@@ -743,16 +743,16 @@ static int sh_mobile_ceu_set_bus_param(struct soc_camera_device *icd,
case V4L2_PIX_FMT_NV16: case V4L2_PIX_FMT_NV16:
case V4L2_PIX_FMT_NV61: case V4L2_PIX_FMT_NV61:
switch (cam->code) { switch (cam->code) {
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
value = 0x00000000; /* Cb0, Y0, Cr0, Y1 */ value = 0x00000000; /* Cb0, Y0, Cr0, Y1 */
break; break;
case V4L2_MBUS_FMT_YVYU8_2X8_BE: case V4L2_MBUS_FMT_VYUY8_2X8:
value = 0x00000100; /* Cr0, Y0, Cb0, Y1 */ value = 0x00000100; /* Cr0, Y0, Cb0, Y1 */
break; break;
case V4L2_MBUS_FMT_YUYV8_2X8_LE: case V4L2_MBUS_FMT_YUYV8_2X8:
value = 0x00000200; /* Y0, Cb0, Y1, Cr0 */ value = 0x00000200; /* Y0, Cb0, Y1, Cr0 */
break; break;
case V4L2_MBUS_FMT_YVYU8_2X8_LE: case V4L2_MBUS_FMT_YVYU8_2X8:
value = 0x00000300; /* Y0, Cr0, Y1, Cb0 */ value = 0x00000300; /* Y0, Cr0, Y1, Cb0 */
break; break;
default: default:
...@@ -965,10 +965,10 @@ static int sh_mobile_ceu_get_formats(struct soc_camera_device *icd, unsigned int ...@@ -965,10 +965,10 @@ static int sh_mobile_ceu_get_formats(struct soc_camera_device *icd, unsigned int
cam->extra_fmt = NULL; cam->extra_fmt = NULL;
switch (code) { switch (code) {
case V4L2_MBUS_FMT_YUYV8_2X8_BE: case V4L2_MBUS_FMT_UYVY8_2X8:
case V4L2_MBUS_FMT_YVYU8_2X8_BE: case V4L2_MBUS_FMT_VYUY8_2X8:
case V4L2_MBUS_FMT_YUYV8_2X8_LE: case V4L2_MBUS_FMT_YUYV8_2X8:
case V4L2_MBUS_FMT_YVYU8_2X8_LE: case V4L2_MBUS_FMT_YVYU8_2X8:
if (cam->extra_fmt) if (cam->extra_fmt)
break; break;
......
...@@ -678,7 +678,7 @@ static int sh_vou_s_fmt_vid_out(struct file *file, void *priv, ...@@ -678,7 +678,7 @@ static int sh_vou_s_fmt_vid_out(struct file *file, void *priv,
struct sh_vou_geometry geo; struct sh_vou_geometry geo;
struct v4l2_mbus_framefmt mbfmt = { struct v4l2_mbus_framefmt mbfmt = {
/* Revisit: is this the correct code? */ /* Revisit: is this the correct code? */
.code = V4L2_MBUS_FMT_YUYV8_2X8_LE, .code = V4L2_MBUS_FMT_YUYV8_2X8,
.field = V4L2_FIELD_INTERLACED, .field = V4L2_FIELD_INTERLACED,
.colorspace = V4L2_COLORSPACE_SMPTE170M, .colorspace = V4L2_COLORSPACE_SMPTE170M,
}; };
...@@ -726,7 +726,7 @@ static int sh_vou_s_fmt_vid_out(struct file *file, void *priv, ...@@ -726,7 +726,7 @@ static int sh_vou_s_fmt_vid_out(struct file *file, void *priv,
/* Sanity checks */ /* Sanity checks */
if ((unsigned)mbfmt.width > VOU_MAX_IMAGE_WIDTH || if ((unsigned)mbfmt.width > VOU_MAX_IMAGE_WIDTH ||
(unsigned)mbfmt.height > VOU_MAX_IMAGE_HEIGHT || (unsigned)mbfmt.height > VOU_MAX_IMAGE_HEIGHT ||
mbfmt.code != V4L2_MBUS_FMT_YUYV8_2X8_LE) mbfmt.code != V4L2_MBUS_FMT_YUYV8_2X8)
return -EIO; return -EIO;
if (mbfmt.width != geo.output.width || if (mbfmt.width != geo.output.width ||
...@@ -937,7 +937,7 @@ static int sh_vou_s_crop(struct file *file, void *fh, struct v4l2_crop *a) ...@@ -937,7 +937,7 @@ static int sh_vou_s_crop(struct file *file, void *fh, struct v4l2_crop *a)
struct sh_vou_geometry geo; struct sh_vou_geometry geo;
struct v4l2_mbus_framefmt mbfmt = { struct v4l2_mbus_framefmt mbfmt = {
/* Revisit: is this the correct code? */ /* Revisit: is this the correct code? */
.code = V4L2_MBUS_FMT_YUYV8_2X8_LE, .code = V4L2_MBUS_FMT_YUYV8_2X8,
.field = V4L2_FIELD_INTERLACED, .field = V4L2_FIELD_INTERLACED,
.colorspace = V4L2_COLORSPACE_SMPTE170M, .colorspace = V4L2_COLORSPACE_SMPTE170M,
}; };
...@@ -982,7 +982,7 @@ static int sh_vou_s_crop(struct file *file, void *fh, struct v4l2_crop *a) ...@@ -982,7 +982,7 @@ static int sh_vou_s_crop(struct file *file, void *fh, struct v4l2_crop *a)
/* Sanity checks */ /* Sanity checks */
if ((unsigned)mbfmt.width > VOU_MAX_IMAGE_WIDTH || if ((unsigned)mbfmt.width > VOU_MAX_IMAGE_WIDTH ||
(unsigned)mbfmt.height > VOU_MAX_IMAGE_HEIGHT || (unsigned)mbfmt.height > VOU_MAX_IMAGE_HEIGHT ||
mbfmt.code != V4L2_MBUS_FMT_YUYV8_2X8_LE) mbfmt.code != V4L2_MBUS_FMT_YUYV8_2X8)
return -EIO; return -EIO;
geo.output.width = mbfmt.width; geo.output.width = mbfmt.width;
......
...@@ -18,28 +18,28 @@ ...@@ -18,28 +18,28 @@
#define MBUS_IDX(f) (V4L2_MBUS_FMT_ ## f - V4L2_MBUS_FMT_FIXED - 1) #define MBUS_IDX(f) (V4L2_MBUS_FMT_ ## f - V4L2_MBUS_FMT_FIXED - 1)
static const struct soc_mbus_pixelfmt mbus_fmt[] = { static const struct soc_mbus_pixelfmt mbus_fmt[] = {
[MBUS_IDX(YUYV8_2X8_LE)] = { [MBUS_IDX(YUYV8_2X8)] = {
.fourcc = V4L2_PIX_FMT_YUYV, .fourcc = V4L2_PIX_FMT_YUYV,
.name = "YUYV", .name = "YUYV",
.bits_per_sample = 8, .bits_per_sample = 8,
.packing = SOC_MBUS_PACKING_2X8_PADHI, .packing = SOC_MBUS_PACKING_2X8_PADHI,
.order = SOC_MBUS_ORDER_LE, .order = SOC_MBUS_ORDER_LE,
}, },
[MBUS_IDX(YVYU8_2X8_LE)] = { [MBUS_IDX(YVYU8_2X8)] = {
.fourcc = V4L2_PIX_FMT_YVYU, .fourcc = V4L2_PIX_FMT_YVYU,
.name = "YVYU", .name = "YVYU",
.bits_per_sample = 8, .bits_per_sample = 8,
.packing = SOC_MBUS_PACKING_2X8_PADHI, .packing = SOC_MBUS_PACKING_2X8_PADHI,
.order = SOC_MBUS_ORDER_LE, .order = SOC_MBUS_ORDER_LE,
}, },
[MBUS_IDX(YUYV8_2X8_BE)] = { [MBUS_IDX(UYVY8_2X8)] = {
.fourcc = V4L2_PIX_FMT_UYVY, .fourcc = V4L2_PIX_FMT_UYVY,
.name = "UYVY", .name = "UYVY",
.bits_per_sample = 8, .bits_per_sample = 8,
.packing = SOC_MBUS_PACKING_2X8_PADHI, .packing = SOC_MBUS_PACKING_2X8_PADHI,
.order = SOC_MBUS_ORDER_LE, .order = SOC_MBUS_ORDER_LE,
}, },
[MBUS_IDX(YVYU8_2X8_BE)] = { [MBUS_IDX(VYUY8_2X8)] = {
.fourcc = V4L2_PIX_FMT_VYUY, .fourcc = V4L2_PIX_FMT_VYUY,
.name = "VYUY", .name = "VYUY",
.bits_per_sample = 8, .bits_per_sample = 8,
......
...@@ -768,7 +768,7 @@ static int tw9910_g_fmt(struct v4l2_subdev *sd, ...@@ -768,7 +768,7 @@ static int tw9910_g_fmt(struct v4l2_subdev *sd,
mf->width = priv->scale->width; mf->width = priv->scale->width;
mf->height = priv->scale->height; mf->height = priv->scale->height;
mf->code = V4L2_MBUS_FMT_YUYV8_2X8_BE; mf->code = V4L2_MBUS_FMT_UYVY8_2X8;
mf->colorspace = V4L2_COLORSPACE_JPEG; mf->colorspace = V4L2_COLORSPACE_JPEG;
mf->field = V4L2_FIELD_INTERLACED_BT; mf->field = V4L2_FIELD_INTERLACED_BT;
...@@ -797,7 +797,7 @@ static int tw9910_s_fmt(struct v4l2_subdev *sd, ...@@ -797,7 +797,7 @@ static int tw9910_s_fmt(struct v4l2_subdev *sd,
/* /*
* check color format * check color format
*/ */
if (mf->code != V4L2_MBUS_FMT_YUYV8_2X8_BE) if (mf->code != V4L2_MBUS_FMT_UYVY8_2X8)
return -EINVAL; return -EINVAL;
mf->colorspace = V4L2_COLORSPACE_JPEG; mf->colorspace = V4L2_COLORSPACE_JPEG;
...@@ -824,7 +824,7 @@ static int tw9910_try_fmt(struct v4l2_subdev *sd, ...@@ -824,7 +824,7 @@ static int tw9910_try_fmt(struct v4l2_subdev *sd,
return -EINVAL; return -EINVAL;
} }
mf->code = V4L2_MBUS_FMT_YUYV8_2X8_BE; mf->code = V4L2_MBUS_FMT_UYVY8_2X8;
mf->colorspace = V4L2_COLORSPACE_JPEG; mf->colorspace = V4L2_COLORSPACE_JPEG;
/* /*
...@@ -909,7 +909,7 @@ static int tw9910_enum_fmt(struct v4l2_subdev *sd, unsigned int index, ...@@ -909,7 +909,7 @@ static int tw9910_enum_fmt(struct v4l2_subdev *sd, unsigned int index,
if (index) if (index)
return -EINVAL; return -EINVAL;
*code = V4L2_MBUS_FMT_YUYV8_2X8_BE; *code = V4L2_MBUS_FMT_UYVY8_2X8;
return 0; return 0;
} }
......
...@@ -24,10 +24,10 @@ ...@@ -24,10 +24,10 @@
*/ */
enum v4l2_mbus_pixelcode { enum v4l2_mbus_pixelcode {
V4L2_MBUS_FMT_FIXED = 1, V4L2_MBUS_FMT_FIXED = 1,
V4L2_MBUS_FMT_YUYV8_2X8_LE, V4L2_MBUS_FMT_YUYV8_2X8,
V4L2_MBUS_FMT_YVYU8_2X8_LE, V4L2_MBUS_FMT_YVYU8_2X8,
V4L2_MBUS_FMT_YUYV8_2X8_BE, V4L2_MBUS_FMT_UYVY8_2X8,
V4L2_MBUS_FMT_YVYU8_2X8_BE, V4L2_MBUS_FMT_VYUY8_2X8,
V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE, V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE,
V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE, V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE,
V4L2_MBUS_FMT_RGB565_2X8_LE, V4L2_MBUS_FMT_RGB565_2X8_LE,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册