From: kernel test robot <lkp@intel.com>
To: Kieran Bingham <kieran.bingham@ideasonboard.com>,
Umang Jain <uajain@igalia.com>,
Sakari Ailus <sakari.ailus@linux.intel.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Hans Verkuil <hverkuil@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev, linux-media@vger.kernel.org,
Jai Luthra <jai.luthra@ideasonboard.com>,
linux-kernel@vger.kernel.org,
Kieran Bingham <kieran.bingham@ideasonboard.com>
Subject: Re: [PATCH v2 25/25] media: i2c: imx283: Simplify VFLIP control setting
Date: Sat, 14 Feb 2026 07:20:32 +0800 [thread overview]
Message-ID: <202602140716.ayhsqB6c-lkp@intel.com> (raw)
In-Reply-To: <20260213-mainline-imx283-v2-v2-25-be40a3770ebf@ideasonboard.com>
Hi Kieran,
kernel test robot noticed the following build errors:
[auto build test ERROR on c824345288d11e269ce41b36c105715bc2286050]
url: https://github.com/intel-lab-lkp/linux/commits/Kieran-Bingham/media-i2c-imx283-Report-correct-V4L2_SEL_TGT_CROP/20260213-221320
base: c824345288d11e269ce41b36c105715bc2286050
patch link: https://lore.kernel.org/r/20260213-mainline-imx283-v2-v2-25-be40a3770ebf%40ideasonboard.com
patch subject: [PATCH v2 25/25] media: i2c: imx283: Simplify VFLIP control setting
config: openrisc-randconfig-r071-20260214 (https://download.01.org/0day-ci/archive/20260214/202602140716.ayhsqB6c-lkp@intel.com/config)
compiler: or1k-linux-gcc (GCC) 9.5.0
smatch version: v0.5.0-8994-gd50c5a4c
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260214/202602140716.ayhsqB6c-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202602140716.ayhsqB6c-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/media/i2c/imx283.c: In function 'imx283_set_ctrl':
>> drivers/media/i2c/imx283.c:951:3: error: a label can only be part of a statement and a declaration is not a statement
951 | u8 trim = IMX283_HTRIMMING_EN;
| ^~
vim +951 drivers/media/i2c/imx283.c
850
851 static int imx283_set_ctrl(struct v4l2_ctrl *ctrl)
852 {
853 struct imx283 *imx283 = container_of(ctrl->handler, struct imx283,
854 ctrl_handler);
855 const struct imx283_mode *mode;
856 struct v4l2_mbus_framefmt *fmt;
857 const struct imx283_mode *mode_list;
858 struct v4l2_subdev_state *state;
859 unsigned int num_modes;
860 u64 shr;
861 int ret = 0;
862
863 state = v4l2_subdev_get_locked_active_state(&imx283->sd);
864 fmt = v4l2_subdev_state_get_format(state, 0);
865
866 get_mode_table(fmt->code, &mode_list, &num_modes);
867 mode = v4l2_find_nearest_size(mode_list, num_modes, width, height,
868 fmt->width, fmt->height);
869
870 /*
871 * The VBLANK/HBLANK controls change the limits of usable exposure,
872 * so check and adjust if necessary.
873 */
874 if (ctrl->id == V4L2_CID_HBLANK) {
875 u64 pixel_rate = imx283_pixel_rate(imx283, mode);
876 u32 max_width = mode->crop.width + ctrl->val;
877
878 imx283->hmax = imx283_internal_clock(pixel_rate, max_width);
879 }
880
881 if (ctrl->id == V4L2_CID_VBLANK)
882 imx283->vmax = mode->crop.height + ctrl->val;
883
884 if (ctrl->id == V4L2_CID_HBLANK ||
885 ctrl->id == V4L2_CID_VBLANK) {
886 /* Honour the VBLANK limits when setting exposure. */
887 s64 current_exposure, max_exposure, min_exposure;
888
889 imx283_exposure_limits(imx283, mode,
890 &min_exposure, &max_exposure);
891
892 current_exposure = imx283->exposure->val;
893 current_exposure = clamp(current_exposure, min_exposure,
894 max_exposure);
895
896 __v4l2_ctrl_modify_range(imx283->exposure, min_exposure,
897 max_exposure, 1, current_exposure);
898 }
899
900 /*
901 * Applying V4L2 control value only happens
902 * when power is up for streaming
903 */
904 if (!pm_runtime_get_if_active(imx283->dev))
905 return 0;
906
907 switch (ctrl->id) {
908 case V4L2_CID_EXPOSURE:
909 shr = imx283_shr(imx283, mode, ctrl->val);
910 dev_dbg(imx283->dev, "V4L2_CID_EXPOSURE : %d - SHR: %lld\n",
911 ctrl->val, shr);
912 ret = cci_write(imx283->cci, IMX283_REG_SHR, shr, NULL);
913 break;
914
915 case V4L2_CID_HBLANK:
916 dev_dbg(imx283->dev, "V4L2_CID_HBLANK : %d HMAX : %u\n",
917 ctrl->val, imx283->hmax);
918 ret = cci_write(imx283->cci, IMX283_REG_HMAX, imx283->hmax, NULL);
919
920 /* Recompute the SHR based on the new timings */
921 shr = imx283_shr(imx283, mode, imx283->exposure->val);
922 cci_write(imx283->cci, IMX283_REG_SHR, shr, &ret);
923
924 break;
925
926 case V4L2_CID_VBLANK:
927 imx283->vmax = mode->crop.height + ctrl->val;
928 dev_dbg(imx283->dev, "V4L2_CID_VBLANK : %d VMAX : %u\n",
929 ctrl->val, imx283->vmax);
930 ret = cci_write(imx283->cci, IMX283_REG_VMAX, imx283->vmax, NULL);
931
932 /* Recompute the SHR based on the new timings */
933 shr = imx283_shr(imx283, mode, imx283->exposure->val);
934 cci_write(imx283->cci, IMX283_REG_SHR, shr, &ret);
935
936 break;
937
938 case V4L2_CID_ANALOGUE_GAIN:
939 ret = cci_write(imx283->cci, IMX283_REG_ANALOG_GAIN, ctrl->val, NULL);
940 break;
941
942 case V4L2_CID_DIGITAL_GAIN:
943 ret = cci_write(imx283->cci, IMX283_REG_DIGITAL_GAIN, ctrl->val, NULL);
944 break;
945
946 case V4L2_CID_VFLIP:
947 /*
948 * VFLIP is managed by BIT(0) of IMX283_REG_HTRIMMING address, hence
949 * both need to be set simultaneously.
950 */
> 951 u8 trim = IMX283_HTRIMMING_EN;
952
953 trim |= ctrl->val ? IMX283_MDVREV : 0;
954 cci_write(imx283->cci, IMX283_REG_HTRIMMING, trim, &ret);
955
956 break;
957
958 case V4L2_CID_TEST_PATTERN:
959 ret = imx283_update_test_pattern(imx283, ctrl->val);
960 break;
961
962 default:
963 dev_err(imx283->dev, "ctrl(id:0x%x, val:0x%x) is not handled\n",
964 ctrl->id, ctrl->val);
965 break;
966 }
967
968 pm_runtime_put(imx283->dev);
969
970 return ret;
971 }
972
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
prev parent reply other threads:[~2026-02-13 23:20 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-13 14:01 [PATCH v2 00/25] drivers: media: imx283 improvements Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 01/25] media: i2c: imx283: Report correct V4L2_SEL_TGT_CROP Kieran Bingham
2026-02-16 14:39 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 02/25] media: i2c: imx283: Fix handling of unsupported mbus codes Kieran Bingham
2026-02-16 14:41 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 03/25] media: i2c: imx283: Move imx283_mode structure definition Kieran Bingham
2026-02-16 14:41 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 04/25] media: i2c: imx283: Move scan out data to single data structure Kieran Bingham
2026-02-16 14:42 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 05/25] media: i2c: imx283: Remove horizontal_ob Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 06/25] media: i2c: imx283: Move vertical_ob to scan modes Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 07/25] media: i2c: imx283: Factor out vertical cropping parameters Kieran Bingham
2026-02-16 14:52 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 08/25] media: i2c: imx283: Vertical offset corrections Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 09/25] media: i2c: imx283: Define recommended area Kieran Bingham
2026-02-14 10:17 ` kernel test robot
2026-02-13 14:01 ` [PATCH v2 10/25] media: i2c: imx283: Move Horizontal configuration block Kieran Bingham
2026-02-16 14:53 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 11/25] media: i2c: imx283: Constrain scope of vertical calculations Kieran Bingham
2026-02-16 14:54 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 12/25] media: i2c: imx283: Simplify v_pos determination Kieran Bingham
2026-02-16 14:57 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 13/25] media: i2c: imx283: Move binning to scan modes Kieran Bingham
2026-02-16 15:00 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 14/25] media: i2c: imx283: Move minimum exposure handling " Kieran Bingham
2026-02-16 15:01 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 15/25] media: i2c: imx283: Simplify and clamp widcut calculation Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 16/25] media: i2c: imx283: Account for clamp region coordinates Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 17/25] media: i2c: imx283: Crop leading lines with user clamp Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 18/25] media: i2c: imx283: Reduce vertical cutting Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 19/25] media: i2c: imx283: Provide Native pixel array capture mode Kieran Bingham
2026-02-16 15:06 ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 20/25] media: i2c: imx283: Provide a full active pixels mode Kieran Bingham
2026-02-16 15:08 ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 21/25] media: i2c: imx283: Provide an effective pixel array mode Kieran Bingham
2026-02-16 15:09 ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 22/25] media: i2c: imx283: Recalculate SHR on blanking changes Kieran Bingham
2026-02-13 14:02 ` [PATCH v2 23/25] media: i2c: imx283: Fix binned mode blanking timings Kieran Bingham
2026-02-16 14:27 ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 24/25] media: i2c: imx283: Update exposure range on blanking changes Kieran Bingham
2026-02-13 14:02 ` [PATCH v2 25/25] media: i2c: imx283: Simplify VFLIP control setting Kieran Bingham
2026-02-13 23:20 ` kernel test robot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202602140716.ayhsqB6c-lkp@intel.com \
--to=lkp@intel.com \
--cc=hverkuil@kernel.org \
--cc=jai.luthra@ideasonboard.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=sakari.ailus@linux.intel.com \
--cc=uajain@igalia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox