Re: [Patch V6 7/8] usb: gadget: Add UDC driver for tegra XUSB device mode controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Nagarjuna,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on linus/master]
[cannot apply to v5.3-rc3 next-20190809]
[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/Nagarjuna-Kristam/Tegra-XUSB-gadget-driver-support/20190809-042626
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 7.4.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.4.0 make.cross ARCH=arm 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All warnings (new ones prefixed by >>):

   In file included from include/linux/printk.h:332:0,
                    from include/linux/kernel.h:15,
                    from include/linux/clk.h:13,
                    from drivers/usb/gadget/udc/tegra_xudc.c:9:
   drivers/usb/gadget/udc/tegra_xudc.c: In function 'tegra_xudc_ep0_standard_req':
>> include/linux/dynamic_debug.h:122:52: warning: this statement may fall through [-Wimplicit-fallthrough=]
    #define __dynamic_func_call(id, fmt, func, ...) do { \
                                                       ^
   include/linux/dynamic_debug.h:143:2: note: in expansion of macro '__dynamic_func_call'
     __dynamic_func_call(__UNIQUE_ID(ddebug), fmt, func, ##__VA_ARGS__)
     ^~~~~~~~~~~~~~~~~~~
   include/linux/dynamic_debug.h:157:2: note: in expansion of macro '_dynamic_func_call'
     _dynamic_func_call(fmt,__dynamic_dev_dbg,   \
     ^~~~~~~~~~~~~~~~~~
   include/linux/device.h:1509:2: note: in expansion of macro 'dynamic_dev_dbg'
     dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__)
     ^~~~~~~~~~~~~~~
>> drivers/usb/gadget/udc/tegra_xudc.c:2394:3: note: in expansion of macro 'dev_dbg'
      dev_dbg(xudc->dev, "USB_REQ_SET_CONFIGURATION\n");
      ^~~~~~~
   drivers/usb/gadget/udc/tegra_xudc.c:2400:2: note: here
     default:
     ^~~~~~~
--
   In file included from include/linux/printk.h:332:0,
                    from include/linux/kernel.h:15,
                    from include/linux/clk.h:13,
                    from drivers/usb//gadget/udc/tegra_xudc.c:9:
   drivers/usb//gadget/udc/tegra_xudc.c: In function 'tegra_xudc_ep0_standard_req':
>> include/linux/dynamic_debug.h:122:52: warning: this statement may fall through [-Wimplicit-fallthrough=]
    #define __dynamic_func_call(id, fmt, func, ...) do { \
                                                       ^
   include/linux/dynamic_debug.h:143:2: note: in expansion of macro '__dynamic_func_call'
     __dynamic_func_call(__UNIQUE_ID(ddebug), fmt, func, ##__VA_ARGS__)
     ^~~~~~~~~~~~~~~~~~~
   include/linux/dynamic_debug.h:157:2: note: in expansion of macro '_dynamic_func_call'
     _dynamic_func_call(fmt,__dynamic_dev_dbg,   \
     ^~~~~~~~~~~~~~~~~~
   include/linux/device.h:1509:2: note: in expansion of macro 'dynamic_dev_dbg'
     dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__)
     ^~~~~~~~~~~~~~~
   drivers/usb//gadget/udc/tegra_xudc.c:2394:3: note: in expansion of macro 'dev_dbg'
      dev_dbg(xudc->dev, "USB_REQ_SET_CONFIGURATION\n");
      ^~~~~~~
   drivers/usb//gadget/udc/tegra_xudc.c:2400:2: note: here
     default:
     ^~~~~~~

vim +/dev_dbg +2394 drivers/usb/gadget/udc/tegra_xudc.c

  2365	
  2366	static int tegra_xudc_ep0_standard_req(struct tegra_xudc *xudc,
  2367					      struct usb_ctrlrequest *ctrl)
  2368	{
  2369		int ret;
  2370	
  2371		switch (ctrl->bRequest) {
  2372		case USB_REQ_GET_STATUS:
  2373			dev_dbg(xudc->dev, "USB_REQ_GET_STATUS\n");
  2374			ret = tegra_xudc_ep0_get_status(xudc, ctrl);
  2375			break;
  2376		case USB_REQ_SET_ADDRESS:
  2377			dev_dbg(xudc->dev, "USB_REQ_SET_ADDRESS\n");
  2378			ret = tegra_xudc_ep0_set_address(xudc, ctrl);
  2379			break;
  2380		case USB_REQ_SET_SEL:
  2381			dev_dbg(xudc->dev, "USB_REQ_SET_SEL\n");
  2382			ret = tegra_xudc_ep0_set_sel(xudc, ctrl);
  2383			break;
  2384		case USB_REQ_SET_ISOCH_DELAY:
  2385			dev_dbg(xudc->dev, "USB_REQ_SET_ISOCH_DELAY\n");
  2386			ret = tegra_xudc_ep0_set_isoch_delay(xudc, ctrl);
  2387			break;
  2388		case USB_REQ_CLEAR_FEATURE:
  2389		case USB_REQ_SET_FEATURE:
  2390			dev_dbg(xudc->dev, "USB_REQ_CLEAR/SET_FEATURE\n");
  2391			ret = tegra_xudc_ep0_set_feature(xudc, ctrl);
  2392			break;
  2393		case USB_REQ_SET_CONFIGURATION:
> 2394			dev_dbg(xudc->dev, "USB_REQ_SET_CONFIGURATION\n");
  2395			/*
  2396			 * In theory we need to clear RUN bit before status stage of
  2397			 * deconfig request sent, but this seems to be causing problems.
  2398			 * Clear RUN once all endpoints are disabled instead.
  2399			 */
  2400		default:
  2401			ret = tegra_xudc_ep0_delegate_req(xudc, ctrl);
  2402			break;
  2403		}
  2404	
  2405		return ret;
  2406	}
  2407	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux