Re: [PATCH v6 3/9] media: imx-jpeg: Add V4L2 driver for i.MX8 JPEG Encoder/Decoder

From: kernel test robot
Date: Sat Dec 19 2020 - 11:54:02 EST


Hi "Mirela,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linuxtv-media/master]
[also build test WARNING on linus/master next-20201218]
[cannot apply to shawnguo/for-next robh/for-next v5.10]
[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]

url: https://github.com/0day-ci/linux/commits/Mirela-Rabulea-OSS/Add-V4L2-driver-for-i-MX8-JPEG-Encoder-Decoder/20201215-192653
base: git://linuxtv.org/media_tree.git master
config: powerpc-randconfig-r025-20201217 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project cee1e7d14f4628d6174b33640d502bff3b54ae45)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
# https://github.com/0day-ci/linux/commit/a1f8ecc90da72e5845877eab95b332aee5410db8
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Mirela-Rabulea-OSS/Add-V4L2-driver-for-i-MX8-JPEG-Encoder-Decoder/20201215-192653
git checkout a1f8ecc90da72e5845877eab95b332aee5410db8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All warnings (new ones prefixed by >>):

>> drivers/media/platform/imx-jpeg/mxc-jpeg.c:926:45: warning: format specifies type 'unsigned long long' but the argument has type 'dma_addr_t' (aka 'unsigned int') [-Wformat]
dev_dbg(jpeg->dev, "cfg_desc - 0x%llx:\n", cfg_desc_handle);
~~~~ ^~~~~~~~~~~~~~~
%x
include/linux/dev_printk.h:131:47: note: expanded from macro 'dev_dbg'
dev_printk(KERN_DEBUG, dev, dev_fmt(fmt), ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
drivers/media/platform/imx-jpeg/mxc-jpeg.c:928:45: warning: format specifies type 'unsigned long long' but the argument has type 'dma_addr_t' (aka 'unsigned int') [-Wformat]
dev_dbg(jpeg->dev, "enc desc - 0x%llx:\n", desc_handle);
~~~~ ^~~~~~~~~~~
%x
include/linux/dev_printk.h:131:47: note: expanded from macro 'dev_dbg'
dev_printk(KERN_DEBUG, dev, dev_fmt(fmt), ##__VA_ARGS__); \
~~~ ^~~~~~~~~~~
2 warnings generated.


vim +926 drivers/media/platform/imx-jpeg/mxc-jpeg.c

875
876 static void mxc_jpeg_config_enc_desc(struct vb2_buffer *out_buf,
877 struct mxc_jpeg_ctx *ctx,
878 struct vb2_buffer *src_buf,
879 struct vb2_buffer *dst_buf)
880 {
881 struct mxc_jpeg_dev *jpeg = ctx->mxc_jpeg;
882 void __iomem *reg = jpeg->base_reg;
883 unsigned int slot = ctx->slot;
884 struct mxc_jpeg_desc *desc = jpeg->slot_data[slot].desc;
885 struct mxc_jpeg_desc *cfg_desc = jpeg->slot_data[slot].cfg_desc;
886 dma_addr_t desc_handle = jpeg->slot_data[slot].desc_handle;
887 dma_addr_t cfg_desc_handle = jpeg->slot_data[slot].cfg_desc_handle;
888 void *cfg_stream_vaddr = jpeg->slot_data[slot].cfg_stream_vaddr;
889 struct mxc_jpeg_q_data *q_data;
890 enum mxc_jpeg_image_format img_fmt;
891 int w, h;
892
893 q_data = mxc_jpeg_get_q_data(ctx, src_buf->vb2_queue->type);
894
895 jpeg->slot_data[slot].cfg_stream_size =
896 mxc_jpeg_setup_cfg_stream(cfg_stream_vaddr,
897 q_data->fmt->fourcc,
898 q_data->w_adjusted,
899 q_data->h_adjusted);
900
901 /* chain the config descriptor with the encoding descriptor */
902 cfg_desc->next_descpt_ptr = desc_handle | MXC_NXT_DESCPT_EN;
903
904 cfg_desc->buf_base0 = jpeg->slot_data[slot].cfg_stream_handle;
905 cfg_desc->buf_base1 = 0;
906 cfg_desc->line_pitch = 0;
907 cfg_desc->stm_bufbase = 0; /* no output expected */
908 cfg_desc->stm_bufsize = 0x0;
909 cfg_desc->imgsize = 0;
910 cfg_desc->stm_ctrl = STM_CTRL_CONFIG_MOD(1);
911
912 desc->next_descpt_ptr = 0; /* end of chain */
913
914 /* use adjusted resolution for CAST IP job */
915 w = q_data->w_adjusted;
916 h = q_data->h_adjusted;
917 mxc_jpeg_set_res(desc, w, h);
918 mxc_jpeg_set_line_pitch(desc, w * (q_data->fmt->depth / 8));
919 mxc_jpeg_set_bufsize(desc, desc->line_pitch * h);
920 img_fmt = mxc_jpeg_fourcc_to_imgfmt(q_data->fmt->fourcc);
921 if (img_fmt == MXC_JPEG_INVALID)
922 dev_err(jpeg->dev, "No valid image format detected\n");
923 desc->stm_ctrl = STM_CTRL_CONFIG_MOD(0) |
924 STM_CTRL_IMAGE_FORMAT(img_fmt);
925 mxc_jpeg_addrs(desc, src_buf, dst_buf, 0);
> 926 dev_dbg(jpeg->dev, "cfg_desc - 0x%llx:\n", cfg_desc_handle);
927 print_descriptor_info(jpeg->dev, cfg_desc);
928 dev_dbg(jpeg->dev, "enc desc - 0x%llx:\n", desc_handle);
929 print_descriptor_info(jpeg->dev, desc);
930 print_wrapper_info(jpeg->dev, reg);
931 print_cast_status(jpeg->dev, reg, MXC_JPEG_ENCODE);
932
933 /* validate the configuration descriptor */
934 mxc_jpeg_set_desc(cfg_desc_handle, reg, slot);
935 }
936

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip