Re: [PATCH 01/10] input: keyboard: adp5588-keys: support gpi key events as 'gpio keys'

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

 



Hi "Nuno,

I love your patch! Yet something to improve:

[auto build test ERROR on dtor-input/next]
[also build test ERROR on next-20220708]
[cannot apply to brgl/gpio/for-next hid/for-next linus/master v5.19-rc5]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Nuno-S/adp5588-keys-refactor-and-fw-properties-support/20220708-173730
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
config: x86_64-randconfig-a013 (https://download.01.org/0day-ci/archive/20220709/202207091223.nBzeL6dk-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
        # https://github.com/intel-lab-lkp/linux/commit/64267ff775fd4b945fb916a10187be1c15faa165
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Nuno-S/adp5588-keys-refactor-and-fw-properties-support/20220708-173730
        git checkout 64267ff775fd4b945fb916a10187be1c15faa165
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   drivers/input/keyboard/adp5588-keys.c: In function 'adp5588_gpio_add':
>> drivers/input/keyboard/adp5588-keys.c:263:18: error: 'struct gpio_chip' has no member named 'of_node'; did you mean 'fwnode'?
     263 |         kpad->gc.of_node = kpad->client->dev.of_node;
         |                  ^~~~~~~
         |                  fwnode


vim +263 drivers/input/keyboard/adp5588-keys.c

   243	
   244	static int adp5588_gpio_add(struct adp5588_kpad *kpad)
   245	{
   246		struct irq_chip *irq_chip = &kpad->irq_chip;
   247		struct device *dev = &kpad->client->dev;
   248		const struct adp5588_kpad_platform_data *pdata = dev_get_platdata(dev);
   249		const struct adp5588_gpio_platform_data *gpio_data = pdata->gpio_data;
   250		struct gpio_irq_chip *girq;
   251		int i, error;
   252	
   253		if (!gpio_data)
   254			return 0;
   255	
   256		kpad->gc.ngpio = adp5588_build_gpiomap(kpad, pdata);
   257		if (kpad->gc.ngpio == 0) {
   258			dev_info(dev, "No unused gpios left to export\n");
   259			return 0;
   260		}
   261	
   262		kpad->gc.parent = &kpad->client->dev;
 > 263		kpad->gc.of_node = kpad->client->dev.of_node;
   264		kpad->gc.direction_input = adp5588_gpio_direction_input;
   265		kpad->gc.direction_output = adp5588_gpio_direction_output;
   266		kpad->gc.get = adp5588_gpio_get_value;
   267		kpad->gc.set = adp5588_gpio_set_value;
   268		kpad->gc.can_sleep = 1;
   269	
   270		kpad->gc.base = gpio_data->gpio_start;
   271		kpad->gc.label = kpad->client->name;
   272		kpad->gc.owner = THIS_MODULE;
   273		kpad->gc.names = gpio_data->names;
   274	
   275		irq_chip->name = "adp5588";
   276		irq_chip->irq_mask = adp5588_irq_mask;
   277		irq_chip->irq_unmask = adp5588_irq_unmask;
   278		irq_chip->irq_bus_lock = adp5588_irq_bus_lock;
   279		irq_chip->irq_bus_sync_unlock = adp5588_irq_bus_sync_unlock;
   280		irq_chip->irq_set_type = adp5588_irq_set_type;
   281		irq_chip->flags	= IRQCHIP_SKIP_SET_WAKE;
   282		girq = &kpad->gc.irq;
   283		girq->chip = irq_chip;
   284		girq->handler = handle_simple_irq;
   285		girq->threaded = true;
   286	
   287		mutex_init(&kpad->gpio_lock);
   288	
   289		error = devm_gpiochip_add_data(dev, &kpad->gc, kpad);
   290		if (error) {
   291			dev_err(dev, "gpiochip_add failed: %d\n", error);
   292			return error;
   293		}
   294	
   295		for (i = 0; i <= ADP5588_BANK(ADP5588_MAXGPIO); i++) {
   296			kpad->dat_out[i] = adp5588_read(kpad->client,
   297							GPIO_DAT_OUT1 + i);
   298			kpad->dir[i] = adp5588_read(kpad->client, GPIO_DIR1 + i);
   299		}
   300	
   301		if (gpio_data->setup) {
   302			error = gpio_data->setup(kpad->client,
   303						 kpad->gc.base, kpad->gc.ngpio,
   304						 gpio_data->context);
   305			if (error)
   306				dev_warn(dev, "setup failed: %d\n", error);
   307		}
   308	
   309		if (gpio_data->teardown) {
   310			error = devm_add_action(dev, adp5588_gpio_do_teardown, kpad);
   311			if (error)
   312				dev_warn(dev, "failed to schedule teardown: %d\n",
   313					 error);
   314		}
   315	
   316		return 0;
   317	}
   318	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux