All of lore.kernel.org
 help / color / mirror / Atom feed
* [mszyprow:v5.18-next-20220511-dsi-rework 14/35] drivers/gpu/drm/bridge/samsung-dsim.c:506:3-9: WARNING: do_div() does a 64-by-32 division, please consider using div64_ul instead.
@ 2022-05-14  1:31 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-05-14  1:31 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 4693 bytes --]

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Jagan Teki <jagan@amarulasolutions.com>
CC: Marek Szyprowski <m.szyprowski@samsung.com>

tree:   https://github.com/mszyprow/linux.git v5.18-next-20220511-dsi-rework
head:   65cb4959430021041f1e68ef98a6ec541d5891aa
commit: 395cab08cbac6e4028dafce068414ea43244a592 [14/35] drm: bridge: Add Samsung DSIM bridge driver
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: openrisc-randconfig-c003-20220512 (https://download.01.org/0day-ci/archive/20220514/202205140917.9cTJ9GLZ-lkp(a)intel.com/config)
compiler: or1k-linux-gcc (GCC) 11.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>


cocci warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/bridge/samsung-dsim.c:506:3-9: WARNING: do_div() does a 64-by-32 division, please consider using div64_ul instead.

vim +506 drivers/gpu/drm/bridge/samsung-dsim.c

395cab08cbac6e Jagan Teki 2022-05-04  483  
395cab08cbac6e Jagan Teki 2022-05-04  484  static unsigned long samsung_dsim_pll_find_pms(struct samsung_dsim *dsi,
395cab08cbac6e Jagan Teki 2022-05-04  485  					       unsigned long fin,
395cab08cbac6e Jagan Teki 2022-05-04  486  					       unsigned long fout,
395cab08cbac6e Jagan Teki 2022-05-04  487  					       u8 *p, u16 *m, u8 *s)
395cab08cbac6e Jagan Teki 2022-05-04  488  {
395cab08cbac6e Jagan Teki 2022-05-04  489  	const struct samsung_dsim_driver_data *driver_data = dsi->driver_data;
395cab08cbac6e Jagan Teki 2022-05-04  490  	unsigned long best_freq = 0;
395cab08cbac6e Jagan Teki 2022-05-04  491  	u32 min_delta = 0xffffffff;
395cab08cbac6e Jagan Teki 2022-05-04  492  	u8 p_min, p_max;
395cab08cbac6e Jagan Teki 2022-05-04  493  	u8 _p, best_p;
395cab08cbac6e Jagan Teki 2022-05-04  494  	u16 _m, best_m;
395cab08cbac6e Jagan Teki 2022-05-04  495  	u8 _s, best_s;
395cab08cbac6e Jagan Teki 2022-05-04  496  
395cab08cbac6e Jagan Teki 2022-05-04  497  	p_min = DIV_ROUND_UP(fin, (12 * MHZ));
395cab08cbac6e Jagan Teki 2022-05-04  498  	p_max = fin / (6 * MHZ);
395cab08cbac6e Jagan Teki 2022-05-04  499  
395cab08cbac6e Jagan Teki 2022-05-04  500  	for (_p = p_min; _p <= p_max; ++_p) {
395cab08cbac6e Jagan Teki 2022-05-04  501  		for (_s = 0; _s <= 5; ++_s) {
395cab08cbac6e Jagan Teki 2022-05-04  502  			u64 tmp;
395cab08cbac6e Jagan Teki 2022-05-04  503  			u32 delta;
395cab08cbac6e Jagan Teki 2022-05-04  504  
395cab08cbac6e Jagan Teki 2022-05-04  505  			tmp = (u64)fout * (_p << _s);
395cab08cbac6e Jagan Teki 2022-05-04 @506  			do_div(tmp, fin);
395cab08cbac6e Jagan Teki 2022-05-04  507  			_m = tmp;
395cab08cbac6e Jagan Teki 2022-05-04  508  			if (_m < 41 || _m > 125)
395cab08cbac6e Jagan Teki 2022-05-04  509  				continue;
395cab08cbac6e Jagan Teki 2022-05-04  510  
395cab08cbac6e Jagan Teki 2022-05-04  511  			tmp = (u64)_m * fin;
395cab08cbac6e Jagan Teki 2022-05-04  512  			do_div(tmp, _p);
395cab08cbac6e Jagan Teki 2022-05-04  513  			if (tmp < 500 * MHZ ||
395cab08cbac6e Jagan Teki 2022-05-04  514  					tmp > driver_data->max_freq * MHZ)
395cab08cbac6e Jagan Teki 2022-05-04  515  				continue;
395cab08cbac6e Jagan Teki 2022-05-04  516  
395cab08cbac6e Jagan Teki 2022-05-04  517  			tmp = (u64)_m * fin;
395cab08cbac6e Jagan Teki 2022-05-04  518  			do_div(tmp, _p << _s);
395cab08cbac6e Jagan Teki 2022-05-04  519  
395cab08cbac6e Jagan Teki 2022-05-04  520  			delta = abs(fout - tmp);
395cab08cbac6e Jagan Teki 2022-05-04  521  			if (delta < min_delta) {
395cab08cbac6e Jagan Teki 2022-05-04  522  				best_p = _p;
395cab08cbac6e Jagan Teki 2022-05-04  523  				best_m = _m;
395cab08cbac6e Jagan Teki 2022-05-04  524  				best_s = _s;
395cab08cbac6e Jagan Teki 2022-05-04  525  				min_delta = delta;
395cab08cbac6e Jagan Teki 2022-05-04  526  				best_freq = tmp;
395cab08cbac6e Jagan Teki 2022-05-04  527  			}
395cab08cbac6e Jagan Teki 2022-05-04  528  		}
395cab08cbac6e Jagan Teki 2022-05-04  529  	}
395cab08cbac6e Jagan Teki 2022-05-04  530  
395cab08cbac6e Jagan Teki 2022-05-04  531  	if (best_freq) {
395cab08cbac6e Jagan Teki 2022-05-04  532  		*p = best_p;
395cab08cbac6e Jagan Teki 2022-05-04  533  		*m = best_m;
395cab08cbac6e Jagan Teki 2022-05-04  534  		*s = best_s;
395cab08cbac6e Jagan Teki 2022-05-04  535  	}
395cab08cbac6e Jagan Teki 2022-05-04  536  
395cab08cbac6e Jagan Teki 2022-05-04  537  	return best_freq;
395cab08cbac6e Jagan Teki 2022-05-04  538  }
395cab08cbac6e Jagan Teki 2022-05-04  539  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-05-14  1:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-14  1:31 [mszyprow:v5.18-next-20220511-dsi-rework 14/35] drivers/gpu/drm/bridge/samsung-dsim.c:506:3-9: WARNING: do_div() does a 64-by-32 division, please consider using div64_ul instead kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.