lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202509101412.ze6xyOUu-lkp@intel.com>
Date: Wed, 10 Sep 2025 14:39:22 +0800
From: kernel test robot <lkp@...el.com>
To: Gokul Praveen <g-praveen@...com>, j-keerthy@...com, vigneshr@...com,
	wbg@...nel.org, linux-kernel@...r.kernel.org, robh@...nel.org,
	krzk+dt@...nel.org, conor+dt@...nel.org, devicetree@...r.kernel.org
Cc: oe-kbuild-all@...ts.linux.dev, g-praveen@...com, u-kumar1@...com,
	n-francis@...com
Subject: Re: [PATCH 2/2] counter: ti-dmtimer-cap : capture driver support for
 OMAP DM timer

Hi Gokul,

kernel test robot noticed the following build errors:

[auto build test ERROR on robh/for-next]
[also build test ERROR on linus/master v6.17-rc5 next-20250909]
[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/Gokul-Praveen/dt-bindings-counter-Add-new-ti-omap-dmtimer-cap-compatible/20250909-160651
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
patch link:    https://lore.kernel.org/r/20250909080042.36127-3-g-praveen%40ti.com
patch subject: [PATCH 2/2] counter: ti-dmtimer-cap : capture driver support for OMAP DM timer
config: m68k-allyesconfig (https://download.01.org/0day-ci/archive/20250910/202509101412.ze6xyOUu-lkp@intel.com/config)
compiler: m68k-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250910/202509101412.ze6xyOUu-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202509101412.ze6xyOUu-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/counter/ti-dmtimer-cap.c: In function 'cap_omap_dmtimer_is_enabled':
>> drivers/counter/ti-dmtimer-cap.c:73:31: error: 'const struct omap_dm_timer_ops' has no member named 'get_cap_status'; did you mean 'get_pwm_status'?
      73 |         status = omap->pdata->get_cap_status(omap->dm_timer);
         |                               ^~~~~~~~~~~~~~
         |                               get_pwm_status
   drivers/counter/ti-dmtimer-cap.c: In function 'cap_omap_dmtimer_apply':
>> drivers/counter/ti-dmtimer-cap.c:117:26: error: 'const struct omap_dm_timer_ops' has no member named 'set_cap'
     117 |         ret = omap->pdata->set_cap(omap->dm_timer, true, true);
         |                          ^~
   drivers/counter/ti-dmtimer-cap.c: In function 'cap_omap_dmtimer_capture':
>> drivers/counter/ti-dmtimer-cap.c:140:34: error: 'const struct omap_dm_timer_ops' has no member named 'read_cap'
     140 |         *duty_cycle = omap->pdata->read_cap(omap->dm_timer, false);
         |                                  ^~
   drivers/counter/ti-dmtimer-cap.c: In function 'cap_omap_dmtimer_period':
   drivers/counter/ti-dmtimer-cap.c:161:29: error: 'const struct omap_dm_timer_ops' has no member named 'read_cap'
     161 |         period = omap->pdata->read_cap(omap->dm_timer, true);
         |                             ^~
   drivers/counter/ti-dmtimer-cap.c: In function 'cap_omap_dmtimer_probe':
   drivers/counter/ti-dmtimer-cap.c:355:19: error: 'const struct omap_dm_timer_ops' has no member named 'set_cap'
     355 |             !pdata->set_cap ||
         |                   ^~
   drivers/counter/ti-dmtimer-cap.c:356:21: error: 'const struct omap_dm_timer_ops' has no member named 'get_cap_status'; did you mean 'get_pwm_status'?
     356 |             !pdata->get_cap_status ||
         |                     ^~~~~~~~~~~~~~
         |                     get_pwm_status
   drivers/counter/ti-dmtimer-cap.c:357:23: error: 'const struct omap_dm_timer_ops' has no member named 'read_cap'
     357 |                 !pdata->read_cap ||
         |                       ^~


vim +73 drivers/counter/ti-dmtimer-cap.c

    62	
    63	/**
    64	 * cap_omap_dmtimer_is_enabled() -  Detect if the timer capture is enabled.
    65	 * @omap:	Pointer to cap omap dm timer counter
    66	 *
    67	 * Return true if capture is enabled else false.
    68	 */
    69	static bool cap_omap_dmtimer_is_enabled(struct cap_omap_dmtimer_counter *omap)
    70	{
    71		u32 status;
    72	
  > 73		status = omap->pdata->get_cap_status(omap->dm_timer);
    74	
    75		return !!(status & OMAP_TIMER_CTRL_ST);
    76	}
    77	
    78	static int cap_omap_dmtimer_clk_get_freq(struct counter_device *counter,
    79					 struct counter_signal *signal, u64 *freq)
    80	{
    81		struct cap_omap_dmtimer_counter *omap = counter_priv(counter);
    82		struct clk *fclk;
    83	
    84		fclk = omap->pdata->get_fclk(omap->dm_timer);
    85		if (!fclk) {
    86			dev_err(counter->parent, "invalid dmtimer fclk\n");
    87			return -EINVAL;
    88		}
    89	
    90		*freq = clk_get_rate(fclk);
    91		if (!(*freq)) {
    92			dev_err(counter->parent, "invalid dmtimer fclk rate\n");
    93			return -EINVAL;
    94		}
    95	
    96		return 0;
    97	}
    98	/**
    99	 * cap_omap_dmtimer_apply() - Changes the state of the cap omap dm timer counter.
   100	 * @counter:Pointer to capture counter.
   101	 *
   102	 * Return 0 if successfully changed the state else appropriate error.
   103	 */
   104	static int cap_omap_dmtimer_apply(struct counter_device *counter)
   105	{
   106		struct cap_omap_dmtimer_counter *omap = counter_priv(counter);
   107		struct device *dev = &omap->dm_timer_pdev->dev;
   108		int ret = 0;
   109	
   110		/* Ensure that the timer is in stop mode so that the configs can be changed. */
   111		if (cap_omap_dmtimer_is_enabled(omap)) {
   112			ret = omap->pdata->stop(omap->dm_timer);
   113			if (ret)
   114				dev_err(dev, "%d: Failed to stop timer.\n", ret);
   115		}
   116	
 > 117		ret = omap->pdata->set_cap(omap->dm_timer, true, true);
   118		if (ret) {
   119			dev_err(dev, "%d: Failed to set timer capture configuration.\n", ret);
   120			return ret;
   121		}
   122	
   123		cap_omap_dmtimer_start(omap);
   124	
   125		return ret;
   126	}
   127	
   128	static int cap_omap_dmtimer_capture(struct counter_device *counter,
   129						struct counter_count *count, u64 *duty_cycle)
   130	{
   131		struct cap_omap_dmtimer_counter *omap = counter_priv(counter);
   132		*duty_cycle = 0;
   133	
   134		if (!omap->enabled) {
   135			dev_err(counter->parent, "Timer is disabled.\n");
   136			omap->pdata->stop(omap->dm_timer);
   137			return 0;
   138		}
   139	
 > 140		*duty_cycle = omap->pdata->read_cap(omap->dm_timer, false);
   141	
   142		*duty_cycle = *duty_cycle > 0 ? *duty_cycle : 0;
   143	
   144		return *duty_cycle;
   145	}
   146	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ