Re: [PATCH v8 3/3] Input: Add TouchNetix axiom i2c touchscreen driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kamel,

kernel test robot noticed the following build errors:

[auto build test ERROR on dtor-input/next]
[also build test ERROR on dtor-input/for-linus robh/for-next krzk-dt/for-next linus/master v6.8-rc5 next-20240219]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Kamel-Bouhara/dt-bindings-vendor-prefixes-Add-TouchNetix-AS/20240219-181550
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
patch link:    https://lore.kernel.org/r/20240219101221.129750-4-kamel.bouhara%40bootlin.com
patch subject: [PATCH v8 3/3] Input: Add TouchNetix axiom i2c touchscreen driver
config: i386-buildonly-randconfig-002-20240220 (https://download.01.org/0day-ci/archive/20240220/202402200849.ABf6sZnr-lkp@xxxxxxxxx/config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240220/202402200849.ABf6sZnr-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202402200849.ABf6sZnr-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   In file included from include/linux/device.h:15:0,
                    from drivers/input/touchscreen/touchnetix_axiom.c:17:
   drivers/input/touchscreen/touchnetix_axiom.c: In function 'axiom_process_u41_report_target':
>> drivers/input/touchscreen/touchnetix_axiom.c:332:18: error: 'slot' undeclared (first use in this function); did you mean 'sget'?
      target->index, slot, target->present,
                     ^
   include/linux/dev_printk.h:129:34: note: in definition of macro 'dev_printk'
      _dev_printk(level, dev, fmt, ##__VA_ARGS__);  \
                                     ^~~~~~~~~~~
   drivers/input/touchscreen/touchnetix_axiom.c:331:2: note: in expansion of macro 'dev_dbg'
     dev_dbg(ts->dev, "U41 Target T%u, slot:%u present:%u, x:%u, y:%u, z:%d\n",
     ^~~~~~~
   drivers/input/touchscreen/touchnetix_axiom.c:332:18: note: each undeclared identifier is reported only once for each function it appears in
      target->index, slot, target->present,
                     ^
   include/linux/dev_printk.h:129:34: note: in definition of macro 'dev_printk'
      _dev_printk(level, dev, fmt, ##__VA_ARGS__);  \
                                     ^~~~~~~~~~~
   drivers/input/touchscreen/touchnetix_axiom.c:331:2: note: in expansion of macro 'dev_dbg'
     dev_dbg(ts->dev, "U41 Target T%u, slot:%u present:%u, x:%u, y:%u, z:%d\n",
     ^~~~~~~


vim +332 drivers/input/touchscreen/touchnetix_axiom.c

   289	
   290	/*
   291	 * Support function to axiom_process_u41_report.
   292	 * Generates input-subsystem events for every target.
   293	 * After calling this function the caller shall issue
   294	 * a Sync to the input sub-system.
   295	 */
   296	static bool axiom_process_u41_report_target(struct axiom_data *ts,
   297						    struct axiom_target_report *target)
   298	{
   299		struct input_dev *input_dev = ts->input_dev;
   300		struct axiom_u41_target *target_prev_state;
   301		enum axiom_target_state current_state;
   302		int id;
   303	
   304		/* Verify the target index */
   305		if (target->index >= AXIOM_U41_MAX_TARGETS) {
   306			dev_err(ts->dev, "Invalid target index! %u\n", target->index);
   307			return false;
   308		}
   309	
   310		target_prev_state = &ts->targets[target->index];
   311	
   312		current_state = AXIOM_TARGET_STATE_NOT_PRESENT;
   313	
   314		if (target->present) {
   315			if (target->z >= 0)
   316				current_state = AXIOM_TARGET_STATE_TOUCHING;
   317			else if (target->z > AXIOM_PROX_LEVEL && target->z < 0)
   318				current_state = AXIOM_TARGET_STATE_HOVER;
   319			else if (target->z == AXIOM_PROX_LEVEL)
   320				current_state = AXIOM_TARGET_STATE_PROX;
   321		}
   322	
   323		if (target_prev_state->state == current_state &&
   324		    target_prev_state->x == target->x &&
   325		    target_prev_state->y == target->y &&
   326		    target_prev_state->z == target->z)
   327			return false;
   328	
   329		id = target->index;
   330	
   331		dev_dbg(ts->dev, "U41 Target T%u, slot:%u present:%u, x:%u, y:%u, z:%d\n",
 > 332			target->index, slot, target->present,
   333			target->x, target->y, target->z);
   334	
   335		switch (current_state) {
   336		case AXIOM_TARGET_STATE_NOT_PRESENT:
   337		case AXIOM_TARGET_STATE_PROX:
   338			if (!target_prev_state->insert)
   339				break;
   340			target_prev_state->insert = false;
   341	
   342			if (!id)
   343				input_report_key(input_dev, BTN_TOUCH, 0);
   344	
   345			input_mt_report_slot_inactive(input_dev);
   346			/*
   347			 * make sure the previous coordinates are
   348			 * all off screen when the finger comes back
   349			 */
   350			target->x = 65535;
   351			target->y = 65535;
   352			target->z = AXIOM_PROX_LEVEL;
   353			break;
   354		case AXIOM_TARGET_STATE_HOVER:
   355		case AXIOM_TARGET_STATE_TOUCHING:
   356			target_prev_state->insert = true;
   357			input_report_abs(input_dev, ABS_MT_TRACKING_ID, id);
   358			input_report_abs(input_dev, ABS_MT_POSITION_X, target->x);
   359			input_report_abs(input_dev, ABS_MT_POSITION_Y, target->y);
   360	
   361			if (current_state == AXIOM_TARGET_STATE_TOUCHING) {
   362				input_report_abs(input_dev, ABS_MT_DISTANCE, 0);
   363				input_report_abs(input_dev, ABS_DISTANCE, 0);
   364				input_report_abs(input_dev, ABS_MT_PRESSURE, target->z);
   365				input_report_abs(input_dev, ABS_PRESSURE, target->z);
   366			} else {
   367				input_report_abs(input_dev, ABS_MT_DISTANCE, -target->z);
   368				input_report_abs(input_dev, ABS_DISTANCE, -target->z);
   369				input_report_abs(input_dev, ABS_MT_PRESSURE, 0);
   370				input_report_abs(input_dev, ABS_PRESSURE, 0);
   371			}
   372	
   373			if (!id)
   374				input_report_key(input_dev, BTN_TOUCH, (current_state ==
   375						 AXIOM_TARGET_STATE_TOUCHING));
   376			break;
   377		default:
   378			break;
   379		}
   380	
   381		target_prev_state->state = current_state;
   382		target_prev_state->x = target->x;
   383		target_prev_state->y = target->y;
   384		target_prev_state->z = target->z;
   385	
   386		return true;
   387	}
   388	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux