Hi James,
kernel test robot noticed the following build warnings:
[auto build test WARNING on lee-mfd/for-mfd-next]
[also build test WARNING on lee-mfd/for-mfd-fixes broonie-sound/for-next linus/master v6.8-rc3 next-20240207]
[cannot apply to dtor-input/next dtor-input/for-linus]
[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/James-Ogletree/firmware-cs_dsp-Add-write-sequencer-interface/20240207-083734
base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
patch link: https://lore.kernel.org/r/20240207003612.4187370-5-jogletre%40opensource.cirrus.com
patch subject: [PATCH v6 4/5] Input: cs40l50 - Add support for the CS40L50 haptic driver
config: sh-randconfig-r122-20240207 (https://download.01.org/0day-ci/archive/20240208/202402081011.F6Z941U6-lkp@xxxxxxxxx/config)
compiler: sh4-linux-gcc (GCC) 13.2.0
reproduce: (https://download.01.org/0day-ci/archive/20240208/202402081011.F6Z941U6-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/202402081011.F6Z941U6-lkp@xxxxxxxxx/
sparse warnings: (new ones prefixed by >>)
>> drivers/input/misc/cs40l50-vibra.c:245:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const *__from @@ got signed short [noderef] [usertype] __user *custom_data @@
drivers/input/misc/cs40l50-vibra.c:245:53: sparse: expected void const *__from
drivers/input/misc/cs40l50-vibra.c:245:53: sparse: got signed short [noderef] [usertype] __user *custom_data
drivers/input/misc/cs40l50-vibra.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/xarray.h, ...):
include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false
drivers/input/misc/cs40l50-vibra.c:239:45: sparse: sparse: dereference of noderef expression
vim +245 drivers/input/misc/cs40l50-vibra.c
216
217 static int vibra_upload_owt(struct vibra_work *work_data, struct vibra_effect *effect)
218 {
219 struct ff_periodic_effect add_effect = work_data->effect->u.periodic;
220 u32 len = 2 * add_effect.custom_len, wt_offset, wt_size;
221 struct vibra_info *info = work_data->info;
222 struct owt_header header;
223 u8 *out_data;
224 int error;
225
226 error = regmap_read(info->regmap, info->dsp.owt_size_reg, &wt_size);
227 if (error)
228 return error;
229
230 if ((wt_size * sizeof(u32)) < sizeof(header) + len) {
231 dev_err(info->dev, "No space in OWT bank for effect\n");
232 return -ENOSPC;
233 }
234
235 out_data = kzalloc(sizeof(header) + len, GFP_KERNEL);
236 if (!out_data)
237 return -ENOMEM;
238
239 header.type = add_effect.custom_data[0] == CS40L50_PCM_ID ? CS40L50_TYPE_PCM :
240 CS40L50_TYPE_PWLE;
241 header.offset = sizeof(header) / sizeof(u32);
242 header.data_words = len / sizeof(u32);
243
244 memcpy(out_data, &header, sizeof(header));
> 245 memcpy(out_data + sizeof(header), add_effect.custom_data, len);
246
247 error = regmap_read(info->regmap, info->dsp.owt_offset_reg, &wt_offset);
248 if (error)
249 return error;
250
251 error = regmap_bulk_write(info->regmap, info->dsp.owt_base_reg +
252 (wt_offset * sizeof(u32)), out_data,
253 sizeof(header) + len);
254 if (error)
255 goto err_free;
256
257 error = info->dsp.write(info->dev, info->regmap, info->dsp.push_owt_cmd);
258 err_free:
259 kfree(out_data);
260
261 return error;
262 }
263
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
[Index of Archives]
[Pulseaudio]
[Linux Audio Users]
[ALSA Devel]
[Fedora Desktop]
[Fedora SELinux]
[Big List of Linux Books]
[Yosemite News]
[KDE Users]