Hi Maxime,
I love your patch! Perhaps something to improve:
[auto build test WARNING on ]
url: https://github.com/0day-ci/linux/commits/Maxime-Ripard/sunxi-Add-DT-represen... base: config: i386-randconfig-a1-201828 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=i386
All warnings (new ones prefixed by >>):
drivers/of/address.c: In function 'of_translate_ioport':
drivers/of/address.c:742:38: warning: passing argument 2 of '__of_translate_address' from incompatible pointer type
taddr = __of_translate_address(dev, in_addr, "ranges", &host); ^ drivers/of/address.c:571:12: note: expected 'struct device_node *' but argument is of type 'const __be32 *' static u64 __of_translate_address(struct device_node *dev, ^ drivers/of/address.c:742:47: warning: passing argument 3 of '__of_translate_address' from incompatible pointer type taddr = __of_translate_address(dev, in_addr, "ranges", &host); ^ drivers/of/address.c:571:12: note: expected 'const __be32 *' but argument is of type 'char *' static u64 __of_translate_address(struct device_node *dev, ^ drivers/of/address.c:742:57: warning: passing argument 4 of '__of_translate_address' from incompatible pointer type taddr = __of_translate_address(dev, in_addr, "ranges", &host); ^ drivers/of/address.c:571:12: note: expected 'const char *' but argument is of type 'struct device_node **' static u64 __of_translate_address(struct device_node *dev, ^ drivers/of/address.c:742:10: error: too few arguments to function '__of_translate_address' taddr = __of_translate_address(dev, in_addr, "ranges", &host); ^ drivers/of/address.c:571:12: note: declared here static u64 __of_translate_address(struct device_node *dev, ^
vim +/__of_translate_address +742 drivers/of/address.c
dbbdee94 Grant Likely 2010-06-08 734 65af618d Zhichang Yuan 2018-03-15 735 static u64 of_translate_ioport(struct device_node *dev, const __be32 *in_addr, 65af618d Zhichang Yuan 2018-03-15 736 u64 size) 65af618d Zhichang Yuan 2018-03-15 737 { 65af618d Zhichang Yuan 2018-03-15 738 u64 taddr; 65af618d Zhichang Yuan 2018-03-15 739 unsigned long port; 65af618d Zhichang Yuan 2018-03-15 740 struct device_node *host; 65af618d Zhichang Yuan 2018-03-15 741 65af618d Zhichang Yuan 2018-03-15 @742 taddr = __of_translate_address(dev, in_addr, "ranges", &host); 65af618d Zhichang Yuan 2018-03-15 743 if (host) { 65af618d Zhichang Yuan 2018-03-15 744 /* host-specific port access */ 65af618d Zhichang Yuan 2018-03-15 745 port = logic_pio_trans_hwaddr(&host->fwnode, taddr, size); 65af618d Zhichang Yuan 2018-03-15 746 of_node_put(host); 65af618d Zhichang Yuan 2018-03-15 747 } else { 65af618d Zhichang Yuan 2018-03-15 748 /* memory-mapped I/O range */ 65af618d Zhichang Yuan 2018-03-15 749 port = pci_address_to_pio(taddr); 65af618d Zhichang Yuan 2018-03-15 750 } 65af618d Zhichang Yuan 2018-03-15 751 65af618d Zhichang Yuan 2018-03-15 752 if (port == (unsigned long)-1) 65af618d Zhichang Yuan 2018-03-15 753 return OF_BAD_ADDR; 65af618d Zhichang Yuan 2018-03-15 754 65af618d Zhichang Yuan 2018-03-15 755 return port; 65af618d Zhichang Yuan 2018-03-15 756 } 65af618d Zhichang Yuan 2018-03-15 757
:::::: The code at line 742 was first introduced by commit :::::: 65af618d2c559f8eb19d80d03a23029651a59de4 of: Add missing I/O range exception for indirect-IO devices
:::::: TO: Zhichang Yuan yuanzhichang@hisilicon.com :::::: CC: Bjorn Helgaas helgaas@kernel.org
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation