Hi Felipe, I love your patch! Perhaps something to improve: [auto build test WARNING on balbi-usb/next] [also build test WARNING on next-20180409] [cannot apply to v4.16] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Felipe-Balbi/usb-dwc3-gadget-Rework-Refactoring/20180409-204052 base: https://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git next reproduce: make htmldocs All warnings (new ones prefixed by >>): include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > include/net/mac80211.h:2083: warning: bad line: > net/mac80211/sta_info.h:586: warning: Function parameter or member 'rx_stats_avg' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'rx_stats_avg.signal' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'rx_stats_avg.chain_signal' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.filtered' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.retry_failed' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.retry_count' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.lost_packets' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.last_tdls_pkt_time' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.msdu_retries' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.msdu_failed' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.last_ack' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.last_ack_signal' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'status_stats.ack_signal_filled' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'tx_stats.packets' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'tx_stats.bytes' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'tx_stats.last_rate' not described in 'sta_info' net/mac80211/sta_info.h:586: warning: Function parameter or member 'tx_stats.msdu' not described in 'sta_info' kernel/sched/fair.c:3731: warning: Function parameter or member 'flags' not described in 'attach_entity_load_avg' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.cb' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.poll' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_excl.active' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_shared.cb' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_shared.poll' not described in 'dma_buf' include/linux/dma-buf.h:307: warning: Function parameter or member 'cb_shared.active' not described in 'dma_buf' include/linux/dma-fence-array.h:54: warning: Function parameter or member 'work' not described in 'dma_fence_array' Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -function request_firmware drivers/base/firmware_class.c' failed with return code 1 Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -function request_firmware_direct drivers/base/firmware_class.c' failed with return code 1 Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -function request_firmware_into_buf drivers/base/firmware_class.c' failed with return code 1 Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -function request_firmware_nowait drivers/base/firmware_class.c' failed with return code 1 Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -function firmware_request_cache drivers/base/firmware_class.c' failed with return code 1 include/linux/gpio/driver.h:142: warning: Function parameter or member 'request_key' not described in 'gpio_irq_chip' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.sign' not described in 'iio_chan_spec' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.realbits' not described in 'iio_chan_spec' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.storagebits' not described in 'iio_chan_spec' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.shift' not described in 'iio_chan_spec' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.repeat' not described in 'iio_chan_spec' include/linux/iio/iio.h:270: warning: Function parameter or member 'scan_type.endianness' not described in 'iio_chan_spec' include/linux/iio/hw-consumer.h:1: warning: no structured comments found Error: Cannot open file drivers/base/firmware_class.c Error: Cannot open file drivers/base/firmware_class.c WARNING: kernel-doc 'scripts/kernel-doc -rst -enable-lineno -export drivers/base/firmware_class.c' failed with return code 2 include/linux/input/sparse-keymap.h:46: warning: Function parameter or member 'sw' not described in 'key_entry' include/linux/mtd/rawnand.h:752: warning: Function parameter or member 'timings.sdr' not described in 'nand_data_interface' include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf' not described in 'nand_op_data_instr' include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf.in' not described in 'nand_op_data_instr' include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf.out' not described in 'nand_op_data_instr' include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx' not described in 'nand_op_instr' include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.cmd' not described in 'nand_op_instr' include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.addr' not described in 'nand_op_instr' include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.data' not described in 'nand_op_instr' include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.waitrdy' not described in 'nand_op_instr' include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx' not described in 'nand_op_parser_pattern_elem' include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx.addr' not described in 'nand_op_parser_pattern_elem' include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx.data' not described in 'nand_op_parser_pattern_elem' include/linux/mtd/rawnand.h:1313: warning: Function parameter or member 'manufacturer.desc' not described in 'nand_chip' include/linux/mtd/rawnand.h:1313: warning: Function parameter or member 'manufacturer.priv' not described in 'nand_chip' include/linux/regulator/driver.h:222: warning: Function parameter or member 'resume_early' not described in 'regulator_ops' drivers/regulator/core.c:4306: warning: Excess function parameter 'state' description in 'regulator_suspend_late' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw0' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw1' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw2' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.esw3' not described in 'irb' arch/s390/include/asm/cio.h:245: warning: Function parameter or member 'esw.eadm' not described in 'irb' >> drivers/usb/dwc3/gadget.c:611: warning: Function parameter or member 'action' not described in '__dwc3_gadget_ep_enable' drivers/usb/dwc3/gadget.c:611: warning: Excess function parameter 'modify' description in '__dwc3_gadget_ep_enable' drivers/usb/dwc3/gadget.c:611: warning: Excess function parameter 'restore' description in '__dwc3_gadget_ep_enable' drivers/usb/typec/mux.c:186: warning: Function parameter or member 'mux' not described in 'typec_mux_unregister' drivers/usb/typec/mux.c:186: warning: Excess function parameter 'sw' description in 'typec_mux_unregister' vim +611 drivers/usb/dwc3/gadget.c 72246da40 Felipe Balbi 2011-08-19 599 72246da40 Felipe Balbi 2011-08-19 600 /** bfad65ee9 Felipe Balbi 2017-04-19 601 * __dwc3_gadget_ep_enable - initializes a hw endpoint 72246da40 Felipe Balbi 2011-08-19 602 * @dep: endpoint to be initialized bfad65ee9 Felipe Balbi 2017-04-19 603 * @modify: if true, modify existing endpoint configuration bfad65ee9 Felipe Balbi 2017-04-19 604 * @restore: if true, restore endpoint configuration from scratch buffer 72246da40 Felipe Balbi 2011-08-19 605 * bfad65ee9 Felipe Balbi 2017-04-19 606 * Caller should take care of locking. Execute all necessary commands to bfad65ee9 Felipe Balbi 2017-04-19 607 * initialize a HW endpoint so it can be used by a gadget driver. 72246da40 Felipe Balbi 2011-08-19 608 */ b00b04015 Felipe Balbi 2018-04-09 609 static int __dwc3_gadget_ep_enable(struct dwc3_ep *dep, unsigned int action) 72246da40 Felipe Balbi 2011-08-19 610 { 39ebb05ca John Youn 2016-11-09 @611 const struct usb_endpoint_descriptor *desc = dep->endpoint.desc; 72246da40 Felipe Balbi 2011-08-19 612 struct dwc3 *dwc = dep->dwc; 39ebb05ca John Youn 2016-11-09 613 72246da40 Felipe Balbi 2011-08-19 614 u32 reg; b09e99ee7 Andy Shevchenko 2014-05-15 615 int ret; 72246da40 Felipe Balbi 2011-08-19 616 72246da40 Felipe Balbi 2011-08-19 617 if (!(dep->flags & DWC3_EP_ENABLED)) { 72246da40 Felipe Balbi 2011-08-19 618 ret = dwc3_gadget_start_config(dwc, dep); 72246da40 Felipe Balbi 2011-08-19 619 if (ret) 72246da40 Felipe Balbi 2011-08-19 620 return ret; 72246da40 Felipe Balbi 2011-08-19 621 } 72246da40 Felipe Balbi 2011-08-19 622 b00b04015 Felipe Balbi 2018-04-09 623 ret = dwc3_gadget_set_ep_config(dwc, dep, action); 72246da40 Felipe Balbi 2011-08-19 624 if (ret) 72246da40 Felipe Balbi 2011-08-19 625 return ret; 72246da40 Felipe Balbi 2011-08-19 626 72246da40 Felipe Balbi 2011-08-19 627 if (!(dep->flags & DWC3_EP_ENABLED)) { f6bafc6a1 Felipe Balbi 2012-02-06 628 struct dwc3_trb *trb_st_hw; f6bafc6a1 Felipe Balbi 2012-02-06 629 struct dwc3_trb *trb_link; 72246da40 Felipe Balbi 2011-08-19 630 72246da40 Felipe Balbi 2011-08-19 631 dep->type = usb_endpoint_type(desc); 72246da40 Felipe Balbi 2011-08-19 632 dep->flags |= DWC3_EP_ENABLED; 76a638f8a Baolin Wang 2016-10-31 633 dep->flags &= ~DWC3_EP_END_TRANSFER_PENDING; 72246da40 Felipe Balbi 2011-08-19 634 72246da40 Felipe Balbi 2011-08-19 635 reg = dwc3_readl(dwc->regs, DWC3_DALEPENA); 72246da40 Felipe Balbi 2011-08-19 636 reg |= DWC3_DALEPENA_EP(dep->number); 72246da40 Felipe Balbi 2011-08-19 637 dwc3_writel(dwc->regs, DWC3_DALEPENA, reg); 72246da40 Felipe Balbi 2011-08-19 638 76a638f8a Baolin Wang 2016-10-31 639 init_waitqueue_head(&dep->wait_end_transfer); 76a638f8a Baolin Wang 2016-10-31 640 36b68aae8 Felipe Balbi 2016-04-05 641 if (usb_endpoint_xfer_control(desc)) 2870e5013 Felipe Balbi 2016-11-03 642 goto out; 72246da40 Felipe Balbi 2011-08-19 643 0d25744ad John Youn 2016-05-19 644 /* Initialize the TRB ring */ 0d25744ad John Youn 2016-05-19 645 dep->trb_dequeue = 0; 0d25744ad John Youn 2016-05-19 646 dep->trb_enqueue = 0; 0d25744ad John Youn 2016-05-19 647 memset(dep->trb_pool, 0, 0d25744ad John Youn 2016-05-19 648 sizeof(struct dwc3_trb) * DWC3_TRB_NUM); 0d25744ad John Youn 2016-05-19 649 36b68aae8 Felipe Balbi 2016-04-05 650 /* Link TRB. The HWO bit is never reset */ 72246da40 Felipe Balbi 2011-08-19 651 trb_st_hw = &dep->trb_pool[0]; 72246da40 Felipe Balbi 2011-08-19 652 f6bafc6a1 Felipe Balbi 2012-02-06 653 trb_link = &dep->trb_pool[DWC3_TRB_NUM - 1]; f6bafc6a1 Felipe Balbi 2012-02-06 654 trb_link->bpl = lower_32_bits(dwc3_trb_dma_offset(dep, trb_st_hw)); f6bafc6a1 Felipe Balbi 2012-02-06 655 trb_link->bph = upper_32_bits(dwc3_trb_dma_offset(dep, trb_st_hw)); f6bafc6a1 Felipe Balbi 2012-02-06 656 trb_link->ctrl |= DWC3_TRBCTL_LINK_TRB; f6bafc6a1 Felipe Balbi 2012-02-06 657 trb_link->ctrl |= DWC3_TRB_CTRL_HWO; 72246da40 Felipe Balbi 2011-08-19 658 } 72246da40 Felipe Balbi 2011-08-19 659 a97ea9946 Felipe Balbi 2016-09-29 660 /* a97ea9946 Felipe Balbi 2016-09-29 661 * Issue StartTransfer here with no-op TRB so we can always rely on No a97ea9946 Felipe Balbi 2016-09-29 662 * Response Update Transfer command. a97ea9946 Felipe Balbi 2016-09-29 663 */ 94336cb42 Felipe Balbi 2018-04-09 664 if (usb_endpoint_xfer_bulk(desc) || 94336cb42 Felipe Balbi 2018-04-09 665 usb_endpoint_xfer_int(desc)) { a97ea9946 Felipe Balbi 2016-09-29 666 struct dwc3_gadget_ep_cmd_params params; a97ea9946 Felipe Balbi 2016-09-29 667 struct dwc3_trb *trb; a97ea9946 Felipe Balbi 2016-09-29 668 dma_addr_t trb_dma; a97ea9946 Felipe Balbi 2016-09-29 669 u32 cmd; a97ea9946 Felipe Balbi 2016-09-29 670 a97ea9946 Felipe Balbi 2016-09-29 671 memset(¶ms, 0, sizeof(params)); a97ea9946 Felipe Balbi 2016-09-29 672 trb = &dep->trb_pool[0]; a97ea9946 Felipe Balbi 2016-09-29 673 trb_dma = dwc3_trb_dma_offset(dep, trb); a97ea9946 Felipe Balbi 2016-09-29 674 a97ea9946 Felipe Balbi 2016-09-29 675 params.param0 = upper_32_bits(trb_dma); a97ea9946 Felipe Balbi 2016-09-29 676 params.param1 = lower_32_bits(trb_dma); a97ea9946 Felipe Balbi 2016-09-29 677 a97ea9946 Felipe Balbi 2016-09-29 678 cmd = DWC3_DEPCMD_STARTTRANSFER; a97ea9946 Felipe Balbi 2016-09-29 679 a97ea9946 Felipe Balbi 2016-09-29 680 ret = dwc3_send_gadget_ep_cmd(dep, cmd, ¶ms); a97ea9946 Felipe Balbi 2016-09-29 681 if (ret < 0) a97ea9946 Felipe Balbi 2016-09-29 682 return ret; a97ea9946 Felipe Balbi 2016-09-29 683 a97ea9946 Felipe Balbi 2016-09-29 684 dep->resource_index = dwc3_gadget_ep_get_transfer_index(dep); a97ea9946 Felipe Balbi 2016-09-29 685 WARN_ON_ONCE(!dep->resource_index); a97ea9946 Felipe Balbi 2016-09-29 686 } a97ea9946 Felipe Balbi 2016-09-29 687 2870e5013 Felipe Balbi 2016-11-03 688 out: 2870e5013 Felipe Balbi 2016-11-03 689 trace_dwc3_gadget_ep_enable(dep); 2870e5013 Felipe Balbi 2016-11-03 690 72246da40 Felipe Balbi 2011-08-19 691 return 0; 72246da40 Felipe Balbi 2011-08-19 692 } 72246da40 Felipe Balbi 2011-08-19 693 :::::: The code at line 611 was first introduced by commit :::::: 39ebb05ca83dc636f9c9159b3c6dbc58c932b26a usb: dwc3: gadget: Remove descriptor arguments to ep_enable :::::: TO: John Youn <johnyoun@xxxxxxxxxxxx> :::::: CC: Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip