[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202508150853.IfS01nJn-lkp@intel.com>
Date: Fri, 15 Aug 2025 08:55:50 +0800
From: kernel test robot <lkp@...el.com>
To: Rosen Penev <rosenp@...il.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
Johannes Berg <johannes.berg@...el.com>,
Sergio Paracuellos <sergio.paracuellos@...il.com>
Subject: drivers/net/wireless/ralink/rt2x00/rt2800soc.c:247:undefined
reference to `rt2x00lib_resume'
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 24ea63ea387714634813359e2c8e0e6c36952f73
commit: 7f6109086c9e7bbc78ff936dac45626870455c76 wifi: rt2800: move 2x00soc to 2800soc
date: 3 weeks ago
config: sparc64-randconfig-r121-20250814 (https://download.01.org/0day-ci/archive/20250815/202508150853.IfS01nJn-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 13.4.0
reproduce: (https://download.01.org/0day-ci/archive/20250815/202508150853.IfS01nJn-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508150853.IfS01nJn-lkp@intel.com/
All errors (new ones prefixed by >>):
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2x00mmio.o: in function `rt2x00mmio_rxdone':
>> drivers/net/wireless/ralink/rt2x00/rt2x00mmio.c:58:(.text+0x1ac): undefined reference to `rt2x00queue_get_entry'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2x00mmio.c:75:(.text+0x220): undefined reference to `rt2x00lib_dmastart'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2x00mmio.c:76:(.text+0x228): undefined reference to `rt2x00lib_dmadone'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2x00mmio.c:81:(.text+0x234): undefined reference to `rt2x00lib_rxdone'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_txstatus_pending':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1203:(.text+0x5dac): undefined reference to `rt2x00queue_get_entry'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1203:(.text+0x5dbc): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_sta_add':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1914:(.text+0x6dc0): undefined reference to `rt2x00lib_get_bssidx'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_conf_tx':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:12159:(.text+0xbaf8): undefined reference to `rt2x00mac_conf_tx'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_txstatus_timeout':
drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1185:(.text+0xc00c): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_txdone_nostatus':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1233:(.text+0xc0f0): undefined reference to `rt2x00lib_txdone_noinfo'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1225:(.text+0xc108): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_txdone_entry':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1112:(.text+0xe64c): undefined reference to `rt2x00lib_txdone_nomatch'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1115:(.text+0xe72c): undefined reference to `rt2x00lib_txdone'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_txdone':
drivers/net/wireless/ralink/rt2x00/rt2800lib.c:1142:(.text+0xe890): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800lib.o: in function `rt2800_validate_eeprom':
>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c:11014:(.text+0x189b4): undefined reference to `rt2x00lib_set_mac_address'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800mmio.o: in function `rt2800mmio_get_dma_done':
>> drivers/net/wireless/ralink/rt2x00/rt2800mmio.c:45:(.text+0x654): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800mmio.o: in function `rt2800mmio_pretbtt_tasklet':
>> drivers/net/wireless/ralink/rt2x00/rt2800mmio.c:217:(.text+0x83c): undefined reference to `rt2x00lib_pretbtt'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800mmio.o: in function `rt2800mmio_tbtt_tasklet':
>> drivers/net/wireless/ralink/rt2x00/rt2800mmio.c:229:(.text+0x8c8): undefined reference to `rt2x00lib_beacondone'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800mmio.o: in function `rt2800mmio_kick_queue':
drivers/net/wireless/ralink/rt2x00/rt2800mmio.c:466:(.text+0x1b7c): undefined reference to `rt2x00queue_get_entry'
>> sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800mmio.c:473:(.text+0x1be0): undefined reference to `rt2x00queue_get_entry'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o: in function `rt2x00soc_resume':
>> drivers/net/wireless/ralink/rt2x00/rt2800soc.c:247:(.text+0x98): undefined reference to `rt2x00lib_resume'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o: in function `rt2x00soc_suspend':
>> drivers/net/wireless/ralink/rt2x00/rt2800soc.c:239:(.text+0xc4): undefined reference to `rt2x00lib_suspend'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o: in function `rt2x00soc_remove':
>> drivers/net/wireless/ralink/rt2x00/rt2800soc.c:228:(.text+0x128): undefined reference to `rt2x00lib_remove_dev'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o: in function `rt2x00soc_probe':
>> drivers/net/wireless/ralink/rt2x00/rt2800soc.c:205:(.text+0x758): undefined reference to `rt2x00lib_probe_dev'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:drivers/net/wireless/ralink/rt2x00/rt2800soc.c:251:(.rodata+0x480): undefined reference to `rt2x00mac_tx'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x488): undefined reference to `rt2x00mac_start'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x490): undefined reference to `rt2x00mac_stop'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x4b0): undefined reference to `rt2x00mac_add_interface'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x4c0): undefined reference to `rt2x00mac_remove_interface'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x4c8): undefined reference to `rt2x00mac_config'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x4d0): undefined reference to `rt2x00mac_bss_info_changed'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x500): undefined reference to `rt2x00mac_configure_filter'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x518): undefined reference to `rt2x00mac_set_key'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x558): undefined reference to `rt2x00mac_sw_scan_start'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x560): undefined reference to `rt2x00mac_sw_scan_complete'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x568): undefined reference to `rt2x00mac_get_stats'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x618): undefined reference to `rt2x00mac_rfkill_poll'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x628): undefined reference to `rt2x00mac_flush'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x668): undefined reference to `rt2x00mac_get_ringparam'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x670): undefined reference to `rt2x00mac_tx_frames_pending'
sparc64-linux-ld: drivers/net/wireless/ralink/rt2x00/rt2800soc.o:(.rodata+0x6f8): undefined reference to `rt2x00mac_reconfig_complete'
vim +247 drivers/net/wireless/ralink/rt2x00/rt2800soc.c
173
174 static int rt2x00soc_probe(struct platform_device *pdev, const struct rt2x00_ops *ops)
175 {
176 struct ieee80211_hw *hw;
177 struct rt2x00_dev *rt2x00dev;
178 int retval;
179
180 hw = ieee80211_alloc_hw(sizeof(struct rt2x00_dev), ops->hw);
181 if (!hw) {
182 rt2x00_probe_err("Failed to allocate hardware\n");
183 return -ENOMEM;
184 }
185
186 platform_set_drvdata(pdev, hw);
187
188 rt2x00dev = hw->priv;
189 rt2x00dev->dev = &pdev->dev;
190 rt2x00dev->ops = ops;
191 rt2x00dev->hw = hw;
192 rt2x00dev->irq = platform_get_irq(pdev, 0);
193 rt2x00dev->name = pdev->dev.driver->name;
194
195 rt2x00dev->clk = clk_get(&pdev->dev, NULL);
196 if (IS_ERR(rt2x00dev->clk))
197 rt2x00dev->clk = NULL;
198
199 rt2x00_set_chip_intf(rt2x00dev, RT2X00_CHIP_INTF_SOC);
200
201 retval = rt2x00soc_alloc_reg(rt2x00dev);
202 if (retval)
203 goto exit_free_device;
204
> 205 retval = rt2x00lib_probe_dev(rt2x00dev);
206 if (retval)
207 goto exit_free_reg;
208
209 return 0;
210
211 exit_free_reg:
212 rt2x00soc_free_reg(rt2x00dev);
213
214 exit_free_device:
215 ieee80211_free_hw(hw);
216
217 return retval;
218 }
219
220 static void rt2x00soc_remove(struct platform_device *pdev)
221 {
222 struct ieee80211_hw *hw = platform_get_drvdata(pdev);
223 struct rt2x00_dev *rt2x00dev = hw->priv;
224
225 /*
226 * Free all allocated data.
227 */
> 228 rt2x00lib_remove_dev(rt2x00dev);
229 rt2x00soc_free_reg(rt2x00dev);
230 ieee80211_free_hw(hw);
231 }
232
233 #ifdef CONFIG_PM
234 static int rt2x00soc_suspend(struct platform_device *pdev, pm_message_t state)
235 {
236 struct ieee80211_hw *hw = platform_get_drvdata(pdev);
237 struct rt2x00_dev *rt2x00dev = hw->priv;
238
> 239 return rt2x00lib_suspend(rt2x00dev);
240 }
241
242 static int rt2x00soc_resume(struct platform_device *pdev)
243 {
244 struct ieee80211_hw *hw = platform_get_drvdata(pdev);
245 struct rt2x00_dev *rt2x00dev = hw->priv;
246
> 247 return rt2x00lib_resume(rt2x00dev);
248 }
249 #endif /* CONFIG_PM */
250
> 251 static const struct ieee80211_ops rt2800soc_mac80211_ops = {
252 .add_chanctx = ieee80211_emulate_add_chanctx,
253 .remove_chanctx = ieee80211_emulate_remove_chanctx,
254 .change_chanctx = ieee80211_emulate_change_chanctx,
255 .switch_vif_chanctx = ieee80211_emulate_switch_vif_chanctx,
256 .tx = rt2x00mac_tx,
257 .wake_tx_queue = ieee80211_handle_wake_tx_queue,
258 .start = rt2x00mac_start,
259 .stop = rt2x00mac_stop,
260 .add_interface = rt2x00mac_add_interface,
261 .remove_interface = rt2x00mac_remove_interface,
262 .config = rt2x00mac_config,
263 .configure_filter = rt2x00mac_configure_filter,
264 .set_key = rt2x00mac_set_key,
265 .sw_scan_start = rt2x00mac_sw_scan_start,
266 .sw_scan_complete = rt2x00mac_sw_scan_complete,
267 .get_stats = rt2x00mac_get_stats,
268 .get_key_seq = rt2800_get_key_seq,
269 .set_rts_threshold = rt2800_set_rts_threshold,
270 .sta_add = rt2800_sta_add,
271 .sta_remove = rt2800_sta_remove,
272 .bss_info_changed = rt2x00mac_bss_info_changed,
273 .conf_tx = rt2800_conf_tx,
274 .get_tsf = rt2800_get_tsf,
275 .rfkill_poll = rt2x00mac_rfkill_poll,
276 .ampdu_action = rt2800_ampdu_action,
277 .flush = rt2x00mac_flush,
278 .get_survey = rt2800_get_survey,
279 .get_ringparam = rt2x00mac_get_ringparam,
280 .tx_frames_pending = rt2x00mac_tx_frames_pending,
281 .reconfig_complete = rt2x00mac_reconfig_complete,
282 };
283
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists