* [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
@ 2022-01-12 15:18 ` kernel test robot
0 siblings, 0 replies; 6+ messages in thread
From: kernel test robot @ 2022-01-12 15:18 UTC (permalink / raw)
To: Shawn Tu; +Cc: kbuild-all, linux-kernel, Sakari Ailus
tree: git://linuxtv.org/sailus/media_tree.git master
head: 232068c0bf39d2e34585450343c1439a89aad66b
commit: 009f8036169f02f87f7fd5e3152f6dcd03986a81 [15/16] media: hi847: Add support for Hi-847 sensor
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20220112/202201122346.jc4ZqZm5-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.2.0
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
git remote add sailus-media-tree git://linuxtv.org/sailus/media_tree.git
git fetch --no-tags sailus-media-tree master
git checkout 009f8036169f02f87f7fd5e3152f6dcd03986a81
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/media/i2c/hi847.c: In function 'hi847_set_format':
>> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
| ^~~
| |
| struct v4l2_subdev_pad_config *
In file included from include/media/v4l2-device.h:13,
from drivers/media/i2c/hi847.c:11:
include/media/v4l2-subdev.h:982:54: note: expected 'struct v4l2_subdev_state *' but argument is of type 'struct v4l2_subdev_pad_config *'
982 | struct v4l2_subdev_state *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
drivers/media/i2c/hi847.c: In function 'hi847_get_format':
drivers/media/i2c/hi847.c:2734:71: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
2734 | fmt->format = *v4l2_subdev_get_try_format(&hi847->sd, cfg,
| ^~~
| |
| struct v4l2_subdev_pad_config *
In file included from include/media/v4l2-device.h:13,
from drivers/media/i2c/hi847.c:11:
include/media/v4l2-subdev.h:982:54: note: expected 'struct v4l2_subdev_state *' but argument is of type 'struct v4l2_subdev_pad_config *'
982 | struct v4l2_subdev_state *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
drivers/media/i2c/hi847.c: In function 'hi847_open':
>> drivers/media/i2c/hi847.c:2780:66: error: 'struct v4l2_subdev_fh' has no member named 'pad'
2780 | v4l2_subdev_get_try_format(sd, fh->pad, 0));
| ^~
drivers/media/i2c/hi847.c: At top level:
>> drivers/media/i2c/hi847.c:2791:20: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_format *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_format *)' [-Werror=incompatible-pointer-types]
2791 | .set_fmt = hi847_set_format,
| ^~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2791:20: note: (near initialization for 'hi847_pad_ops.set_fmt')
drivers/media/i2c/hi847.c:2792:20: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_format *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_format *)' [-Werror=incompatible-pointer-types]
2792 | .get_fmt = hi847_get_format,
| ^~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2792:20: note: (near initialization for 'hi847_pad_ops.get_fmt')
>> drivers/media/i2c/hi847.c:2793:27: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_mbus_code_enum *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_mbus_code_enum *)' [-Werror=incompatible-pointer-types]
2793 | .enum_mbus_code = hi847_enum_mbus_code,
| ^~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2793:27: note: (near initialization for 'hi847_pad_ops.enum_mbus_code')
>> drivers/media/i2c/hi847.c:2794:28: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_frame_size_enum *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_frame_size_enum *)' [-Werror=incompatible-pointer-types]
2794 | .enum_frame_size = hi847_enum_frame_size,
| ^~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2794:28: note: (near initialization for 'hi847_pad_ops.enum_frame_size')
drivers/media/i2c/hi847.c: In function 'hi847_probe':
>> drivers/media/i2c/hi847.c:2954:15: error: implicit declaration of function 'v4l2_async_register_subdev_sensor_common'; did you mean 'v4l2_async_register_subdev_sensor'? [-Werror=implicit-function-declaration]
2954 | ret = v4l2_async_register_subdev_sensor_common(&hi847->sd);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| v4l2_async_register_subdev_sensor
cc1: some warnings being treated as errors
vim +/v4l2_subdev_get_try_format +2700 drivers/media/i2c/hi847.c
2683
2684 static int hi847_set_format(struct v4l2_subdev *sd,
2685 struct v4l2_subdev_pad_config *cfg,
2686 struct v4l2_subdev_format *fmt)
2687 {
2688 struct hi847 *hi847 = to_hi847(sd);
2689 const struct hi847_mode *mode;
2690 s32 vblank_def, h_blank;
2691
2692 mode = v4l2_find_nearest_size(supported_modes,
2693 ARRAY_SIZE(supported_modes), width,
2694 height, fmt->format.width,
2695 fmt->format.height);
2696
2697 mutex_lock(&hi847->mutex);
2698 hi847_assign_pad_format(mode, &fmt->format);
2699 if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) {
> 2700 *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
2701 } else {
2702 hi847->cur_mode = mode;
2703 __v4l2_ctrl_s_ctrl(hi847->link_freq, mode->link_freq_index);
2704 __v4l2_ctrl_s_ctrl_int64(hi847->pixel_rate,
2705 to_pixel_rate(mode->link_freq_index));
2706
2707 /* Update limits and set FPS to default */
2708 vblank_def = mode->fll_def - mode->height;
2709 __v4l2_ctrl_modify_range(hi847->vblank,
2710 mode->fll_min - mode->height,
2711 HI847_FLL_MAX - mode->height, 1,
2712 vblank_def);
2713 __v4l2_ctrl_s_ctrl(hi847->vblank, vblank_def);
2714
2715 h_blank = hi847->cur_mode->llp - hi847->cur_mode->width;
2716
2717 __v4l2_ctrl_modify_range(hi847->hblank, h_blank, h_blank, 1,
2718 h_blank);
2719 }
2720
2721 mutex_unlock(&hi847->mutex);
2722
2723 return 0;
2724 }
2725
2726 static int hi847_get_format(struct v4l2_subdev *sd,
2727 struct v4l2_subdev_pad_config *cfg,
2728 struct v4l2_subdev_format *fmt)
2729 {
2730 struct hi847 *hi847 = to_hi847(sd);
2731
2732 mutex_lock(&hi847->mutex);
2733 if (fmt->which == V4L2_SUBDEV_FORMAT_TRY)
2734 fmt->format = *v4l2_subdev_get_try_format(&hi847->sd, cfg,
2735 fmt->pad);
2736 else
2737 hi847_assign_pad_format(hi847->cur_mode, &fmt->format);
2738
2739 mutex_unlock(&hi847->mutex);
2740
2741 return 0;
2742 }
2743
2744 static int hi847_enum_mbus_code(struct v4l2_subdev *sd,
2745 struct v4l2_subdev_pad_config *cfg,
2746 struct v4l2_subdev_mbus_code_enum *code)
2747 {
2748 if (code->index > 0)
2749 return -EINVAL;
2750
2751 code->code = MEDIA_BUS_FMT_SGRBG10_1X10;
2752
2753 return 0;
2754 }
2755
2756 static int hi847_enum_frame_size(struct v4l2_subdev *sd,
2757 struct v4l2_subdev_pad_config *cfg,
2758 struct v4l2_subdev_frame_size_enum *fse)
2759 {
2760 if (fse->index >= ARRAY_SIZE(supported_modes))
2761 return -EINVAL;
2762
2763 if (fse->code != MEDIA_BUS_FMT_SGRBG10_1X10)
2764 return -EINVAL;
2765
2766 fse->min_width = supported_modes[fse->index].width;
2767 fse->max_width = fse->min_width;
2768 fse->min_height = supported_modes[fse->index].height;
2769 fse->max_height = fse->min_height;
2770
2771 return 0;
2772 }
2773
2774 static int hi847_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh)
2775 {
2776 struct hi847 *hi847 = to_hi847(sd);
2777
2778 mutex_lock(&hi847->mutex);
2779 hi847_assign_pad_format(&supported_modes[0],
> 2780 v4l2_subdev_get_try_format(sd, fh->pad, 0));
2781 mutex_unlock(&hi847->mutex);
2782
2783 return 0;
2784 }
2785
2786 static const struct v4l2_subdev_video_ops hi847_video_ops = {
2787 .s_stream = hi847_set_stream,
2788 };
2789
2790 static const struct v4l2_subdev_pad_ops hi847_pad_ops = {
> 2791 .set_fmt = hi847_set_format,
2792 .get_fmt = hi847_get_format,
> 2793 .enum_mbus_code = hi847_enum_mbus_code,
> 2794 .enum_frame_size = hi847_enum_frame_size,
2795 };
2796
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
^ permalink raw reply [flat|nested] 6+ messages in thread
* [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
@ 2022-01-12 15:18 ` kernel test robot
0 siblings, 0 replies; 6+ messages in thread
From: kernel test robot @ 2022-01-12 15:18 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 10104 bytes --]
tree: git://linuxtv.org/sailus/media_tree.git master
head: 232068c0bf39d2e34585450343c1439a89aad66b
commit: 009f8036169f02f87f7fd5e3152f6dcd03986a81 [15/16] media: hi847: Add support for Hi-847 sensor
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20220112/202201122346.jc4ZqZm5-lkp(a)intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.2.0
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
git remote add sailus-media-tree git://linuxtv.org/sailus/media_tree.git
git fetch --no-tags sailus-media-tree master
git checkout 009f8036169f02f87f7fd5e3152f6dcd03986a81
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/media/i2c/hi847.c: In function 'hi847_set_format':
>> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
| ^~~
| |
| struct v4l2_subdev_pad_config *
In file included from include/media/v4l2-device.h:13,
from drivers/media/i2c/hi847.c:11:
include/media/v4l2-subdev.h:982:54: note: expected 'struct v4l2_subdev_state *' but argument is of type 'struct v4l2_subdev_pad_config *'
982 | struct v4l2_subdev_state *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
drivers/media/i2c/hi847.c: In function 'hi847_get_format':
drivers/media/i2c/hi847.c:2734:71: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
2734 | fmt->format = *v4l2_subdev_get_try_format(&hi847->sd, cfg,
| ^~~
| |
| struct v4l2_subdev_pad_config *
In file included from include/media/v4l2-device.h:13,
from drivers/media/i2c/hi847.c:11:
include/media/v4l2-subdev.h:982:54: note: expected 'struct v4l2_subdev_state *' but argument is of type 'struct v4l2_subdev_pad_config *'
982 | struct v4l2_subdev_state *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
drivers/media/i2c/hi847.c: In function 'hi847_open':
>> drivers/media/i2c/hi847.c:2780:66: error: 'struct v4l2_subdev_fh' has no member named 'pad'
2780 | v4l2_subdev_get_try_format(sd, fh->pad, 0));
| ^~
drivers/media/i2c/hi847.c: At top level:
>> drivers/media/i2c/hi847.c:2791:20: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_format *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_format *)' [-Werror=incompatible-pointer-types]
2791 | .set_fmt = hi847_set_format,
| ^~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2791:20: note: (near initialization for 'hi847_pad_ops.set_fmt')
drivers/media/i2c/hi847.c:2792:20: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_format *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_format *)' [-Werror=incompatible-pointer-types]
2792 | .get_fmt = hi847_get_format,
| ^~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2792:20: note: (near initialization for 'hi847_pad_ops.get_fmt')
>> drivers/media/i2c/hi847.c:2793:27: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_mbus_code_enum *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_mbus_code_enum *)' [-Werror=incompatible-pointer-types]
2793 | .enum_mbus_code = hi847_enum_mbus_code,
| ^~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2793:27: note: (near initialization for 'hi847_pad_ops.enum_mbus_code')
>> drivers/media/i2c/hi847.c:2794:28: error: initialization of 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_state *, struct v4l2_subdev_frame_size_enum *)' from incompatible pointer type 'int (*)(struct v4l2_subdev *, struct v4l2_subdev_pad_config *, struct v4l2_subdev_frame_size_enum *)' [-Werror=incompatible-pointer-types]
2794 | .enum_frame_size = hi847_enum_frame_size,
| ^~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/hi847.c:2794:28: note: (near initialization for 'hi847_pad_ops.enum_frame_size')
drivers/media/i2c/hi847.c: In function 'hi847_probe':
>> drivers/media/i2c/hi847.c:2954:15: error: implicit declaration of function 'v4l2_async_register_subdev_sensor_common'; did you mean 'v4l2_async_register_subdev_sensor'? [-Werror=implicit-function-declaration]
2954 | ret = v4l2_async_register_subdev_sensor_common(&hi847->sd);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| v4l2_async_register_subdev_sensor
cc1: some warnings being treated as errors
vim +/v4l2_subdev_get_try_format +2700 drivers/media/i2c/hi847.c
2683
2684 static int hi847_set_format(struct v4l2_subdev *sd,
2685 struct v4l2_subdev_pad_config *cfg,
2686 struct v4l2_subdev_format *fmt)
2687 {
2688 struct hi847 *hi847 = to_hi847(sd);
2689 const struct hi847_mode *mode;
2690 s32 vblank_def, h_blank;
2691
2692 mode = v4l2_find_nearest_size(supported_modes,
2693 ARRAY_SIZE(supported_modes), width,
2694 height, fmt->format.width,
2695 fmt->format.height);
2696
2697 mutex_lock(&hi847->mutex);
2698 hi847_assign_pad_format(mode, &fmt->format);
2699 if (fmt->which == V4L2_SUBDEV_FORMAT_TRY) {
> 2700 *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
2701 } else {
2702 hi847->cur_mode = mode;
2703 __v4l2_ctrl_s_ctrl(hi847->link_freq, mode->link_freq_index);
2704 __v4l2_ctrl_s_ctrl_int64(hi847->pixel_rate,
2705 to_pixel_rate(mode->link_freq_index));
2706
2707 /* Update limits and set FPS to default */
2708 vblank_def = mode->fll_def - mode->height;
2709 __v4l2_ctrl_modify_range(hi847->vblank,
2710 mode->fll_min - mode->height,
2711 HI847_FLL_MAX - mode->height, 1,
2712 vblank_def);
2713 __v4l2_ctrl_s_ctrl(hi847->vblank, vblank_def);
2714
2715 h_blank = hi847->cur_mode->llp - hi847->cur_mode->width;
2716
2717 __v4l2_ctrl_modify_range(hi847->hblank, h_blank, h_blank, 1,
2718 h_blank);
2719 }
2720
2721 mutex_unlock(&hi847->mutex);
2722
2723 return 0;
2724 }
2725
2726 static int hi847_get_format(struct v4l2_subdev *sd,
2727 struct v4l2_subdev_pad_config *cfg,
2728 struct v4l2_subdev_format *fmt)
2729 {
2730 struct hi847 *hi847 = to_hi847(sd);
2731
2732 mutex_lock(&hi847->mutex);
2733 if (fmt->which == V4L2_SUBDEV_FORMAT_TRY)
2734 fmt->format = *v4l2_subdev_get_try_format(&hi847->sd, cfg,
2735 fmt->pad);
2736 else
2737 hi847_assign_pad_format(hi847->cur_mode, &fmt->format);
2738
2739 mutex_unlock(&hi847->mutex);
2740
2741 return 0;
2742 }
2743
2744 static int hi847_enum_mbus_code(struct v4l2_subdev *sd,
2745 struct v4l2_subdev_pad_config *cfg,
2746 struct v4l2_subdev_mbus_code_enum *code)
2747 {
2748 if (code->index > 0)
2749 return -EINVAL;
2750
2751 code->code = MEDIA_BUS_FMT_SGRBG10_1X10;
2752
2753 return 0;
2754 }
2755
2756 static int hi847_enum_frame_size(struct v4l2_subdev *sd,
2757 struct v4l2_subdev_pad_config *cfg,
2758 struct v4l2_subdev_frame_size_enum *fse)
2759 {
2760 if (fse->index >= ARRAY_SIZE(supported_modes))
2761 return -EINVAL;
2762
2763 if (fse->code != MEDIA_BUS_FMT_SGRBG10_1X10)
2764 return -EINVAL;
2765
2766 fse->min_width = supported_modes[fse->index].width;
2767 fse->max_width = fse->min_width;
2768 fse->min_height = supported_modes[fse->index].height;
2769 fse->max_height = fse->min_height;
2770
2771 return 0;
2772 }
2773
2774 static int hi847_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh)
2775 {
2776 struct hi847 *hi847 = to_hi847(sd);
2777
2778 mutex_lock(&hi847->mutex);
2779 hi847_assign_pad_format(&supported_modes[0],
> 2780 v4l2_subdev_get_try_format(sd, fh->pad, 0));
2781 mutex_unlock(&hi847->mutex);
2782
2783 return 0;
2784 }
2785
2786 static const struct v4l2_subdev_video_ops hi847_video_ops = {
2787 .s_stream = hi847_set_stream,
2788 };
2789
2790 static const struct v4l2_subdev_pad_ops hi847_pad_ops = {
> 2791 .set_fmt = hi847_set_format,
2792 .get_fmt = hi847_get_format,
> 2793 .enum_mbus_code = hi847_enum_mbus_code,
> 2794 .enum_frame_size = hi847_enum_frame_size,
2795 };
2796
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
2022-01-12 15:18 ` kernel test robot
@ 2022-01-12 16:03 ` Sakari Ailus
-1 siblings, 0 replies; 6+ messages in thread
From: Sakari Ailus @ 2022-01-12 16:03 UTC (permalink / raw)
To: kernel test robot; +Cc: Shawn Tu, kbuild-all, linux-kernel
Hi Shawn,
On Wed, Jan 12, 2022 at 11:18:55PM +0800, kernel test robot wrote:
> drivers/media/i2c/hi847.c: In function 'hi847_set_format':
> >> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
> 2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
> | ^~~
> | |
> | struct v4l2_subdev_pad_config *
There's been an API change in how the sub-device try state is stored and
accessed. The patch changing the other drivers is:
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?id=0d346d2a6f54f06f36b224fd27cd6eafe8c83be9>
Could you make similar changes to the hi847 driver? I'll then squash that
patch into the current patch adding the driver.
--
Kind regards,
Sakari Ailus
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
@ 2022-01-12 16:03 ` Sakari Ailus
0 siblings, 0 replies; 6+ messages in thread
From: Sakari Ailus @ 2022-01-12 16:03 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]
Hi Shawn,
On Wed, Jan 12, 2022 at 11:18:55PM +0800, kernel test robot wrote:
> drivers/media/i2c/hi847.c: In function 'hi847_set_format':
> >> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type [-Werror=incompatible-pointer-types]
> 2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
> | ^~~
> | |
> | struct v4l2_subdev_pad_config *
There's been an API change in how the sub-device try state is stored and
accessed. The patch changing the other drivers is:
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?id=0d346d2a6f54f06f36b224fd27cd6eafe8c83be9>
Could you make similar changes to the hi847 driver? I'll then squash that
patch into the current patch adding the driver.
--
Kind regards,
Sakari Ailus
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
2022-01-12 16:03 ` Sakari Ailus
@ 2022-01-13 3:59 ` Tu, ShawnX
-1 siblings, 0 replies; 6+ messages in thread
From: Tu, ShawnX @ 2022-01-13 3:59 UTC (permalink / raw)
To: Sakari Ailus, lkp; +Cc: kbuild-all, linux-kernel
Hi Sakari,
Thanks for your information.
I'll update the driver later.
Thanks,
Shawn
-----Original Message-----
From: Sakari Ailus <sakari.ailus@linux.intel.com>
Sent: Thursday, January 13, 2022 12:04 AM
To: lkp <lkp@intel.com>
Cc: Tu, ShawnX <shawnx.tu@intel.com>; kbuild-all@lists.01.org; linux-kernel@vger.kernel.org
Subject: Re: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
Hi Shawn,
On Wed, Jan 12, 2022 at 11:18:55PM +0800, kernel test robot wrote:
> drivers/media/i2c/hi847.c: In function 'hi847_set_format':
> >> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of
> >> 'v4l2_subdev_get_try_format' from incompatible pointer type
> >> [-Werror=incompatible-pointer-types]
> 2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
> | ^~~
> | |
> | struct v4l2_subdev_pad_config *
There's been an API change in how the sub-device try state is stored and accessed. The patch changing the other drivers is:
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?id=0d346d2a6f54f06f36b224fd27cd6eafe8c83be9>
Could you make similar changes to the hi847 driver? I'll then squash that patch into the current patch adding the driver.
--
Kind regards,
Sakari Ailus
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
@ 2022-01-13 3:59 ` Tu, ShawnX
0 siblings, 0 replies; 6+ messages in thread
From: Tu, ShawnX @ 2022-01-13 3:59 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 1548 bytes --]
Hi Sakari,
Thanks for your information.
I'll update the driver later.
Thanks,
Shawn
-----Original Message-----
From: Sakari Ailus <sakari.ailus@linux.intel.com>
Sent: Thursday, January 13, 2022 12:04 AM
To: lkp <lkp@intel.com>
Cc: Tu, ShawnX <shawnx.tu@intel.com>; kbuild-all(a)lists.01.org; linux-kernel(a)vger.kernel.org
Subject: Re: [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type
Hi Shawn,
On Wed, Jan 12, 2022 at 11:18:55PM +0800, kernel test robot wrote:
> drivers/media/i2c/hi847.c: In function 'hi847_set_format':
> >> drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of
> >> 'v4l2_subdev_get_try_format' from incompatible pointer type
> >> [-Werror=incompatible-pointer-types]
> 2700 | *v4l2_subdev_get_try_format(sd, cfg, fmt->pad) = fmt->format;
> | ^~~
> | |
> | struct v4l2_subdev_pad_config *
There's been an API change in how the sub-device try state is stored and accessed. The patch changing the other drivers is:
<URL:https://git.linuxtv.org/sailus/media_tree.git/commit/?id=0d346d2a6f54f06f36b224fd27cd6eafe8c83be9>
Could you make similar changes to the hi847 driver? I'll then squash that patch into the current patch adding the driver.
--
Kind regards,
Sakari Ailus
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-01-13 3:59 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-12 15:18 [sailus-media-tree:master 15/16] drivers/media/i2c/hi847.c:2700:49: error: passing argument 2 of 'v4l2_subdev_get_try_format' from incompatible pointer type kernel test robot
2022-01-12 15:18 ` kernel test robot
2022-01-12 16:03 ` Sakari Ailus
2022-01-12 16:03 ` Sakari Ailus
2022-01-13 3:59 ` Tu, ShawnX
2022-01-13 3:59 ` Tu, ShawnX
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.