* [drm-misc:drm-misc-next 3/18] drivers/gpu/drm/drm_format_helper.c:150:38: warning: Parameter 'dst' can be declared with const [constParameter]
@ 2022-08-17 14:03 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-08-17 14:03 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 6532 bytes --]
::::::
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/drm_format_helper.c:150:38: warning: Parameter 'dst' can be declared with const [constParameter]"
::::::
BCC: lkp(a)intel.com
CC: kbuild-all(a)lists.01.org
CC: dri-devel(a)lists.freedesktop.org
TO: Thomas Zimmermann <tzimmermann@suse.de>
CC: Sam Ravnborg <sam@ravnborg.org>
tree: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head: 8ba9249396bef37cb68be9e8dee7847f1737db9d
commit: edbe262acf92c986ad9a1f594ae3b4f3d3373133 [3/18] drm/format-helper: Merge drm_fb_memcpy() and drm_fb_memcpy_toio()
:::::: branch date: 18 hours ago
:::::: commit date: 7 days ago
compiler: xtensa-linux-gcc (GCC) 12.1.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout edbe262acf92c986ad9a1f594ae3b4f3d3373133
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> drivers/gpu/drm/drm_gem_framebuffer_helper.c:71:28: warning: Parameter 'obj' can be declared with const [constParameter]
struct drm_gem_object **obj, unsigned int num_planes,
^
--
>> drivers/gpu/drm/drm_format_helper.c:150:38: warning: Parameter 'dst' can be declared with const [constParameter]
void drm_fb_memcpy(struct iosys_map *dst, const unsigned int *dst_pitch,
^
vim +/dst +150 drivers/gpu/drm/drm_format_helper.c
cce6bedb38ed08f Thomas Zimmermann 2022-04-27 131
7415287e1f36759 Gerd Hoffmann 2019-04-05 132 /**
7415287e1f36759 Gerd Hoffmann 2019-04-05 133 * drm_fb_memcpy - Copy clip buffer
edbe262acf92c98 Thomas Zimmermann 2022-08-08 134 * @dst: Array of destination buffers
edbe262acf92c98 Thomas Zimmermann 2022-08-08 135 * @dst_pitch: Array of numbers of bytes between the start of two consecutive scanlines
edbe262acf92c98 Thomas Zimmermann 2022-08-08 136 * within @dst; can be NULL if scanlines are stored next to each other.
edbe262acf92c98 Thomas Zimmermann 2022-08-08 137 * @vmap: Array of source buffers
7415287e1f36759 Gerd Hoffmann 2019-04-05 138 * @fb: DRM framebuffer
7415287e1f36759 Gerd Hoffmann 2019-04-05 139 * @clip: Clip rectangle area to copy
26f024f54ab69a1 Gerd Hoffmann 2019-04-05 140 *
edbe262acf92c98 Thomas Zimmermann 2022-08-08 141 * This function copies parts of a framebuffer to display memory. Destination and
edbe262acf92c98 Thomas Zimmermann 2022-08-08 142 * framebuffer formats must match. No conversion takes place. The parameters @dst,
edbe262acf92c98 Thomas Zimmermann 2022-08-08 143 * @dst_pitch and @vmap refer to arrays. Each array must have at least as many entries
edbe262acf92c98 Thomas Zimmermann 2022-08-08 144 * as there are planes in @fb's format. Each entry stores the value for the format's
edbe262acf92c98 Thomas Zimmermann 2022-08-08 145 * respective color plane at the same index.
edbe262acf92c98 Thomas Zimmermann 2022-08-08 146 *
edbe262acf92c98 Thomas Zimmermann 2022-08-08 147 * This function does not apply clipping on @dst (i.e. the destination is at the
edbe262acf92c98 Thomas Zimmermann 2022-08-08 148 * top-left corner).
7415287e1f36759 Gerd Hoffmann 2019-04-05 149 */
edbe262acf92c98 Thomas Zimmermann 2022-08-08 @150 void drm_fb_memcpy(struct iosys_map *dst, const unsigned int *dst_pitch,
edbe262acf92c98 Thomas Zimmermann 2022-08-08 151 const struct iosys_map *vmap, const struct drm_framebuffer *fb,
edbe262acf92c98 Thomas Zimmermann 2022-08-08 152 const struct drm_rect *clip)
7415287e1f36759 Gerd Hoffmann 2019-04-05 153 {
edbe262acf92c98 Thomas Zimmermann 2022-08-08 154 static const unsigned int default_dst_pitch[DRM_FORMAT_MAX_PLANES] = {
edbe262acf92c98 Thomas Zimmermann 2022-08-08 155 0, 0, 0, 0
edbe262acf92c98 Thomas Zimmermann 2022-08-08 156 };
7415287e1f36759 Gerd Hoffmann 2019-04-05 157
edbe262acf92c98 Thomas Zimmermann 2022-08-08 158 const struct drm_format_info *format = fb->format;
edbe262acf92c98 Thomas Zimmermann 2022-08-08 159 unsigned int i, y, lines = drm_rect_height(clip);
27bd66dd6419c45 Thomas Zimmermann 2021-11-10 160
edbe262acf92c98 Thomas Zimmermann 2022-08-08 161 if (!dst_pitch)
edbe262acf92c98 Thomas Zimmermann 2022-08-08 162 dst_pitch = default_dst_pitch;
7415287e1f36759 Gerd Hoffmann 2019-04-05 163
edbe262acf92c98 Thomas Zimmermann 2022-08-08 164 for (i = 0; i < format->num_planes; ++i) {
edbe262acf92c98 Thomas Zimmermann 2022-08-08 165 unsigned int bpp_i = drm_format_info_bpp(format, i);
edbe262acf92c98 Thomas Zimmermann 2022-08-08 166 unsigned int cpp_i = DIV_ROUND_UP(bpp_i, 8);
edbe262acf92c98 Thomas Zimmermann 2022-08-08 167 size_t len_i = DIV_ROUND_UP(drm_rect_width(clip) * bpp_i, 8);
edbe262acf92c98 Thomas Zimmermann 2022-08-08 168 unsigned int dst_pitch_i = dst_pitch[i];
edbe262acf92c98 Thomas Zimmermann 2022-08-08 169 struct iosys_map dst_i = dst[i];
edbe262acf92c98 Thomas Zimmermann 2022-08-08 170 struct iosys_map vmap_i = vmap[i];
26f024f54ab69a1 Gerd Hoffmann 2019-04-05 171
edbe262acf92c98 Thomas Zimmermann 2022-08-08 172 if (!dst_pitch_i)
edbe262acf92c98 Thomas Zimmermann 2022-08-08 173 dst_pitch_i = len_i;
27bd66dd6419c45 Thomas Zimmermann 2021-11-10 174
edbe262acf92c98 Thomas Zimmermann 2022-08-08 175 iosys_map_incr(&vmap_i, clip_offset(clip, fb->pitches[i], cpp_i));
bf4f6d16c89466b Gerd Hoffmann 2019-04-10 176 for (y = 0; y < lines; y++) {
edbe262acf92c98 Thomas Zimmermann 2022-08-08 177 /* TODO: handle vmap_i in I/O memory here */
edbe262acf92c98 Thomas Zimmermann 2022-08-08 178 iosys_map_memcpy_to(&dst_i, 0, vmap_i.vaddr, len_i);
edbe262acf92c98 Thomas Zimmermann 2022-08-08 179 iosys_map_incr(&vmap_i, fb->pitches[i]);
edbe262acf92c98 Thomas Zimmermann 2022-08-08 180 iosys_map_incr(&dst_i, dst_pitch_i);
bf4f6d16c89466b Gerd Hoffmann 2019-04-10 181 }
26f024f54ab69a1 Gerd Hoffmann 2019-04-05 182 }
edbe262acf92c98 Thomas Zimmermann 2022-08-08 183 }
edbe262acf92c98 Thomas Zimmermann 2022-08-08 184 EXPORT_SYMBOL(drm_fb_memcpy);
26f024f54ab69a1 Gerd Hoffmann 2019-04-05 185
--
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-08-17 14:03 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-17 14:03 [drm-misc:drm-misc-next 3/18] drivers/gpu/drm/drm_format_helper.c:150:38: warning: Parameter 'dst' can be declared with const [constParameter] 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.