Hi Felix,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on wireless-drivers-next/master]
[also build test WARNING on mac80211-next/master linus/master v5.14-rc1 next-20210713]
[cannot apply to wireless-drivers/master mac80211/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url:
https://github.com/0day-ci/linux/commits/Felix-Fietkau/Ethernet-WLAN-hard...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-ne...
master
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://github.com/0day-ci/linux/commit/16ac1606c5b18e61fb25775d621cd218f...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Felix-Fietkau/Ethernet-WLAN-hardware-flow-offloading-support-on-MT7622/20210714-001409
git checkout 16ac1606c5b18e61fb25775d621cd218f17bb913
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=xtensa
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_sync_idx':
drivers/net/wireless/mediatek/mt76/dma.c:24:6: warning: unused variable
'_offset' [-Wunused-variable]
24 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:111:2: note: in expansion of macro
'Q_WRITE'
111 | Q_WRITE(dev, q, desc_base, q->desc_dma);
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:24:6: warning: unused variable
'_offset' [-Wunused-variable]
24 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:112:2: note: in expansion of macro
'Q_WRITE'
112 | Q_WRITE(dev, q, ring_size, q->ndesc);
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:11:6: warning: unused variable
'_offset' [-Wunused-variable]
11 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:113:12: note: in expansion of macro
'Q_READ'
113 | q->head = Q_READ(dev, q, dma_idx);
| ^~~~~~
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_queue_reset':
drivers/net/wireless/mediatek/mt76/dma.c:24:6: warning: unused variable
'_offset' [-Wunused-variable]
24 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:129:2: note: in expansion of macro
'Q_WRITE'
129 | Q_WRITE(dev, q, cpu_idx, 0);
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:24:6: warning: unused variable
'_offset' [-Wunused-variable]
24 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:130:2: note: in expansion of macro
'Q_WRITE'
130 | Q_WRITE(dev, q, dma_idx, 0);
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_wed_setup':
drivers/net/wireless/mediatek/mt76/dma.c:154:21: error: 'struct mtk_wed_device'
has no member named 'tx_ring'
154 | q->wed_regs = wed->tx_ring[ring].reg_base;
| ^~
drivers/net/wireless/mediatek/mt76/dma.c:163:54: error: macro
"mtk_wed_device_txfree_ring_setup" requires 3 arguments, but only 2 given
163 | ret = mtk_wed_device_txfree_ring_setup(wed, q->regs);
| ^
In file included from drivers/net/wireless/mediatek/mt76/mt76.h:16,
from drivers/net/wireless/mediatek/mt76/dma.c:7:
include/linux/soc/mediatek/mtk_wed.h:120: note: macro
"mtk_wed_device_txfree_ring_setup" defined here
120 | #define mtk_wed_device_txfree_ring_setup(_dev, _ring, _regs) -ENODEV
|
drivers/net/wireless/mediatek/mt76/dma.c:163:9: error:
'mtk_wed_device_txfree_ring_setup' undeclared (first use in this function)
163 | ret = mtk_wed_device_txfree_ring_setup(wed, q->regs);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:163:9: note: each undeclared identifier is
reported only once for each function it appears in
drivers/net/wireless/mediatek/mt76/dma.c:165:21: error: 'struct mtk_wed_device'
has no member named 'txfree_ring'
165 | q->wed_regs = wed->txfree_ring.reg_base;
| ^~
> drivers/net/wireless/mediatek/mt76/dma.c:138:17: warning:
variable 'ring' set but not used [-Wunused-but-set-variable]
138 | int
ret, type, ring;
| ^~~~
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_kick_queue':
drivers/net/wireless/mediatek/mt76/dma.c:24:6: warning: unused variable
'_offset' [-Wunused-variable]
24 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:298:2: note: in expansion of macro
'Q_WRITE'
298 | Q_WRITE(dev, q, cpu_idx, q->head);
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_tx_cleanup':
drivers/net/wireless/mediatek/mt76/dma.c:11:6: warning: unused variable
'_offset' [-Wunused-variable]
11 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:314:10: note: in expansion of macro
'Q_READ'
314 | last = Q_READ(dev, q, dma_idx);
| ^~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:11:6: warning: unused variable
'_offset' [-Wunused-variable]
11 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:326:11: note: in expansion of macro
'Q_READ'
326 | last = Q_READ(dev, q, dma_idx);
| ^~~~~~
drivers/net/wireless/mediatek/mt76/dma.c: In function 'mt76_dma_rx_process':
drivers/net/wireless/mediatek/mt76/dma.c:11:6: warning: unused variable
'_offset' [-Wunused-variable]
11 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:634:13: note: in expansion of macro
'Q_READ'
634 | dma_idx = Q_READ(dev, q, dma_idx);
| ^~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:11:6: warning: unused variable
'_offset' [-Wunused-variable]
11 | u32 _offset = offsetof(struct mt76_queue_regs, _field); \
| ^~~~~~~
drivers/net/wireless/mediatek/mt76/dma.c:643:15: note: in expansion of macro
'Q_READ'
643 | dma_idx = Q_READ(dev, q, dma_idx);
| ^~~~~~
vim +/ring +138 drivers/net/wireless/mediatek/mt76/dma.c
133
134 static int
135 mt76_dma_wed_setup(struct mt76_dev *dev, struct mt76_queue *q)
136 {
137 struct mtk_wed_device *wed = &dev->mmio.wed;
138 int ret, type, ring;
139 u8 flags = q->flags;
140
141 if (!mtk_wed_device_active(wed))
142 q->flags &= ~MT_QFLAG_WED;
143
144 if (!(q->flags & MT_QFLAG_WED))
145 return 0;
146
147 type = FIELD_GET(MT_QFLAG_WED_TYPE, q->flags);
148 ring = FIELD_GET(MT_QFLAG_WED_RING, q->flags);
149
150 switch (type) {
151 case MT76_WED_Q_TX:
152 ret = mtk_wed_device_tx_ring_setup(wed, ring, q->regs);
153 if (!ret)
154 q->wed_regs = wed->tx_ring[ring].reg_base;
155 break;
156 case MT76_WED_Q_TXFREE:
157 /* WED txfree queue needs ring to be initialized before setup */
158 q->flags = 0;
159 mt76_dma_queue_reset(dev, q);
160 mt76_dma_rx_fill(dev, q);
161 q->flags = flags;
162
163 ret = mtk_wed_device_txfree_ring_setup(wed, q->regs);
164 if (!ret)
165 q->wed_regs = wed->txfree_ring.reg_base;
166 break;
167 default:
168 ret = -EINVAL;
169 }
170
171 return ret;
172 }
173
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org