Messages in this thread | | | Subject | Re: [RESEND PATCH v27 11/15] leds: lp55xx: Add multicolor framework support to lp55xx | From | Dan Murphy <> | Date | Wed, 17 Jun 2020 14:22:13 -0500 |
| |
Pavel/Jacek
On 6/17/20 11:28 AM, kernel test robot wrote: > Hi Dan, > > I love your patch! Yet something to improve: > > [auto build test ERROR on pavel-linux-leds/for-next] > [cannot apply to j.anaszewski-leds/for-next] > [if your patch is applied to the wrong git tree, please drop us a note to help > improve the system. BTW, we also suggest to use '--base' option to specify the > base tree in git format-patch, please see https://stackoverflow.com/a/37406982] > > url: https://github.com/0day-ci/linux/commits/Dan-Murphy/Multicolor-Framework-v27/20200616-042217 > base: git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds.git for-next > config: ia64-randconfig-r015-20200617 (attached as .config) > compiler: ia64-linux-gcc (GCC) 9.3.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 > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64 > > 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 >>, old ones prefixed by <<): > > ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function `lp55xx_set_mc_brightness': >>> drivers/leds/leds-lp55xx-common.c:146: undefined reference to `led_mc_calc_color_components' > ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function `devm_led_classdev_multicolor_register': >>> include/linux/led-class-multicolor.h:74: undefined reference to `devm_led_classdev_multicolor_register_ext' > vim +146 drivers/leds/leds-lp55xx-common.c > > 138 > 139 static int lp55xx_set_mc_brightness(struct led_classdev *cdev, > 140 enum led_brightness brightness) > 141 { > 142 struct led_classdev_mc *mc_dev = lcdev_to_mccdev(cdev); > 143 struct lp55xx_led *led = mcled_cdev_to_led(mc_dev); > 144 struct lp55xx_device_config *cfg = led->chip->cfg; > 145 > > 146 led_mc_calc_color_components(&led->mc_cdev, brightness); > 147 return cfg->multicolor_brightness_fn(led); > 148
Well this was a mess to figure out.
The only fix I can figure out here is to remove the
depends on LEDS_CLASS_MULTI_COLOR || !LEDS_CLASS_MULTI_COLOR
from each child device and add
select LEDS_CLASS_MULTI_COLOR
to the LP55XX_COMMON
This way the Multi color framework will inherit the symbol that was set by the COMMON flag which is inherited by majority from the child flags.
Dan
| |