Hi Sergio,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on gpio/for-next]
[also build test ERROR on v4.18-rc2 next-20180629]
[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/Sergio-Paracuellos/gpio-mediatek-driver-for-gpio-chip-in-MT7621-SoC/20180629-225420
base:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git 
for-next
config: x86_64-randconfig-s0-06292230 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   drivers/gpio/gpio-mt7621.c: In function 'mediatek_gpio_bank_probe':
>> drivers/gpio/gpio-mt7621.c:221:10: error: 'struct gpio_chip' has no member 
>> named 'of_node'
     rg->chip.of_node = node;
             ^

vim +221 drivers/gpio/gpio-mt7621.c

   207  
   208  static int
   209  mediatek_gpio_bank_probe(struct platform_device *pdev,
   210                           struct device_node *node, int bank)
   211  {
   212          struct mtk_data *gpio = dev_get_drvdata(&pdev->dev);
   213          struct mtk_gc *rg;
   214          void __iomem *dat, *set, *ctrl, *diro;
   215          int ret;
   216  
   217          rg = &gpio->gc_map[bank];
   218          memset(rg, 0, sizeof(*rg));
   219  
   220          spin_lock_init(&rg->lock);
 > 221          rg->chip.of_node = node;
   222          rg->bank = bank;
   223          rg->chip.label = mediatek_gpio_bank_name(rg->bank);
   224  
   225          dat = gpio->gpio_membase + GPIO_REG_DATA + (rg->bank * 
GPIO_BANK_WIDE);
   226          set = gpio->gpio_membase + GPIO_REG_DSET + (rg->bank * 
GPIO_BANK_WIDE);
   227          ctrl = gpio->gpio_membase + GPIO_REG_DCLR + (rg->bank * 
GPIO_BANK_WIDE);
   228          diro = gpio->gpio_membase + GPIO_REG_CTRL + (rg->bank * 
GPIO_BANK_WIDE);
   229  
   230          ret = bgpio_init(&rg->chip, &pdev->dev, 4,
   231                           dat, set, ctrl, diro, NULL, 0);
   232          if (ret) {
   233                  dev_err(&pdev->dev, "bgpio_init() failed\n");
   234                  return ret;
   235          }
   236  
   237          ret = devm_gpiochip_add_data(&pdev->dev, &rg->chip, gpio);
   238          if (ret < 0) {
   239                  dev_err(&pdev->dev, "Could not register gpio %d, 
ret=%d\n",
   240                          rg->chip.ngpio, ret);
   241                  return ret;
   242          }
   243  
   244          if (gpio->gpio_irq) {
   245                  /*
   246                   * Manually request the irq here instead of passing
   247                   * a flow-handler to gpiochip_set_chained_irqchip,
   248                   * because the irq is shared.
   249                   */
   250                  ret = devm_request_irq(&pdev->dev, gpio->gpio_irq,
   251                                         mediatek_gpio_irq_handler, 
IRQF_SHARED,
   252                                         rg->chip.label, &rg->chip);
   253  
   254                  if (ret) {
   255                          dev_err(&pdev->dev, "Error requesting IRQ %d: 
%d\n",
   256                                  gpio->gpio_irq, ret);
   257                          return ret;
   258                  }
   259  
   260                  mediatek_gpio_irq_chip.name = rg->chip.label;
   261                  ret = gpiochip_irqchip_add(&rg->chip, 
&mediatek_gpio_irq_chip,
   262                                             0, handle_simple_irq, 
IRQ_TYPE_NONE);
   263                  if (ret) {
   264                          dev_err(&pdev->dev, "failed to add 
gpiochip_irqchip\n");
   265                          return ret;
   266                  }
   267  
   268                  gpiochip_set_chained_irqchip(&rg->chip, 
&mediatek_gpio_irq_chip,
   269                                               gpio->gpio_irq, NULL);
   270          }
   271  
   272          /* set polarity to low for all gpios */
   273          mtk_gpio_w32(rg, GPIO_REG_POL, 0);
   274  
   275          dev_info(&pdev->dev, "registering %d gpios\n", rg->chip.ngpio);
   276  
   277          return 0;
   278  }
   279  

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

Attachment: .config.gz
Description: application/gzip

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to