All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Pavel Machek <pavel@ucw.cz>
Cc: kbuild-all@01.org, Jacek Anaszewski <jacek.anaszewski@gmail.com>,
	Tony Lindgren <tony@atomide.com>,
	kernel list <linux-kernel@vger.kernel.org>,
	sre@kernel.org, nekit1000@gmail.com, mpartap@gmx.net,
	merlijn@wizzup.org, Dan Murphy <dmurphy@ti.com>,
	linux-leds@vger.kernel.org
Subject: Re: [PATCH] lm3532: right registration to work with LED-backlight
Date: Tue, 17 Sep 2019 23:10:31 +0800	[thread overview]
Message-ID: <201909172340.4IiDNcEm%lkp@intel.com> (raw)
In-Reply-To: <20190917124032.GA27465@amd>

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

Hi Pavel,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[cannot apply to v5.3 next-20190916]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Pavel-Machek/lm3532-right-registration-to-work-with-LED-backlight/20190917-205315
config: sparc64-allmodconfig (attached as .config)
compiler: sparc64-linux-gcc (GCC) 7.4.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.4.0 make.cross ARCH=sparc64 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/leds/leds-lm3532.c: In function 'lm3532_parse_node':
>> drivers/leds/leds-lm3532.c:520:10: error: variable 'idata' has initializer but incomplete type
      struct led_init_data idata = {
             ^~~~~~~~~~~~~
>> drivers/leds/leds-lm3532.c:521:5: error: 'struct led_init_data' has no member named 'fwnode'
       .fwnode = child,
        ^~~~~~
>> drivers/leds/leds-lm3532.c:521:14: warning: excess elements in struct initializer
       .fwnode = child,
                 ^~~~~
   drivers/leds/leds-lm3532.c:521:14: note: (near initialization for 'idata')
>> drivers/leds/leds-lm3532.c:522:5: error: 'struct led_init_data' has no member named 'default_label'
       .default_label = ":",
        ^~~~~~~~~~~~~
   drivers/leds/leds-lm3532.c:522:21: warning: excess elements in struct initializer
       .default_label = ":",
                        ^~~
   drivers/leds/leds-lm3532.c:522:21: note: (near initialization for 'idata')
>> drivers/leds/leds-lm3532.c:523:5: error: 'struct led_init_data' has no member named 'devicename'
       .devicename = priv->client->name,
        ^~~~~~~~~~
   drivers/leds/leds-lm3532.c:523:18: warning: excess elements in struct initializer
       .devicename = priv->client->name,
                     ^~~~
   drivers/leds/leds-lm3532.c:523:18: note: (near initialization for 'idata')
>> drivers/leds/leds-lm3532.c:520:24: error: storage size of 'idata' isn't known
      struct led_init_data idata = {
                           ^~~~~
>> drivers/leds/leds-lm3532.c:591:9: error: implicit declaration of function 'devm_led_classdev_register_ext'; did you mean 'devm_led_classdev_register'? [-Werror=implicit-function-declaration]
      ret = devm_led_classdev_register_ext(priv->dev, &led->led_dev, &idata);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            devm_led_classdev_register
   drivers/leds/leds-lm3532.c:520:24: warning: unused variable 'idata' [-Wunused-variable]
      struct led_init_data idata = {
                           ^~~~~
   cc1: some warnings being treated as errors

vim +/idata +520 drivers/leds/leds-lm3532.c

   485	
   486	static int lm3532_parse_node(struct lm3532_data *priv)
   487	{
   488		struct fwnode_handle *child = NULL;
   489		struct lm3532_led *led;
   490		const char *name;
   491		int control_bank;
   492		u32 ramp_time;
   493		size_t i = 0;
   494		int ret;
   495	
   496		priv->enable_gpio = devm_gpiod_get_optional(&priv->client->dev,
   497							   "enable", GPIOD_OUT_LOW);
   498		if (IS_ERR(priv->enable_gpio))
   499			priv->enable_gpio = NULL;
   500	
   501		priv->regulator = devm_regulator_get(&priv->client->dev, "vin");
   502		if (IS_ERR(priv->regulator))
   503			priv->regulator = NULL;
   504	
   505		ret = device_property_read_u32(&priv->client->dev, "ramp-up-us",
   506					       &ramp_time);
   507		if (ret)
   508			dev_info(&priv->client->dev, "ramp-up-ms property missing\n");
   509		else
   510			priv->runtime_ramp_up = lm3532_get_ramp_index(ramp_time);
   511	
   512		ret = device_property_read_u32(&priv->client->dev, "ramp-down-us",
   513					       &ramp_time);
   514		if (ret)
   515			dev_info(&priv->client->dev, "ramp-down-ms property missing\n");
   516		else
   517			priv->runtime_ramp_down = lm3532_get_ramp_index(ramp_time);
   518	
   519		device_for_each_child_node(priv->dev, child) {
 > 520			struct led_init_data idata = {
 > 521				.fwnode = child,
 > 522				.default_label = ":",
 > 523				.devicename = priv->client->name,
   524			};
   525	
   526			led = &priv->leds[i];
   527	
   528			ret = fwnode_property_read_u32(child, "reg", &control_bank);
   529			if (ret) {
   530				dev_err(&priv->client->dev, "reg property missing\n");
   531				fwnode_handle_put(child);
   532				goto child_out;
   533			}
   534	
   535			if (control_bank > LM3532_CONTROL_C) {
   536				dev_err(&priv->client->dev, "Control bank invalid\n");
   537				continue;
   538			}
   539	
   540			led->control_bank = control_bank;
   541	
   542			ret = fwnode_property_read_u32(child, "ti,led-mode",
   543						       &led->mode);
   544			if (ret) {
   545				dev_err(&priv->client->dev, "ti,led-mode property missing\n");
   546				fwnode_handle_put(child);
   547				goto child_out;
   548			}
   549	
   550			if (led->mode == LM3532_BL_MODE_ALS) {
   551				ret = lm3532_parse_als(priv);
   552				if (ret)
   553					dev_err(&priv->client->dev, "Failed to parse als\n");
   554				else
   555					lm3532_als_configure(priv, led);
   556			}
   557	
   558			led->num_leds = fwnode_property_read_u32_array(child,
   559								       "led-sources",
   560								       NULL, 0);
   561	
   562			if (led->num_leds > LM3532_MAX_LED_STRINGS) {
   563				dev_err(&priv->client->dev, "To many LED string defined\n");
   564				continue;
   565			}
   566	
   567			ret = fwnode_property_read_u32_array(child, "led-sources",
   568							    led->led_strings,
   569							    led->num_leds);
   570			if (ret) {
   571				dev_err(&priv->client->dev, "led-sources property missing\n");
   572				fwnode_handle_put(child);
   573				goto child_out;
   574			}
   575	
   576			fwnode_property_read_string(child, "linux,default-trigger",
   577						    &led->led_dev.default_trigger);
   578	
   579			ret = fwnode_property_read_string(child, "label", &name);
   580			if (ret)
   581				snprintf(led->label, sizeof(led->label),
   582					"%s::", priv->client->name);
   583			else
   584				snprintf(led->label, sizeof(led->label),
   585					 "%s:%s", priv->client->name, name);
   586	
   587			led->priv = priv;
   588			led->led_dev.name = led->label;
   589			led->led_dev.brightness_set_blocking = lm3532_brightness_set;
   590	
 > 591			ret = devm_led_classdev_register_ext(priv->dev, &led->led_dev, &idata);
   592			if (ret) {
   593				dev_err(&priv->client->dev, "led register err: %d\n",
   594					ret);
   595				fwnode_handle_put(child);
   596				goto child_out;
   597			}
   598	
   599			lm3532_init_registers(led);
   600	
   601			i++;
   602		}
   603	
   604	child_out:
   605		return ret;
   606	}
   607	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

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

  reply	other threads:[~2019-09-17 15:11 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-27 21:52 [PATCH] leds: lm3532: Avoid potentially unpaired regulator calls Tony Lindgren
2019-08-28  8:42 ` Pavel Machek
2019-08-28  8:53 ` [FYI] lm3532: right registration to work with LED-backlight Pavel Machek
2019-08-28 20:32   ` Jacek Anaszewski
2019-09-08  8:03     ` Pavel Machek
2019-09-08 16:17       ` Jacek Anaszewski
2019-09-17 12:40         ` [PATCH] " Pavel Machek
2019-09-17 15:10           ` kbuild test robot [this message]
2019-09-17 12:42         ` [FYI] " Pavel Machek
2019-09-17 17:23           ` Jacek Anaszewski
2019-08-28 20:09 ` [PATCH] leds: lm3532: Avoid potentially unpaired regulator calls Jacek Anaszewski

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=201909172340.4IiDNcEm%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=dmurphy@ti.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=kbuild-all@01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=merlijn@wizzup.org \
    --cc=mpartap@gmx.net \
    --cc=nekit1000@gmail.com \
    --cc=pavel@ucw.cz \
    --cc=sre@kernel.org \
    --cc=tony@atomide.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 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.