All of lore.kernel.org
 help / color / mirror / Atom feed
* [openeuler:OLK-5.10 18628/30000] drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2340: multiple definition of `fmgr_cmd_op'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2854: first defined here
@ 2024-03-31  7:56 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-03-31  7:56 UTC (permalink / raw)
  To: kernel, Duanqiang Wen; +Cc: oe-kbuild-all

tree:   https://gitee.com/openeuler/kernel.git OLK-5.10
head:   737efe73dd2ca6ee503ba26e6fc3ee41bd8cf633
commit: 3ddd74dceeba1f4ea8b20db59276ea3c6eded3d5 [18628/30000] openeuler: net: txgbe: Fix some known bugs, merge net-swift txgbe-1.2.3 out-of-tree
config: x86_64-randconfig-005-20240330 (https://download.01.org/0day-ci/archive/20240331/202403311504.0RPY0tDC-lkp@intel.com/config)
compiler: gcc-12 (Ubuntu 12.3.0-9ubuntu2) 12.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240331/202403311504.0RPY0tDC-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202403311504.0RPY0tDC-lkp@intel.com/

All errors (new ones prefixed by >>):

   ld: drivers/net/ethernet/netswift/ngbe/ngbe_hw.o: in function `fmgr_cmd_op':
>> drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2340: multiple definition of `fmgr_cmd_op'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2854: first defined here
   ld: drivers/net/ethernet/netswift/ngbe/ngbe_hw.o: in function `fmgr_usr_cmd_op':
>> drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2361: multiple definition of `fmgr_usr_cmd_op'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2875: first defined here
   ld: drivers/net/ethernet/netswift/ngbe/ngbe_hw.o: in function `flash_erase_chip':
>> drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2371: multiple definition of `flash_erase_chip'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2885: first defined here
   ld: drivers/net/ethernet/netswift/ngbe/ngbe_hw.o: in function `flash_erase_sector':
>> drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2377: multiple definition of `flash_erase_sector'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2891: first defined here
   ld: drivers/net/ethernet/netswift/ngbe/ngbe_hw.o: in function `flash_write_dword':
>> drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2393: multiple definition of `flash_write_dword'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2908: first defined here


vim +2340 drivers/net/ethernet/netswift/ngbe/ngbe_hw.c

a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2333  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2334  /**
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2335   * cmd_addr is used for some special command:
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2336   * 1. to be sector address, when implemented erase sector command
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2337   * 2. to be flash address when implemented read, write flash address
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2338   **/
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2339  u8 fmgr_cmd_op(struct ngbe_hw *hw, u32 cmd, u32 cmd_addr)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01 @2340  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2341  	u32 cmd_val = 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2342  	u32 time_out = 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2343  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2344  	cmd_val = (cmd << SPI_CLK_CMD_OFFSET) | (SPI_CLK_DIV << SPI_CLK_DIV_OFFSET) | cmd_addr;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2345  	wr32(hw, SPI_H_CMD_REG_ADDR, cmd_val);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2346  	while (1) {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2347  		if (rd32(hw, SPI_H_STA_REG_ADDR) & 0x1)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2348  			break;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2349  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2350  		if (time_out == SPI_TIME_OUT_VALUE)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2351  			return 1;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2352  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2353  		time_out = time_out + 1;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2354  		udelay(10);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2355  	}
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2356  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2357  	return 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2358  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2359  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2360  u8 fmgr_usr_cmd_op(struct ngbe_hw *hw, u32 usr_cmd)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01 @2361  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2362  	u8 status = 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2363  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2364  	wr32(hw, SPI_H_USR_CMD_REG_ADDR, usr_cmd);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2365  	status = fmgr_cmd_op(hw, SPI_CMD_USER_CMD, 0);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2366  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2367  	return status;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2368  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2369  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2370  u8 flash_erase_chip(struct ngbe_hw *hw)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01 @2371  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2372  	u8 status = fmgr_cmd_op(hw, SPI_CMD_ERASE_CHIP, 0);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2373  	return status;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2374  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2375  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2376  u8 flash_erase_sector(struct ngbe_hw *hw, u32 sec_addr)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01 @2377  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2378  	u8 status = fmgr_cmd_op(hw, SPI_CMD_ERASE_SECTOR, sec_addr);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2379  	return status;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2380  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2381  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2382  u32 ngbe_flash_read_dword(struct ngbe_hw *hw, u32 addr)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2383  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2384  	u8 status = fmgr_cmd_op(hw, SPI_CMD_READ_DWORD, addr);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2385  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2386  	if (status)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2387  		return (u32)status;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2388  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2389  	return rd32(hw, SPI_H_DAT_REG_ADDR);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2390  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2391  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2392  u8 flash_write_dword(struct ngbe_hw *hw, u32 addr, u32 dword)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01 @2393  {
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2394  	u8 status = 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2395  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2396  	wr32(hw, SPI_H_DAT_REG_ADDR, dword);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2397  	status = fmgr_cmd_op(hw, SPI_CMD_WRITE_DWORD, addr);
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2398  	if (status)
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2399  		return status;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2400  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2401  	if (dword != ngbe_flash_read_dword(hw, addr))
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2402  		return 1;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2403  
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2404  	return 0;
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2405  }
a5961b4bc6ce09 Duanqiang Wen 2022-12-01  2406  

:::::: The code at line 2340 was first introduced by commit
:::::: a5961b4bc6ce09a70902686ecc848a47493a9251 openeuler: net: ngbe: add ngbe module support

:::::: TO: Duanqiang Wen <duanqiangwen@net-swift.com>
:::::: CC: Duanqiang Wen <duanqiangwen@net-swift.com>

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-03-31  7:57 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-31  7:56 [openeuler:OLK-5.10 18628/30000] drivers/net/ethernet/netswift/ngbe/ngbe_hw.c:2340: multiple definition of `fmgr_cmd_op'; drivers/net/ethernet/netswift/txgbe/txgbe_hw.o:drivers/net/ethernet/netswift/txgbe/txgbe_hw.c:2854: first defined here kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.