From: kernel test robot <lkp@intel.com>
To: Frank Wunderlich <frank-w@public-files.de>
Cc: oe-kbuild-all@lists.linux.dev
Subject: [frank-w-bpi-r2-4.14:6.9-netnext 3/4] drivers/net/ethernet/mediatek/mtk_eth_soc.c:1150:57: error: 'const struct <anonymous>' has no member named 'txd_size'; did you mean 'tx_dma_size'?
Date: Sat, 11 May 2024 01:41:03 +0800 [thread overview]
Message-ID: <202405110144.Ca6tMbps-lkp@intel.com> (raw)
tree: https://github.com/frank-w/BPI-R2-4.14 6.9-netnext
head: 1e4e8b309fb8046b0b6fe43a01c296c606833938
commit: aa62e0d7ebff3929eb1b1d8fb415ff217d2eda85 [3/4] net: mediatek: make MTK_DMA_SIZE soc specific
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20240511/202405110144.Ca6tMbps-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240511/202405110144.Ca6tMbps-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/202405110144.Ca6tMbps-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/net/ethernet/mediatek/mtk_eth_soc.c: In function 'mtk_init_fq_dma':
>> drivers/net/ethernet/mediatek/mtk_eth_soc.c:1150:57: error: 'const struct <anonymous>' has no member named 'txd_size'; did you mean 'tx_dma_size'?
1150 | phy_ring_tail = eth->phy_scratch_ring + soc->tx.txd_size * (cnt - 1);
| ^~~~~~~~
| tx_dma_size
drivers/net/ethernet/mediatek/mtk_eth_soc.c:1170:89: error: 'const struct <anonymous>' has no member named 'txd_size'; did you mean 'tx_dma_size'?
1170 | txd = eth->scratch_ring + (j * MTK_FQ_DMA_LENGTH + i) * soc->tx.txd_size;
| ^~~~~~~~
| tx_dma_size
drivers/net/ethernet/mediatek/mtk_eth_soc.c:1174:87: error: 'const struct <anonymous>' has no member named 'txd_size'; did you mean 'tx_dma_size'?
1174 | (j * MTK_FQ_DMA_LENGTH + i + 1) * soc->tx.txd_size;
| ^~~~~~~~
| tx_dma_size
drivers/net/ethernet/mediatek/mtk_eth_soc.c: At top level:
>> drivers/net/ethernet/mediatek/mtk_eth_soc.c:5071:18: error: 'struct <anonymous>' has no member named 'dma_size'; did you mean 'desc_size'?
5071 | .dma_size = MTK_DMA_SIZE(2K),
| ^~~~~~~~
| desc_size
drivers/net/ethernet/mediatek/mtk_eth_soc.c:5078:18: error: 'struct <anonymous>' has no member named 'dma_size'; did you mean 'desc_size'?
5078 | .dma_size = MTK_DMA_SIZE(2K),
| ^~~~~~~~
| desc_size
In file included from drivers/net/ethernet/mediatek/mtk_eth_soc.c:31:
drivers/net/ethernet/mediatek/mtk_eth_soc.h:32:33: warning: initialized field overwritten [-Woverride-init]
32 | #define MTK_TX_DMA_BUF_LEN 0x3fff
| ^~~~~~
drivers/net/ethernet/mediatek/mtk_eth_soc.c:5079:32: note: in expansion of macro 'MTK_TX_DMA_BUF_LEN'
5079 | .dma_max_len = MTK_TX_DMA_BUF_LEN,
| ^~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mediatek/mtk_eth_soc.h:32:33: note: (near initialization for 'mt2701_data.rx.dma_max_len')
32 | #define MTK_TX_DMA_BUF_LEN 0x3fff
| ^~~~~~
drivers/net/ethernet/mediatek/mtk_eth_soc.c:5079:32: note: in expansion of macro 'MTK_TX_DMA_BUF_LEN'
5079 | .dma_max_len = MTK_TX_DMA_BUF_LEN,
| ^~~~~~~~~~~~~~~~~~
vim +1150 drivers/net/ethernet/mediatek/mtk_eth_soc.c
1128
1129 /* the qdma core needs scratch memory to be setup */
1130 static int mtk_init_fq_dma(struct mtk_eth *eth)
1131 {
1132 const struct mtk_soc_data *soc = eth->soc;
1133 dma_addr_t phy_ring_tail;
1134 int cnt = soc->tx.fq_dma_size;
1135 dma_addr_t dma_addr;
1136 u64 addr64 = 0;
1137 int i, j, len;
1138
1139 if (MTK_HAS_CAPS(eth->soc->caps, MTK_SRAM))
1140 eth->scratch_ring = eth->sram_base;
1141 else
1142 eth->scratch_ring = dma_alloc_coherent(eth->dma_dev,
1143 cnt * soc->tx.desc_size,
1144 ð->phy_scratch_ring,
1145 GFP_KERNEL);
1146
1147 if (unlikely(!eth->scratch_ring))
1148 return -ENOMEM;
1149
> 1150 phy_ring_tail = eth->phy_scratch_ring + soc->tx.txd_size * (cnt - 1);
1151
1152 for (j = 0; j < DIV_ROUND_UP(soc->tx.fq_dma_size, MTK_FQ_DMA_LENGTH); j++) {
1153 len = min_t(int, cnt - j * MTK_FQ_DMA_LENGTH, MTK_FQ_DMA_LENGTH);
1154 eth->scratch_head[j] = kcalloc(len, MTK_QDMA_PAGE_SIZE, GFP_KERNEL);
1155
1156 if (unlikely(!eth->scratch_head[j]))
1157 return -ENOMEM;
1158
1159 dma_addr = dma_map_single(eth->dma_dev,
1160 eth->scratch_head[j], len * MTK_QDMA_PAGE_SIZE,
1161 DMA_FROM_DEVICE);
1162
1163 if (unlikely(dma_mapping_error(eth->dma_dev, dma_addr)))
1164 return -ENOMEM;
1165
1166 for (i = 0; i < cnt; i++) {
1167 //dma_addr_t addr = dma_addr + i * MTK_QDMA_PAGE_SIZE;
1168 struct mtk_tx_dma_v2 *txd;
1169
1170 txd = eth->scratch_ring + (j * MTK_FQ_DMA_LENGTH + i) * soc->tx.txd_size;
1171 txd->txd1 = dma_addr + i * MTK_QDMA_PAGE_SIZE;
1172 if (j * MTK_FQ_DMA_LENGTH + i < cnt)
1173 txd->txd2 = eth->phy_scratch_ring +
1174 (j * MTK_FQ_DMA_LENGTH + i + 1) * soc->tx.txd_size;
1175
1176 addr64 = (MTK_HAS_CAPS(eth->soc->caps, MTK_8GB_ADDRESSING)) ?
1177 TX_DMA_SDP1(dma_addr + i * MTK_QDMA_PAGE_SIZE) : 0;
1178
1179 txd->txd3 = TX_DMA_PLEN0(MTK_QDMA_PAGE_SIZE) | addr64;
1180
1181 if (MTK_HAS_CAPS(soc->caps, MTK_36BIT_DMA))
1182 txd->txd3 |= TX_DMA_PREP_ADDR64(addr64);
1183
1184 txd->txd4 = 0;
1185 if (mtk_is_netsys_v2_or_greater(eth)) {
1186 txd->txd5 = 0;
1187 txd->txd6 = 0;
1188 txd->txd7 = 0;
1189 txd->txd8 = 0;
1190 }
1191 }
1192 }
1193
1194 mtk_w32(eth, eth->phy_scratch_ring, soc->reg_map->qdma.fq_head);
1195 mtk_w32(eth, phy_ring_tail, soc->reg_map->qdma.fq_tail);
1196 mtk_w32(eth, (cnt << 16) | cnt, soc->reg_map->qdma.fq_count);
1197 mtk_w32(eth, MTK_QDMA_PAGE_SIZE << 16, soc->reg_map->qdma.fq_blen);
1198
1199 return 0;
1200 }
1201
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2024-05-10 17:41 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202405110144.Ca6tMbps-lkp@intel.com \
--to=lkp@intel.com \
--cc=frank-w@public-files.de \
--cc=oe-kbuild-all@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.