lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 23 Jul 2018 09:29:53 +0000
From:   Pengbo Mu <pengbo.mu@....com>
To:     kbuild test robot <lkp@...el.com>
CC:     "kbuild-all@...org" <kbuild-all@...org>,
        Felipe Balbi <balbi@...nel.org>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
        Ran Wang <ran.wang_1@....com>
Subject: RE: [PATCH] usb: dwc3: call set incr burst type func()

Hi,

The following is my compile result:
  ...
  LD [M]  sound/soc/codecs/snd-soc-ak4613.ko
  LD [M]  sound/soc/generic/snd-soc-audio-graph-card.ko
  LD [M]  sound/soc/generic/snd-soc-simple-card-utils.ko
  LD [M]  sound/soc/generic/snd-soc-simple-card.ko
  LD [M]  sound/soc/sh/rcar/snd-soc-rcar.ko
ret:0
These patches are based on mainline , and my version is linux-4.18-rc5. Last week , I pulled my upstream branch to the latest.
I didn't see error log in this version.
By the way , this is my git tree --- git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git .
Please tell me which tree could suitably develop patch for upstream.

Thanks,
Pengbo Mu
 
-----Original Message-----
From: kbuild test robot [mailto:lkp@...el.com] 
Sent: 2018年7月23日 15:05
To: Pengbo Mu <pengbo.mu@....com>
Cc: kbuild-all@...org; Felipe Balbi <balbi@...nel.org>; Greg Kroah-Hartman <gregkh@...uxfoundation.org>; linux-kernel@...r.kernel.org; linux-usb@...r.kernel.org; Ran Wang <ran.wang_1@....com>; Pengbo Mu <pengbo.mu@....com>
Subject: Re: [PATCH] usb: dwc3: call set incr burst type func()

Hi Pengbo,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on balbi-usb/next]
[also build test ERROR on v4.18-rc6 next-20180720]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2F0day-ci%2Flinux%2Fcommits%2FPengbo-Mu%2Fusb-dwc3-call-set-incr-burst-type-func%2F20180723-132027&amp;data=02%7C01%7Cpengbo.mu%40nxp.com%7Ce3094b6111134e37edc608d5f06ad541%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636679267258116308&amp;sdata=84XfOGT4V1urWs2F%2BSHaEZZWv4Tkl5rR9FgUc2jSW7c%3D&amp;reserved=0
base:   https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fbalbi%2Fusb.git&amp;data=02%7C01%7Cpengbo.mu%40nxp.com%7Ce3094b6111134e37edc608d5f06ad541%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636679267258116308&amp;sdata=R8LOzzVUFzlbEZ7tkNOoE%2FJ8Pji0G6ukbCuilctOQMw%3D&amp;reserved=0 next
config: i386-randconfig-s1-201829 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/usb/dwc3/core.c: In function 'dwc3_core_init':
>> drivers/usb/dwc3/core.c:843:2: error: implicit declaration of function 'dwc3_set_incr_burst_type' [-Werror=implicit-function-declaration]
     dwc3_set_incr_burst_type(dwc);
     ^~~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +/dwc3_set_incr_burst_type +843 drivers/usb/dwc3/core.c

   780	
   781	/**
   782	 * dwc3_core_init - Low-level initialization of DWC3 Core
   783	 * @dwc: Pointer to our controller context structure
   784	 *
   785	 * Returns 0 on success otherwise negative errno.
   786	 */
   787	static int dwc3_core_init(struct dwc3 *dwc)
   788	{
   789		u32			reg;
   790		int			ret;
   791	
   792		if (!dwc3_core_is_valid(dwc)) {
   793			dev_err(dwc->dev, "this is not a DesignWare USB3 DRD Core\n");
   794			ret = -ENODEV;
   795			goto err0;
   796		}
   797	
   798		/*
   799		 * Write Linux Version Code to our GUID register so it's easy to figure
   800		 * out which kernel version a bug was found.
   801		 */
   802		dwc3_writel(dwc->regs, DWC3_GUID, LINUX_VERSION_CODE);
   803	
   804		/* Handle USB2.0-only core configuration */
   805		if (DWC3_GHWPARAMS3_SSPHY_IFC(dwc->hwparams.hwparams3) ==
   806				DWC3_GHWPARAMS3_SSPHY_IFC_DIS) {
   807			if (dwc->maximum_speed == USB_SPEED_SUPER)
   808				dwc->maximum_speed = USB_SPEED_HIGH;
   809		}
   810	
   811		ret = dwc3_phy_setup(dwc);
   812		if (ret)
   813			goto err0;
   814	
   815		if (!dwc->ulpi_ready) {
   816			ret = dwc3_core_ulpi_init(dwc);
   817			if (ret)
   818				goto err0;
   819			dwc->ulpi_ready = true;
   820		}
   821	
   822		if (!dwc->phys_ready) {
   823			ret = dwc3_core_get_phy(dwc);
   824			if (ret)
   825				goto err0a;
   826			dwc->phys_ready = true;
   827		}
   828	
   829		ret = dwc3_core_soft_reset(dwc);
   830		if (ret)
   831			goto err0a;
   832	
   833		dwc3_core_setup_global_control(dwc);
   834		dwc3_core_num_eps(dwc);
   835	
   836		ret = dwc3_setup_scratch_buffers(dwc);
   837		if (ret)
   838			goto err1;
   839	
   840		/* Adjust Frame Length */
   841		dwc3_frame_length_adjustment(dwc);
   842	
 > 843		dwc3_set_incr_burst_type(dwc);
   844	
   845		usb_phy_set_suspend(dwc->usb2_phy, 0);
   846		usb_phy_set_suspend(dwc->usb3_phy, 0);
   847		ret = phy_power_on(dwc->usb2_generic_phy);
   848		if (ret < 0)
   849			goto err2;
   850	
   851		ret = phy_power_on(dwc->usb3_generic_phy);
   852		if (ret < 0)
   853			goto err3;
   854	
   855		ret = dwc3_event_buffers_setup(dwc);
   856		if (ret) {
   857			dev_err(dwc->dev, "failed to setup event buffers\n");
   858			goto err4;
   859		}
   860	
   861		/*
   862		 * ENDXFER polling is available on version 3.10a and later of
   863		 * the DWC_usb3 controller. It is NOT available in the
   864		 * DWC_usb31 controller.
   865		 */
   866		if (!dwc3_is_usb31(dwc) && dwc->revision >= DWC3_REVISION_310A) {
   867			reg = dwc3_readl(dwc->regs, DWC3_GUCTL2);
   868			reg |= DWC3_GUCTL2_RST_ACTBITLATER;
   869			dwc3_writel(dwc->regs, DWC3_GUCTL2, reg);
   870		}
   871	
   872		if (dwc->revision >= DWC3_REVISION_250A) {
   873			reg = dwc3_readl(dwc->regs, DWC3_GUCTL1);
   874	
   875			/*
   876			 * Enable hardware control of sending remote wakeup
   877			 * in HS when the device is in the L1 state.
   878			 */
   879			if (dwc->revision >= DWC3_REVISION_290A)
   880				reg |= DWC3_GUCTL1_DEV_L1_EXIT_BY_HW;
   881	
   882			if (dwc->dis_tx_ipgap_linecheck_quirk)
   883				reg |= DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS;
   884	
   885			dwc3_writel(dwc->regs, DWC3_GUCTL1, reg);
   886		}
   887	
   888		/*
   889		 * Must config both number of packets and max burst settings to enable
   890		 * RX and/or TX threshold.
   891		 */
   892		if (dwc3_is_usb31(dwc) && dwc->dr_mode == USB_DR_MODE_HOST) {
   893			u8 rx_thr_num = dwc->rx_thr_num_pkt_prd;
   894			u8 rx_maxburst = dwc->rx_max_burst_prd;
   895			u8 tx_thr_num = dwc->tx_thr_num_pkt_prd;
   896			u8 tx_maxburst = dwc->tx_max_burst_prd;
   897	
   898			if (rx_thr_num && rx_maxburst) {
   899				reg = dwc3_readl(dwc->regs, DWC3_GRXTHRCFG);
   900				reg |= DWC31_RXTHRNUMPKTSEL_PRD;
   901	
   902				reg &= ~DWC31_RXTHRNUMPKT_PRD(~0);
   903				reg |= DWC31_RXTHRNUMPKT_PRD(rx_thr_num);
   904	
   905				reg &= ~DWC31_MAXRXBURSTSIZE_PRD(~0);
   906				reg |= DWC31_MAXRXBURSTSIZE_PRD(rx_maxburst);
   907	
   908				dwc3_writel(dwc->regs, DWC3_GRXTHRCFG, reg);
   909			}
   910	
   911			if (tx_thr_num && tx_maxburst) {
   912				reg = dwc3_readl(dwc->regs, DWC3_GTXTHRCFG);
   913				reg |= DWC31_TXTHRNUMPKTSEL_PRD;
   914	
   915				reg &= ~DWC31_TXTHRNUMPKT_PRD(~0);
   916				reg |= DWC31_TXTHRNUMPKT_PRD(tx_thr_num);
   917	
   918				reg &= ~DWC31_MAXTXBURSTSIZE_PRD(~0);
   919				reg |= DWC31_MAXTXBURSTSIZE_PRD(tx_maxburst);
   920	
   921				dwc3_writel(dwc->regs, DWC3_GTXTHRCFG, reg);
   922			}
   923		}
   924	
   925		return 0;
   926	
   927	err4:
   928		phy_power_off(dwc->usb3_generic_phy);
   929	
   930	err3:
   931		phy_power_off(dwc->usb2_generic_phy);
   932	
   933	err2:
   934		usb_phy_set_suspend(dwc->usb2_phy, 1);
   935		usb_phy_set_suspend(dwc->usb3_phy, 1);
   936	
   937	err1:
   938		usb_phy_shutdown(dwc->usb2_phy);
   939		usb_phy_shutdown(dwc->usb3_phy);
   940		phy_exit(dwc->usb2_generic_phy);
   941		phy_exit(dwc->usb3_generic_phy);
   942	
   943	err0a:
   944		dwc3_ulpi_exit(dwc);
   945	
   946	err0:
   947		return ret;
   948	}
   949	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.01.org%2Fpipermail%2Fkbuild-all&amp;data=02%7C01%7Cpengbo.mu%40nxp.com%7Ce3094b6111134e37edc608d5f06ad541%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636679267258116308&amp;sdata=K6eL5vifht2%2FkRHaW0sFIJtPPBn7VvQcYclcY7Z7ESU%3D&amp;reserved=0                   Intel Corporation

Powered by blists - more mailing lists