[xlnx:xlnx_rebase_v4.14 315/842] drivers/usb/dwc3/gadget.c:1131:34: error: 'dma' undeclared
kbuild test robot
lkp at intel.com
Mon Apr 9 02:05:39 PDT 2018
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v4.14
head: fe04d2ee0dfea6b5fdbb04f4f6dbcaa13bfd2fda
commit: bc64ac010c4d6375b22c488aad712ccfb072319b [315/842] usb: dwc3: gadget: fix queue remaining sg list trb first
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout bc64ac010c4d6375b22c488aad712ccfb072319b
# save the attached .config to linux build tree
make.cross ARCH=sh
Note: the xlnx/xlnx_rebase_v4.14 HEAD fe04d2ee0dfea6b5fdbb04f4f6dbcaa13bfd2fda builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
drivers/usb/dwc3/gadget.c: In function 'dwc3_prepare_one_trb_sg':
>> drivers/usb/dwc3/gadget.c:1131:34: error: 'dma' undeclared (first use in this function)
dwc3_prepare_one_trb(dep, req, dma, length,
^~~
drivers/usb/dwc3/gadget.c:1131:34: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/usb/dwc3/gadget.c:1131:3: error: too many arguments to function 'dwc3_prepare_one_trb'
dwc3_prepare_one_trb(dep, req, dma, length,
^~~~~~~~~~~~~~~~~~~~
drivers/usb/dwc3/gadget.c:1015:13: note: declared here
static void dwc3_prepare_one_trb(struct dwc3_ep *dep,
^~~~~~~~~~~~~~~~~~~~
vim +/dma +1131 drivers/usb/dwc3/gadget.c
1085
1086 static void dwc3_prepare_one_trb_sg(struct dwc3_ep *dep,
1087 struct dwc3_request *req)
1088 {
1089 struct scatterlist *sg = req->sg_to_start;
1090 struct scatterlist *s;
1091 int i;
1092 unsigned int remaining = req->request.num_mapped_sgs
1093 - req->num_queued_sgs;
1094
1095 for_each_sg(sg, s, remaining, i) {
1096 unsigned int length = req->request.length;
1097 unsigned int maxp = usb_endpoint_maxp(dep->endpoint.desc);
1098 unsigned int rem = length % maxp;
1099 unsigned chain = true;
1100
1101 if (sg_is_last(s))
1102 chain = false;
1103
1104 if (rem && usb_endpoint_dir_out(dep->endpoint.desc) && !chain) {
1105 struct dwc3 *dwc = dep->dwc;
1106 struct dwc3_trb *trb;
1107
1108 req->unaligned = true;
1109
1110 /* prepare normal TRB */
1111 dwc3_prepare_one_trb(dep, req, true, i);
1112
1113 /* Now prepare one extra TRB to align transfer size */
1114 trb = &dep->trb_pool[dep->trb_enqueue];
1115 __dwc3_prepare_one_trb(dep, trb, dwc->bounce_addr,
1116 maxp - rem, false, 0,
1117 req->request.stream_id,
1118 req->request.short_not_ok,
1119 req->request.no_interrupt);
1120 } else {
1121 dwc3_prepare_one_trb(dep, req, chain, i);
1122 }
1123
1124 /* In the case where not able to queue trbs for all sgs in
1125 * request because of trb not available, update sg_to_start
1126 * to next sg from which we can start queing trbs once trbs
1127 * availbale
1128 */
1129 req->sg_to_start = sg_next(s);
1130 req->num_queued_sgs++;
> 1131 dwc3_prepare_one_trb(dep, req, dma, length,
1132 chain, i);
1133
1134 if (!dwc3_calc_trbs_left(dep))
1135 break;
1136 }
1137 }
1138
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 46760 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20180409/ff27fd0a/attachment-0001.gz>
More information about the linux-arm-kernel
mailing list