public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
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

      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