.. | .. |
---|
558 | 558 | struct imx323 *imx323 = to_imx323(sd); |
---|
559 | 559 | const struct imx323_mode *mode = imx323->cur_mode; |
---|
560 | 560 | |
---|
561 | | - mutex_lock(&imx323->mutex); |
---|
562 | 561 | fi->interval = mode->max_fps; |
---|
563 | | - mutex_unlock(&imx323->mutex); |
---|
564 | 562 | |
---|
565 | 563 | return 0; |
---|
566 | 564 | } |
---|
.. | .. |
---|
706 | 704 | } |
---|
707 | 705 | #endif |
---|
708 | 706 | |
---|
709 | | -static int imx323_g_mbus_config(struct v4l2_subdev *sd, |
---|
| 707 | +static int imx323_g_mbus_config(struct v4l2_subdev *sd, unsigned int pad_id, |
---|
710 | 708 | struct v4l2_mbus_config *config) |
---|
711 | 709 | { |
---|
712 | 710 | config->type = V4L2_MBUS_BT656; |
---|
.. | .. |
---|
723 | 721 | if (fie->index >= ARRAY_SIZE(supported_modes)) |
---|
724 | 722 | return -EINVAL; |
---|
725 | 723 | |
---|
726 | | - if (fie->code != PIX_FORMAT) |
---|
727 | | - return -EINVAL; |
---|
728 | | - |
---|
| 724 | + fie->code = PIX_FORMAT; |
---|
729 | 725 | fie->width = supported_modes[fie->index].width; |
---|
730 | 726 | fie->height = supported_modes[fie->index].height; |
---|
731 | 727 | fie->interval = supported_modes[fie->index].max_fps; |
---|
.. | .. |
---|
753 | 749 | |
---|
754 | 750 | static const struct v4l2_subdev_video_ops imx323_video_ops = { |
---|
755 | 751 | .s_stream = imx323_s_stream, |
---|
756 | | - .g_mbus_config = imx323_g_mbus_config, |
---|
757 | 752 | .g_frame_interval = imx323_g_frame_interval, |
---|
758 | 753 | }; |
---|
759 | 754 | |
---|
.. | .. |
---|
763 | 758 | .enum_frame_interval = imx323_enum_frame_interval, |
---|
764 | 759 | .get_fmt = imx323_get_fmt, |
---|
765 | 760 | .set_fmt = imx323_set_fmt, |
---|
| 761 | + .get_mbus_config = imx323_g_mbus_config, |
---|
766 | 762 | }; |
---|
767 | 763 | |
---|
768 | 764 | static const struct v4l2_subdev_ops imx323_subdev_ops = { |
---|