linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Martin Kepplinger <martin.kepplinger@puri.sm>,
	mchehab@kernel.org, robh@kernel.org,
	krzysztof.kozlowski@canonical.com,
	laurent.pinchart@ideasonboard.com
Cc: kbuild-all@lists.01.org, kernel@puri.sm,
	paul.kocialkowski@bootlin.com, shawnx.tu@intel.com,
	linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v1 3/4] media: i2c: add driver for the SK Hynix Hi-846 8M pixel camera
Date: Fri, 28 May 2021 00:39:10 +0800	[thread overview]
Message-ID: <202105280056.11fyu2Be-lkp@intel.com> (raw)
In-Reply-To: <20210527091221.3335998-4-martin.kepplinger@puri.sm>

[-- Attachment #1: Type: text/plain, Size: 7431 bytes --]

Hi Martin,

I love your patch! Yet something to improve:

[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on robh/for-next linus/master v5.13-rc3 next-20210527]
[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/Martin-Kepplinger/Add-support-for-the-Hynix-Hi-846-camera/20210527-171447
base:   git://linuxtv.org/media_tree.git master
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/707231d55da9f8b9f902252d852e5a9af635503d
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Martin-Kepplinger/Add-support-for-the-Hynix-Hi-846-camera/20210527-171447
        git checkout 707231d55da9f8b9f902252d852e5a9af635503d
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

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/hi846.c: In function 'hi846_probe':
   drivers/media/i2c/hi846.c:2162:8: error: implicit declaration of function 'v4l2_async_register_subdev_sensor_common'; did you mean 'v4l2_async_register_subdev_sensor'? [-Werror=implicit-function-declaration]
    2162 |  ret = v4l2_async_register_subdev_sensor_common(&hi846->sd);
         |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |        v4l2_async_register_subdev_sensor
   drivers/media/i2c/hi846.c:2084:17: warning: unused variable 'd' [-Wunused-variable]
    2084 |  struct dentry *d;
         |                 ^
   In file included from drivers/media/i2c/hi846.c:5:
   drivers/media/i2c/hi846.c: At top level:
>> drivers/media/i2c/hi846.c:2200:32: error: 'hi846_acpi_ids' undeclared here (not in a function); did you mean 'hi846_pm_ops'?
    2200 |   .acpi_match_table = ACPI_PTR(hi846_acpi_ids),
         |                                ^~~~~~~~~~~~~~
   include/linux/acpi.h:673:25: note: in definition of macro 'ACPI_PTR'
     673 | #define ACPI_PTR(_ptr) (_ptr)
         |                         ^~~~
   drivers/media/i2c/hi846.c:1082:31: warning: 'mode_3264x2448_mipi_4lane' defined but not used [-Wunused-const-variable=]
    1082 | static const struct hi846_reg mode_3264x2448_mipi_4lane[] = {
         |                               ^~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/i2c/hi846.c:1063:31: warning: 'mode_3264x2448_mipi_2lane' defined but not used [-Wunused-const-variable=]
    1063 | static const struct hi846_reg mode_3264x2448_mipi_2lane[] = {
         |                               ^~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/i2c/hi846.c:1032:31: warning: 'mode_3264x2448_config' defined but not used [-Wunused-const-variable=]
    1032 | static const struct hi846_reg mode_3264x2448_config[] = {
         |                               ^~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +2200 drivers/media/i2c/hi846.c

  2078	
  2079	static int hi846_probe(struct i2c_client *client)
  2080	{
  2081		struct hi846 *hi846;
  2082		int ret;
  2083		u8 lanes;
  2084		struct dentry *d;
  2085	
  2086		ret = hi846_check_hwcfg(&client->dev, &lanes);
  2087		if (ret) {
  2088			dev_err(&client->dev, "failed to check HW configuration: %d",
  2089				ret);
  2090			return ret;
  2091		}
  2092	
  2093		hi846 = devm_kzalloc(&client->dev, sizeof(*hi846), GFP_KERNEL);
  2094		if (!hi846)
  2095			return -ENOMEM;
  2096	
  2097		hi846->nr_lanes = lanes;
  2098	
  2099		v4l2_i2c_subdev_init(&hi846->sd, client, &hi846_subdev_ops);
  2100	
  2101		ret = hi846_parse_gpio(&hi846->rst_gpio, &client->dev);
  2102		if (ret < 0) {
  2103			dev_err(&client->dev, "parse gpio failed: %d\n", ret);
  2104			return ret;
  2105		}
  2106	
  2107		hi846->vdd_regulator = devm_regulator_get(&client->dev, "vdd");
  2108		if (IS_ERR(hi846->vdd_regulator))
  2109			dev_warn(&client->dev, "cannot get voltage regulator\n");
  2110	
  2111		hi846->vdd1_regulator = devm_regulator_get(&client->dev, "vdd1");
  2112		if (IS_ERR(hi846->vdd1_regulator))
  2113			dev_warn(&client->dev, "cannot get voltage regulator\n");
  2114	
  2115		ret = hi846_regulator_enable(hi846);
  2116		if (ret) {
  2117			dev_err(&client->dev, "regulator enable failed: %d\n", ret);
  2118			return ret;
  2119		}
  2120	
  2121		hi846->clock = devm_clk_get(hi846->sd.dev, "mclk");
  2122		if (IS_ERR(hi846->clock)) {
  2123			dev_err(&client->dev, "get clk failed\n");
  2124			ret = -EPROBE_DEFER;
  2125			goto probe_error_regulator;
  2126		}
  2127	
  2128		ret = clk_prepare_enable(hi846->clock);
  2129		if (ret < 0)
  2130			goto probe_error_regulator;
  2131	
  2132		msleep(100);
  2133	
  2134		hi846_rst_gpio_assert(hi846, true);
  2135	
  2136		ret = hi846_identify_module(hi846);
  2137		if (ret) {
  2138			dev_err(&client->dev, "failed to find sensor: %d", ret);
  2139			goto probe_error_regulator;
  2140		}
  2141	
  2142		mutex_init(&hi846->mutex);
  2143	
  2144		hi846->cur_mode = &supported_modes[0];
  2145		ret = hi846_init_controls(hi846);
  2146		if (ret) {
  2147			dev_err(&client->dev, "failed to init controls: %d", ret);
  2148			goto probe_error_v4l2_ctrl_handler_free;
  2149		}
  2150	
  2151		hi846->sd.internal_ops = &hi846_internal_ops;
  2152		hi846->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
  2153		hi846->sd.entity.ops = &hi846_subdev_entity_ops;
  2154		hi846->sd.entity.function = MEDIA_ENT_F_CAM_SENSOR;
  2155		hi846->pad.flags = MEDIA_PAD_FL_SOURCE;
  2156		ret = media_entity_pads_init(&hi846->sd.entity, 1, &hi846->pad);
  2157		if (ret) {
  2158			dev_err(&client->dev, "failed to init entity pads: %d", ret);
  2159			goto probe_error_v4l2_ctrl_handler_free;
  2160		}
  2161	
> 2162		ret = v4l2_async_register_subdev_sensor_common(&hi846->sd);
  2163		if (ret < 0) {
  2164			dev_err(&client->dev, "failed to register V4L2 subdev: %d",
  2165				ret);
  2166			goto probe_error_media_entity_cleanup;
  2167		}
  2168	
  2169		pm_runtime_set_active(&client->dev);
  2170		pm_runtime_enable(&client->dev);
  2171		pm_runtime_idle(&client->dev);
  2172	
  2173		return 0;
  2174	
  2175	probe_error_media_entity_cleanup:
  2176		media_entity_cleanup(&hi846->sd.entity);
  2177	
  2178	probe_error_v4l2_ctrl_handler_free:
  2179		v4l2_ctrl_handler_free(hi846->sd.ctrl_handler);
  2180		mutex_destroy(&hi846->mutex);
  2181	
  2182	probe_error_regulator:
  2183		hi846_regulator_disable(hi846);
  2184	
  2185		return ret;
  2186	}
  2187	
  2188	UNIVERSAL_DEV_PM_OPS(hi846_pm_ops, hi846_suspend, hi846_resume, NULL);
  2189	
  2190	static const struct of_device_id hi846_of_match[] = {
  2191		{ .compatible = "hynix,hi846", },
  2192		{},
  2193	};
  2194	MODULE_DEVICE_TABLE(of, hi846_of_match);
  2195	
  2196	static struct i2c_driver hi846_i2c_driver = {
  2197		.driver = {
  2198			.name = "hi846",
  2199			.pm = &hi846_pm_ops,
> 2200			.acpi_match_table = ACPI_PTR(hi846_acpi_ids),
  2201			.of_match_table = of_match_ptr(hi846_of_match),
  2202		},
  2203		.probe_new = hi846_probe,
  2204		.remove = hi846_remove,
  2205	};
  2206	

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 65661 bytes --]

  reply	other threads:[~2021-05-27 16:39 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-27  9:12 [PATCH v1 0/4] Add support for the Hynix Hi-846 camera Martin Kepplinger
2021-05-27  9:12 ` [PATCH v1 1/4] dt-bindings: vendor-prefixes: Add SK Hynix Inc Martin Kepplinger
2021-05-27  9:12 ` [PATCH v1 2/4] dt-bindings: media: document SK Hynix Hi-846 MIPI CSI-2 8M pixel sensor Martin Kepplinger
2021-05-27 14:23   ` Rob Herring
2021-05-27  9:12 ` [PATCH v1 3/4] media: i2c: add driver for the SK Hynix Hi-846 8M pixel camera Martin Kepplinger
2021-05-27 16:39   ` kernel test robot [this message]
2021-05-27  9:12 ` [PATCH v1 4/4] Documentation: i2c-cardlist: add the Hynix hi846 sensor Martin Kepplinger
2021-05-27  9:55   ` Laurent Pinchart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202105280056.11fyu2Be-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=devicetree@vger.kernel.org \
    --cc=kbuild-all@lists.01.org \
    --cc=kernel@puri.sm \
    --cc=krzysztof.kozlowski@canonical.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=martin.kepplinger@puri.sm \
    --cc=mchehab@kernel.org \
    --cc=paul.kocialkowski@bootlin.com \
    --cc=robh@kernel.org \
    --cc=shawnx.tu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).