Re: [PATCH 4/5] net: stmmac: Add glue layer for Loongson-1 SoC

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

 



Hi Keguang,

kernel test robot noticed the following build errors:

[auto build test ERROR on 21ef7b1e17d039053edaeaf41142423810572741]

url:    https://github.com/intel-lab-lkp/linux/commits/Keguang-Zhang/MIPS-loongson32-Remove-Loongson1-MAC-arch-code/20230812-231420
base:   21ef7b1e17d039053edaeaf41142423810572741
patch link:    https://lore.kernel.org/r/20230812151135.1028780-5-keguang.zhang%40gmail.com
patch subject: [PATCH 4/5] net: stmmac: Add glue layer for Loongson-1 SoC
config: parisc-allyesconfig (https://download.01.org/0day-ci/archive/20230813/202308131600.I6iscZMl-lkp@xxxxxxxxx/config)
compiler: hppa-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230813/202308131600.I6iscZMl-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202308131600.I6iscZMl-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c: In function 'ls1x_dwmac_probe':
>> drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c:188:21: error: implicit declaration of function 'of_parse_phandle' [-Werror=implicit-function-declaration]
     188 |         syscon_np = of_parse_phandle(pdev->dev.of_node, "syscon", 0);
         |                     ^~~~~~~~~~~~~~~~
   drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c:188:19: warning: assignment to 'struct device_node *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     188 |         syscon_np = of_parse_phandle(pdev->dev.of_node, "syscon", 0);
         |                   ^
>> drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c:192:17: error: implicit declaration of function 'of_match_node'; did you mean 'for_each_node'? [-Werror=implicit-function-declaration]
     192 |         match = of_match_node(ls1x_dwmac_syscon_match, syscon_np);
         |                 ^~~~~~~~~~~~~
         |                 for_each_node
   drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c:192:15: warning: assignment to 'const struct of_device_id *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     192 |         match = of_match_node(ls1x_dwmac_syscon_match, syscon_np);
         |               ^
>> drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c:194:17: error: implicit declaration of function 'of_node_put'; did you mean 'bpf_module_put'? [-Werror=implicit-function-declaration]
     194 |                 of_node_put(syscon_np);
         |                 ^~~~~~~~~~~
         |                 bpf_module_put
   cc1: some warnings being treated as errors


vim +/of_parse_phandle +188 drivers/net/ethernet/stmicro/stmmac/dwmac-loongson1.c

   170	
   171	static int ls1x_dwmac_probe(struct platform_device *pdev)
   172	{
   173		struct plat_stmmacenet_data *plat_dat;
   174		struct stmmac_resources stmmac_res;
   175		struct device_node *syscon_np;
   176		const struct of_device_id *match;
   177		struct regmap *regmap;
   178		struct ls1x_dwmac *dwmac;
   179		const struct ls1x_dwmac_syscon *syscon;
   180		size_t size;
   181		int ret;
   182	
   183		ret = stmmac_get_platform_resources(pdev, &stmmac_res);
   184		if (ret)
   185			return ret;
   186	
   187		/* Probe syscon */
 > 188		syscon_np = of_parse_phandle(pdev->dev.of_node, "syscon", 0);
   189		if (!syscon_np)
   190			return -ENODEV;
   191	
 > 192		match = of_match_node(ls1x_dwmac_syscon_match, syscon_np);
   193		if (!match) {
 > 194			of_node_put(syscon_np);
   195			return -EINVAL;
   196		}
   197		syscon = (const struct ls1x_dwmac_syscon *)match->data;
   198	
   199		regmap = syscon_node_to_regmap(syscon_np);
   200		of_node_put(syscon_np);
   201		if (IS_ERR(regmap)) {
   202			ret = PTR_ERR(regmap);
   203			dev_err(&pdev->dev, "Unable to map syscon: %d\n", ret);
   204			return ret;
   205		}
   206	
   207		size = syscon->nr_reg_fields * sizeof(struct regmap_field *);
   208		dwmac = devm_kzalloc(&pdev->dev, sizeof(*dwmac) + size, GFP_KERNEL);
   209		if (!dwmac)
   210			return -ENOMEM;
   211	
   212		plat_dat = stmmac_probe_config_dt(pdev, stmmac_res.mac);
   213		if (IS_ERR(plat_dat)) {
   214			dev_err(&pdev->dev, "dt configuration failed\n");
   215			return PTR_ERR(plat_dat);
   216		}
   217	
   218		plat_dat->bsp_priv = dwmac;
   219		plat_dat->init = ls1x_dwmac_init;
   220		dwmac->dev = &pdev->dev;
   221		dwmac->plat_dat = plat_dat;
   222		dwmac->syscon = syscon;
   223		dwmac->regmap = regmap;
   224	
   225		ret = stmmac_pltfr_probe(pdev, plat_dat, &stmmac_res);
   226		if (ret)
   227			goto err_remove_config_dt;
   228	
   229		return 0;
   230	
   231	err_remove_config_dt:
   232		if (pdev->dev.of_node)
   233			stmmac_remove_config_dt(pdev, plat_dat);
   234	
   235		return ret;
   236	}
   237	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux