tree:   https://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git 
testing/next
head:   3591a2f3900e0f93dbd246d979ddd939251cac3e
commit: 3591a2f3900e0f93dbd246d979ddd939251cac3e [50/50] usb: gadget: f_fs: add 
the support for alternate interface setting
config: arm-omap2plus_defconfig (attached as .config)
compiler: arm-linux-gnueabi-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 3591a2f3900e0f93dbd246d979ddd939251cac3e
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   drivers/usb/gadget/function/f_fs.c: In function 'ffs_do_descs_alt_intf':
>> drivers/usb/gadget/function/f_fs.c:2198:9: error: too few arguments to 
>> function 'ffs_do_single_desc'
      ret = ffs_do_single_desc(data, len, entity, priv);
            ^~~~~~~~~~~~~~~~~~
   drivers/usb/gadget/function/f_fs.c:1966:25: note: declared here
    static int __must_check ffs_do_single_desc(char *data, unsigned len,
                            ^~~~~~~~~~~~~~~~~~

vim +/ffs_do_single_desc +2198 drivers/usb/gadget/function/f_fs.c

  2148  
  2149  static int do_function_enable_interface(enum ffs_entity_type type, u8 
*valuep,
  2150                                          struct usb_descriptor_header 
*desc,
  2151                                          void *priv);
  2152  
  2153  static int do_function_disable_interface(enum ffs_entity_type type, u8 
*valuep,
  2154                                          struct usb_descriptor_header 
*desc,
  2155                                          void *priv);
  2156  
  2157  static int __must_check ffs_do_descs_alt_intf(unsigned int count, char 
*data,
  2158                                          unsigned int len, unsigned int 
intf,
  2159                                          unsigned int alt, void *priv)
  2160  {
  2161          const unsigned int _len = len;
  2162          unsigned long num = 0;
  2163          struct usb_descriptor_header *_ds;
  2164          struct usb_interface_descriptor *idecs;
  2165          ffs_entity_callback entity = NULL;
  2166  
  2167          ENTER();
  2168  
  2169          for (;;) {
  2170                  int ret;
  2171  
  2172                  if (num == count)
  2173                          data = NULL;
  2174  
  2175                  if (!data) {
  2176                          pr_vdebug("%s Exiting. No more Data\n", 
__func__);
  2177                          return _len - len;
  2178                  }
  2179  
  2180                  _ds = (void *)data;
  2181                  if (_ds->bDescriptorType == USB_DT_INTERFACE) {
  2182                          idecs = (void *)_ds;
  2183  
  2184                          /*Check the interface no to deal with */
  2185                          if (idecs->bInterfaceNumber == intf) {
  2186                                  if (idecs->bAlternateSetting == alt)
  2187                                          entity = 
do_function_enable_interface;
  2188                                  else
  2189                                          entity = 
do_function_disable_interface;
  2190                          } else if (entity &&
  2191                                          (idecs->bInterfaceNumber != 
intf)) {
  2192                                  pr_vdebug(
  2193                                  "%s Exiting.Moved past the interface 
no\n",
  2194                                                                  
__func__);
  2195                                  return _len - len;
  2196                          }
  2197                  }
> 2198                  ret = ffs_do_single_desc(data, len, entity, priv);
  2199                  if (unlikely(ret < 0)) {
  2200                          pr_err("%s Exiting with err %d\n", __func__, 
ret);
  2201                          return ret;
  2202                  }
  2203  
  2204                  len -= ret;
  2205                  data += ret;
  2206                  ++num;
  2207          }
  2208  }
  2209  

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

Attachment: .config.gz
Description: application/gzip

Reply via email to