tree:
https://github.com/intel/linux-intel-lts.git 5.10/yocto
head: 3ebd33d042d488ba5ca3a11f7520a6084793ba13
commit: 1a1b0ad359afd4d118fc6a546f7b52eed25b9211 [13/14] media: imx390: add dummpy v4l2
CID
config: alpha-randconfig-s031-20210813 (attached as .config)
compiler: alpha-linux-gcc (GCC) 10.3.0
reproduce:
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-348-gf0e6938b-dirty
#
https://github.com/intel/linux-intel-lts/commit/1a1b0ad359afd4d118fc6a546...
git remote add intel-linux-intel-lts
https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 5.10/yocto
git checkout 1a1b0ad359afd4d118fc6a546f7b52eed25b9211
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross C=1
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=alpha SHELL=/bin/bash
drivers/media/i2c/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/media/i2c/imx390.c:493:9: sparse: sparse: mixing declarations and code
> drivers/media/i2c/imx390.c:724:21: sparse: sparse: Using plain
integer as NULL pointer
drivers/media/i2c/imx390.c:1144:13: sparse: sparse:
symbol 'imx390_threaded_irq_fn' was not declared. Should it be static?
vim +724 drivers/media/i2c/imx390.c
640
641 static int imx390_init_controls(struct imx390 *imx390)
642 {
643 struct v4l2_ctrl_handler *ctrl_hdlr;
644 s64 hblank;
645 int ret;
646 struct v4l2_ctrl_config cfg = { 0 };
647
648 ctrl_hdlr = &imx390->ctrl_handler;
649 ret = v4l2_ctrl_handler_init(ctrl_hdlr, 8);
650 if (ret)
651 return ret;
652
653 ctrl_hdlr->lock = &imx390->mutex;
654 imx390->link_freq = v4l2_ctrl_new_int_menu(ctrl_hdlr, &imx390_ctrl_ops,
655 V4L2_CID_LINK_FREQ,
656 ARRAY_SIZE(link_freq_menu_items) - 1,
657 0, link_freq_menu_items);
658 if (imx390->link_freq)
659 imx390->link_freq->flags |= V4L2_CTRL_FLAG_READ_ONLY;
660
661 imx390->vblank = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
662 V4L2_CID_VBLANK,
663 0,
664 IMX390_VTS_MAX - imx390->cur_mode->height, 1,
665 imx390->cur_mode->vts_def - imx390->cur_mode->height);
666
667 imx390->gain = v4l2_ctrl_new_std(
668 ctrl_hdlr,
669 &imx390_ctrl_ops,
670 V4L2_CID_GAIN, IMX390_GAIN_MIN,
671 IMX390_DGTL_GAIN_MAX * IMX390_ANAL_GAIN_MAX, 1,
672 IMX390_GAIN_DEFAULT);
673
674 imx390->analogue_gain = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
V4L2_CID_ANALOGUE_GAIN,
675 IMX390_ANAL_GAIN_MIN, IMX390_ANAL_GAIN_MAX,
676 IMX390_ANAL_GAIN_STEP, IMX390_ANAL_GAIN_DEFAULT);
677
678 imx390->digital_gain = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
V4L2_CID_DIGITAL_GAIN,
679 IMX390_DGTL_GAIN_MIN, IMX390_DGTL_GAIN_MAX,
680 IMX390_DGTL_GAIN_STEP, IMX390_DGTL_GAIN_DEFAULT);
681
682 imx390->exposure = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
683 V4L2_CID_EXPOSURE,
684 IMX390_EXPOSURE_MIN,
685 IMX390_EXPOSURE_MAX,
686 IMX390_EXPOSURE_STEP,
687 IMX390_EXPOSURE_DEF);
688
689 imx390->pixel_rate = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
690 V4L2_CID_PIXEL_RATE, get_pixel_rate(imx390), get_pixel_rate(imx390),
691 1, get_pixel_rate(imx390));
692
693 if (imx390->pixel_rate)
694 imx390->pixel_rate->flags |= V4L2_CTRL_FLAG_READ_ONLY;
695
696 hblank = get_hblank(imx390);
697 imx390->hblank = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
V4L2_CID_HBLANK,
698 hblank, hblank, 1, hblank);
699 if (imx390->hblank)
700 imx390->hblank->flags |= V4L2_CTRL_FLAG_READ_ONLY;
701
702 imx390->red_balance = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
703 V4L2_CID_RED_BALANCE,
704 IMX390_RED_BALANCE_MIN,
705 IMX390_RED_BALANCE_MAX,
706 IMX390_RED_BALANCE_STEP,
707 IMX390_RED_BALANCE_DEF);
708
709 imx390->blue_balance = v4l2_ctrl_new_std(ctrl_hdlr, &imx390_ctrl_ops,
710 V4L2_CID_BLUE_BALANCE,
711 IMX390_BLUE_BALANCE_MIN,
712 IMX390_BLUE_BALANCE_MAX,
713 IMX390_BLUE_BALANCE_STEP,
714 IMX390_BLUE_BALANCE_DEF);
715
716 cfg.ops = &imx390_ctrl_ops;
717 cfg.id = IMX390_CID_EXPOSURE_SHS1;
718 cfg.name = "IMX390_CID_EXPOSURE_SHS1";
719 cfg.type = V4L2_CTRL_TYPE_INTEGER;
720 cfg.max = IMX390_DUMMY_MAX;
721 cfg.min = IMX390_DUMMY_MIN;
722 cfg.step = IMX390_DUMMY_STEP;
723 cfg.def = IMX390_DUMMY_DEF;
724 cfg.qmenu = 0; cfg.elem_size = 0;
725 imx390->dummy_exp_shs1 = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
726
727 cfg.id = IMX390_CID_EXPOSURE_SHS2;
728 cfg.name = "IMX390_CID_EXPOSURE_SHS2";
729 imx390->dummy_exp_shs2 = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
730
731 cfg.id = IMX390_CID_EXPOSURE_SHS3;
732 cfg.name = "IMX390_CID_EXPOSURE_SHS3";
733 imx390->dummy_exp_shs3 = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
734
735 cfg.id = IMX390_CID_EXPOSURE_RHS1;
736 cfg.name = "IMX390_CID_EXPOSURE_RHS1";
737 imx390->dummy_exp_rhs1 = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
738
739 cfg.id = IMX390_CID_EXPOSURE_RHS2;
740 cfg.name = "IMX390_CID_EXPOSURE_RHS2";
741 imx390->dummy_exp_rhs2 = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
742
743 cfg.id = IMX390_CID_DIGITAL_GAIN_L;
744 cfg.name = "IMX390_CID_DIGITAL_GAIN_L";
745 imx390->dummy_dg_l = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
746
747 cfg.id = IMX390_CID_DIGITAL_GAIN_S;
748 cfg.name = "IMX390_CID_DIGITAL_GAIN_S";
749 imx390->dummy_dg_s = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
750
751 cfg.id = IMX390_CID_DIGITAL_GAIN_VS;
752 cfg.name = "IMX390_CID_DIGITAL_GAIN_VS";
753 imx390->dummy_dg_vs = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
754
755 cfg.id = IMX390_CID_ANALOG_GAIN_L;
756 cfg.name = "IMX390_CID_ANALOG_GAIN_L";
757 imx390->dummy_ag_l = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
758
759 cfg.id = IMX390_CID_ANALOG_GAIN_S;
760 cfg.name = "IMX390_CID_ANALOG_GAIN_S";
761 imx390->dummy_ag_s = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
762
763 cfg.id = IMX390_CID_ANALOG_GAIN_VS;
764 cfg.name = "IMX390_CID_ANALOG_GAIN_VS";
765 imx390->dummy_ag_vs = v4l2_ctrl_new_custom(ctrl_hdlr, &cfg, NULL);
766
767 if (ctrl_hdlr->error)
768 return ctrl_hdlr->error;
769
770 imx390->sd.ctrl_handler = ctrl_hdlr;
771
772 return 0;
773 }
774
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org