tree:
https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: 876253994894857f5d099a55147612e4f036d1c3
commit: 480c290529e3c00e885c00bbb10a90914c3f05f2 [139/241] usb: dwc2: Fix hibernation
between host and device modes.
config: mips-randconfig-p002-20210512 (attached as .config)
compiler: mips-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable
https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout 480c290529e3c00e885c00bbb10a90914c3f05f2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/usb/dwc2/core_intr.c: In function 'dwc_handle_gpwrdn_disc_det':
> drivers/usb/dwc2/core_intr.c:715:7: error: 'struct
dwc2_hsotg' has no member named 'bus_suspended'
715 |
hsotg->bus_suspended = 0;
| ^~
vim +715 drivers/usb/dwc2/core_intr.c
667
668 /**
669 * dwc_handle_gpwrdn_disc_det() - Handles the gpwrdn disconnect detect.
670 * Exits hibernation without restoring registers.
671 *
672 * @hsotg: Programming view of DWC_otg controller
673 * @gpwrdn: GPWRDN register
674 */
675 static inline void dwc_handle_gpwrdn_disc_det(struct dwc2_hsotg *hsotg,
676 u32 gpwrdn)
677 {
678 u32 gpwrdn_tmp;
679
680 /* Switch-on voltage to the core */
681 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
682 gpwrdn_tmp &= ~GPWRDN_PWRDNSWTCH;
683 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
684 udelay(5);
685
686 /* Reset core */
687 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
688 gpwrdn_tmp &= ~GPWRDN_PWRDNRSTN;
689 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
690 udelay(5);
691
692 /* Disable Power Down Clamp */
693 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
694 gpwrdn_tmp &= ~GPWRDN_PWRDNCLMP;
695 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
696 udelay(5);
697
698 /* Deassert reset core */
699 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
700 gpwrdn_tmp |= GPWRDN_PWRDNRSTN;
701 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
702 udelay(5);
703
704 /* Disable PMU interrupt */
705 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
706 gpwrdn_tmp &= ~GPWRDN_PMUINTSEL;
707 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
708
709 /* De-assert Wakeup Logic */
710 gpwrdn_tmp = dwc2_readl(hsotg, GPWRDN);
711 gpwrdn_tmp &= ~GPWRDN_PMUACTV;
712 dwc2_writel(hsotg, gpwrdn_tmp, GPWRDN);
713
714 hsotg->hibernated = 0;
715 hsotg->bus_suspended = 0;
716
717 if (gpwrdn & GPWRDN_IDSTS) {
718 hsotg->op_state = OTG_STATE_B_PERIPHERAL;
719 dwc2_core_init(hsotg, false);
720 dwc2_enable_global_interrupts(hsotg);
721 dwc2_hsotg_core_init_disconnected(hsotg, false);
722 dwc2_hsotg_core_connect(hsotg);
723 } else {
724 hsotg->op_state = OTG_STATE_A_HOST;
725
726 /* Initialize the Core for Host mode */
727 dwc2_core_init(hsotg, false);
728 dwc2_enable_global_interrupts(hsotg);
729 dwc2_hcd_start(hsotg);
730 }
731 }
732
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org