[sailus-media-tree:async-multi 37/38] drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:828:9: error: too few arguments to function 'v4l2_async_nf_init'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   git://linuxtv.org/sailus/media_tree.git async-multi
head:   08781366d65974d473692f519e0b4345584d3761
commit: 9d9ffd33e490ccef9273215b1f3141c358e0b7a2 [37/38] media: v4l: async: Set v4l2_device and subdev in async notifier init
config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20230718/202307180320.jErFaHnP-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce: (https://download.01.org/0day-ci/archive/20230718/202307180320.jErFaHnP-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/202307180320.jErFaHnP-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:770:34: error: field 'asd' has incomplete type
     770 |         struct v4l2_async_subdev asd;
         |                                  ^~~
   In file included from include/linux/bits.h:21,
                    from include/linux/ioport.h:13,
                    from include/linux/acpi.h:12,
                    from drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:12:
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c: In function 'atomisp_notifier_bound':
   include/linux/compiler_types.h:338:27: error: expression in static assertion is not an integer
     338 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
   include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
      20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
         |         ^~~~~~~~~~~~~
   include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
      20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
         |                       ^~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:774:33: note: in expansion of macro 'container_of'
     774 | #define to_sensor_asd(a)        container_of(a, struct sensor_async_subdev, asd)
         |                                 ^~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:783:45: note: in expansion of macro 'to_sensor_asd'
     783 |         struct sensor_async_subdev *s_asd = to_sensor_asd(asd);
         |                                             ^~~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c: In function 'atomisp_notifier_unbind':
   include/linux/compiler_types.h:338:27: error: expression in static assertion is not an integer
     338 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
   include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
      20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
         |         ^~~~~~~~~~~~~
   include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
      20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
         |                       ^~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:774:33: note: in expansion of macro 'container_of'
     774 | #define to_sensor_asd(a)        container_of(a, struct sensor_async_subdev, asd)
         |                                 ^~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:805:45: note: in expansion of macro 'to_sensor_asd'
     805 |         struct sensor_async_subdev *s_asd = to_sensor_asd(asd);
         |                                             ^~~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c: At top level:
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:819:18: error: initialization of 'int (*)(struct v4l2_async_notifier *, struct v4l2_subdev *, struct v4l2_async_connection *)' from incompatible pointer type 'int (*)(struct v4l2_async_notifier *, struct v4l2_subdev *, struct v4l2_async_subdev *)' [-Werror=incompatible-pointer-types]
     819 |         .bound = atomisp_notifier_bound,
         |                  ^~~~~~~~~~~~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:819:18: note: (near initialization for 'atomisp_async_ops.bound')
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:820:19: error: initialization of 'void (*)(struct v4l2_async_notifier *, struct v4l2_subdev *, struct v4l2_async_connection *)' from incompatible pointer type 'void (*)(struct v4l2_async_notifier *, struct v4l2_subdev *, struct v4l2_async_subdev *)' [-Werror=incompatible-pointer-types]
     820 |         .unbind = atomisp_notifier_unbind,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:820:19: note: (near initialization for 'atomisp_async_ops.unbind')
   drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c: In function 'atomisp_csi2_bridge_parse_firmware':
>> drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:828:9: error: too few arguments to function 'v4l2_async_nf_init'
     828 |         v4l2_async_nf_init(&isp->notifier);
         |         ^~~~~~~~~~~~~~~~~~
   In file included from include/media/v4l2-subdev.h:14,
                    from drivers/staging/media/atomisp/pci/atomisp_cmd.h:28,
                    from drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c:19:
   include/media/v4l2-async.h:159:6: note: declared here
     159 | void v4l2_async_nf_init(struct v4l2_async_notifier *notifier,
         |      ^~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   drivers/staging/media/atomisp/pci/atomisp_v4l2.c: In function 'atomisp_pci_probe':
>> drivers/staging/media/atomisp/pci/atomisp_v4l2.c:1511:38: error: passing argument 1 of 'v4l2_async_nf_register' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1511 |         err = v4l2_async_nf_register(&isp->v4l2_dev, &isp->notifier);
         |                                      ^~~~~~~~~~~~~~
         |                                      |
         |                                      struct v4l2_device *
   In file included from include/media/v4l2-subdev.h:14,
                    from drivers/staging/media/atomisp//include/hmm/../../include/linux/atomisp_platform.h:25,
                    from drivers/staging/media/atomisp//include/hmm/../../include/linux/atomisp_gmin_platform.h:19,
                    from drivers/staging/media/atomisp/pci/atomisp_v4l2.c:34:
   include/media/v4l2-async.h:281:56: note: expected 'struct v4l2_async_notifier *' but argument is of type 'struct v4l2_device *'
     281 | int v4l2_async_nf_register(struct v4l2_async_notifier *notifier);
         |                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
>> drivers/staging/media/atomisp/pci/atomisp_v4l2.c:1511:15: error: too many arguments to function 'v4l2_async_nf_register'
    1511 |         err = v4l2_async_nf_register(&isp->v4l2_dev, &isp->notifier);
         |               ^~~~~~~~~~~~~~~~~~~~~~
   include/media/v4l2-async.h:281:5: note: declared here
     281 | int v4l2_async_nf_register(struct v4l2_async_notifier *notifier);
         |     ^~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/v4l2_async_nf_init +828 drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c

8d28ec7e9145ef Hans de Goede 2023-05-25  823  
8d28ec7e9145ef Hans de Goede 2023-05-25  824  int atomisp_csi2_bridge_parse_firmware(struct atomisp_device *isp)
8d28ec7e9145ef Hans de Goede 2023-05-25  825  {
8d28ec7e9145ef Hans de Goede 2023-05-25  826  	int i, mipi_port, ret;
8d28ec7e9145ef Hans de Goede 2023-05-25  827  
8d28ec7e9145ef Hans de Goede 2023-05-25 @828  	v4l2_async_nf_init(&isp->notifier);

:::::: The code at line 828 was first introduced by commit
:::::: 8d28ec7e9145ef6308ab3438d73308ec6ea14360 media: atomisp: Add support for v4l2-async sensor registration

:::::: TO: Hans de Goede <hdegoede@xxxxxxxxxx>
:::::: CC: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux