CC: [email protected]
In-Reply-To: 
<d01d23e2473407af37c42acb6ca4815ae5fd256e.1618464534.git.arthur.petros...@synopsys.com>
References: 
<d01d23e2473407af37c42acb6ca4815ae5fd256e.1618464534.git.arthur.petros...@synopsys.com>
TO: Artur Petrosyan <[email protected]>
TO: Felipe Balbi <[email protected]>
TO: "Greg Kroah-Hartman" <[email protected]>
TO: Minas Harutyunyan <[email protected]>
TO: [email protected]
TO: [email protected]
CC: John Youn <[email protected]>
CC: Artur Petrosyan <[email protected]>

Hi Artur,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on usb/usb-testing]
[also build test WARNING on next-20210414]
[cannot apply to peter.chen-usb/for-usb-next linus/master 
balbi-usb/testing/next v5.12-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    
https://github.com/0day-ci/linux/commits/Artur-Petrosyan/usb-dwc2-Update-exit-hibernation-when-port-reset-is-asserted/20210415-144021
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git 
usb-testing
:::::: branch date: 6 hours ago
:::::: commit date: 6 hours ago
config: i386-randconfig-m021-20210415 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

smatch warnings:
drivers/usb/dwc2/platform.c:324 dwc2_driver_remove() error: potentially 
dereferencing uninitialized 'gr'.

vim +/gr +324 drivers/usb/dwc2/platform.c

09a75e85779014 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-10-14  
304  
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
305  /**
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
306   * dwc2_driver_remove() - Called when the DWC_otg core is unregistered 
with the
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
307   * DWC_otg driver
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
308   *
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
309   * @dev: Platform device
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
310   *
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
311   * This routine is called, for example, when the rmmod command is 
executed. The
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
312   * device may or may not be electrically present. If it is present, the 
driver
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
313   * stops device processing. Any resources used on behalf of this device are
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
314   * freed.
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
315   */
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
316  static int dwc2_driver_remove(struct platform_device *dev)
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
317  {
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
318       struct dwc2_hsotg *hsotg = platform_get_drvdata(dev);
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
319       struct dwc2_gregs_backup *gr;
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
320       int ret = 0;
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
321  
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
322       /* Exit Hibernation when driver is removed. */
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
323       if (hsotg->hibernated) {
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15 
@324               if (gr->gotgctl & GOTGCTL_CURMODE_HOST) {
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
325                       ret = dwc2_exit_hibernation(hsotg, 0, 0, 1);
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
326                       if (ret)
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
327                               dev_err(hsotg->dev,
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
328                                       "exit hibernation failed.\n");
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
329               } else {
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
330                       ret = dwc2_exit_hibernation(hsotg, 0, 0, 0);
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
331                       if (ret)
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
332                               dev_err(hsotg->dev,
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
333                                       "exit hibernation failed.\n");
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
334               }
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
335       }
8e4dbc0200040a drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-15  
336  
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
337       /* Exit Partial Power Down when driver is removed. */
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
338       if (hsotg->in_ppd) {
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
339               ret = dwc2_exit_partial_power_down(hsotg, 0, true);
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
340               if (ret)
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
341                       dev_err(hsotg->dev,
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
342                               "exit partial_power_down failed\n");
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
343       }
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
344  
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
345       /* Exit clock gating when driver is removed. */
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
346       if (hsotg->params.power_down == DWC2_POWER_DOWN_PARAM_NONE &&
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
347           hsotg->bus_suspended) {
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
348               if (dwc2_is_device_mode(hsotg))
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
349                       dwc2_gadget_exit_clock_gating(hsotg, 0);
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
350               else
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
351                       dwc2_host_exit_clock_gating(hsotg, 0);
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
352       }
401411bbc4e62b drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-13  
353  
f91eea447ac32d drivers/usb/dwc2/platform.c     Mian Yousaf Kaukab 2015-04-29  
354       dwc2_debugfs_exit(hsotg);
e39af88f18dfe9 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-03-10  
355       if (hsotg->hcd_enabled)
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
356               dwc2_hcd_remove(hsotg);
e39af88f18dfe9 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-03-10  
357       if (hsotg->gadget_enabled)
1f91b4cc03556b drivers/usb/dwc2/platform.c     Felipe Balbi       2015-08-06  
358               dwc2_hsotg_remove(hsotg);
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
359  
17f934024e84e7 drivers/usb/dwc2/platform.c     Amelie Delaunay    2020-09-09  
360       dwc2_drd_exit(hsotg);
17f934024e84e7 drivers/usb/dwc2/platform.c     Amelie Delaunay    2020-09-09  
361  
a415083a11cc76 drivers/usb/dwc2/platform.c     Amelie Delaunay    2020-01-24  
362       if (hsotg->params.activate_stm_id_vb_detection)
a415083a11cc76 drivers/usb/dwc2/platform.c     Amelie Delaunay    2020-01-24  
363               regulator_disable(hsotg->usb33d);
a415083a11cc76 drivers/usb/dwc2/platform.c     Amelie Delaunay    2020-01-24  
364  
09a75e85779014 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-10-14  
365       if (hsotg->ll_hw_enabled)
09a75e85779014 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-10-14  
366               dwc2_lowlevel_hw_disable(hsotg);
09a75e85779014 drivers/usb/dwc2/platform.c     Marek Szyprowski   2015-10-14  
367  
83f8da562f8b52 drivers/usb/dwc2/platform.c     Dinh Nguyen        2016-08-10  
368       reset_control_assert(hsotg->reset);
f2830ad455ec0f drivers/usb/dwc2/platform.c     Dinh Nguyen        2017-11-01  
369       reset_control_assert(hsotg->reset_ecc);
83f8da562f8b52 drivers/usb/dwc2/platform.c     Dinh Nguyen        2016-08-10  
370  
b46b1ef7b0da5c drivers/usb/dwc2/platform.c     Artur Petrosyan    2021-04-08  
371       return ret;
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
372  }
5b9974b13e3648 drivers/staging/dwc2/platform.c Matthijs Kooijman  2013-04-22  
373  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to