Re: [PATCH 3/3] net: phy: fixed_phy: switch to using fwnode_gpiod_get_index

From: kbuild test robot
Date: Sat Oct 05 2019 - 01:15:23 EST


Hi Dmitry,

I love your patch! Yet something to improve:

[auto build test ERROR on net-next/master]
[cannot apply to v5.4-rc1 next-20191004]
[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/Dmitry-Torokhov/net-phy-switch-to-using-fwnode_gpiod_get_index/20191005-083613
config: sh-allmodconfig (attached as .config)
compiler: sh4-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=sh

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

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

drivers/net/phy/fixed_phy.c: In function 'fixed_phy_get_gpiod':
>> drivers/net/phy/fixed_phy.c:213:10: error: implicit declaration of function 'fwnode_gpiod_get_index'; did you mean 'devm_gpiod_get_index'? [-Werror=implicit-function-declaration]
gpiod = fwnode_gpiod_get_index(of_fwnode_handle(fixed_link_node),
^~~~~~~~~~~~~~~~~~~~~~
devm_gpiod_get_index
>> drivers/net/phy/fixed_phy.c:213:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
gpiod = fwnode_gpiod_get_index(of_fwnode_handle(fixed_link_node),
^
cc1: some warnings being treated as errors

vim +213 drivers/net/phy/fixed_phy.c

194
195 #ifdef CONFIG_OF_GPIO
196 static struct gpio_desc *fixed_phy_get_gpiod(struct device_node *np)
197 {
198 struct device_node *fixed_link_node;
199 struct gpio_desc *gpiod;
200
201 if (!np)
202 return NULL;
203
204 fixed_link_node = of_get_child_by_name(np, "fixed-link");
205 if (!fixed_link_node)
206 return NULL;
207
208 /*
209 * As the fixed link is just a device tree node without any
210 * Linux device associated with it, we simply have obtain
211 * the GPIO descriptor from the device tree like this.
212 */
> 213 gpiod = fwnode_gpiod_get_index(of_fwnode_handle(fixed_link_node),
214 "link-gpios", 0, GPIOD_IN, "mdio");
215 if (IS_ERR(gpiod) && PTR_ERR(gpiod) != -EPROBE_DEFER) {
216 if (PTR_ERR(gpiod) != -ENOENT)
217 pr_err("error getting GPIO for fixed link %pOF, proceed without\n",
218 fixed_link_node);
219 gpiod = NULL;
220 }
221 of_node_put(fixed_link_node);
222
223 return gpiod;
224 }
225 #else
226 static struct gpio_desc *fixed_phy_get_gpiod(struct device_node *np)
227 {
228 return NULL;
229 }
230 #endif
231

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

Attachment: .config.gz
Description: application/gzip