Hi Yunfei, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on media-tree/master] [also build test WARNING on next-20211028] [cannot apply to v5.15-rc7] [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/Yunfei-Dong/Support-multi-hardware-decode-using-of_platform_populate/20211029-115813 base: git://linuxtv.org/media_tree.git master config: riscv-randconfig-r042-20211028 (attached as .config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5db7568a6a1fcb408eb8988abdaff2a225a8eb72) 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 riscv cross compiling tool for clang build # apt-get install binutils-riscv64-linux-gnu # https://github.com/0day-ci/linux/commit/7a1387f1cbc2b5bd93234353927e1e588a06adc3 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Yunfei-Dong/Support-multi-hardware-decode-using-of_platform_populate/20211029-115813 git checkout 7a1387f1cbc2b5bd93234353927e1e588a06adc3 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=riscv If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): >> drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_drv.c:51:14: warning: cast to smaller integer type 'enum mtk_vdec_hw_id' from 'const void *' [-Wvoid-pointer-to-enum-cast] comp_idx = (enum mtk_vdec_hw_id)of_id->data; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 warning generated. -- >> drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_hw.c:138:13: warning: cast to smaller integer type 'enum mtk_vdec_hw_id' from 'const void *' [-Wvoid-pointer-to-enum-cast] comp_idx = (enum mtk_vdec_hw_id)of_id->data; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 warning generated. vim +51 drivers/media/platform/mtk-vcodec/mtk_vcodec_dec_drv.c 28 29 static int mtk_vcodec_comp_device_check(struct mtk_vcodec_ctx *ctx) 30 { 31 struct mtk_vcodec_dev *vdec_dev = ctx->dev; 32 struct platform_device *pdev = vdec_dev->plat_dev; 33 struct device_node *comp_node; 34 enum mtk_vdec_hw_id comp_idx; 35 const struct of_device_id *of_id; 36 int i; 37 38 for (i = 0; i < ARRAY_SIZE(mtk_vdec_hw_match); i++) { 39 of_id = &mtk_vdec_hw_match[i]; 40 comp_node = of_find_compatible_node(NULL, NULL, 41 of_id->compatible); 42 if (!comp_node) 43 continue; 44 45 if (!of_device_is_available(comp_node)) { 46 of_node_put(comp_node); 47 dev_err(&pdev->dev, "Fail to get MMSYS node\n"); 48 continue; 49 } 50 > 51 comp_idx = (enum mtk_vdec_hw_id)of_id->data; 52 vdec_dev->component_node[comp_idx] = comp_node; 53 54 if (!test_bit(comp_idx, vdec_dev->hardware_bitmap)) { 55 dev_err(&pdev->dev, "Vdec comp_idx is not ready %d.", 56 comp_idx); 57 return -EINVAL; 58 } 59 } 60 61 return 0; 62 } 63 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org