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] [day] [month] [year] [list]
Message-ID: <006f01dc1346$db4edf50$91ec9df0$@samsung.com>
Date: Fri, 22 Aug 2025 14:56:32 +0530
From: "Pritam Manohar Sutar" <pritam.sutar@...sung.com>
To: <vkoul@...nel.org>, <kishon@...nel.org>, <robh@...nel.org>,
	<krzk+dt@...nel.org>, <conor+dt@...nel.org>, <alim.akhtar@...sung.com>,
	<andre.draszik@...aro.org>, <peter.griffin@...aro.org>,
	<kauschluss@...root.org>, <ivo.ivanov.ivanov1@...il.com>,
	<igor.belwon@...tallysanemainliners.org>, <johan@...nel.org>,
	<m.szyprowski@...sung.com>, <s.nawrocki@...sung.com>
Cc: <oe-kbuild-all@...ts.linux.dev>, <linux-phy@...ts.infradead.org>,
	<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
	<linux-arm-kernel@...ts.infradead.org>, <linux-samsung-soc@...r.kernel.org>,
	<rosa.pila@...sung.com>, <dev.tailor@...sung.com>, <faraz.ata@...sung.com>,
	<muhammed.ali@...sung.com>, <selvarasu.g@...sung.com>
Subject: RE: [PATCH v6 6/6] phy: exynos5-usbdrd: support SS combo phy for
 ExynosAutov920

Hi, 

> -----Original Message-----
> From: kernel test robot <lkp@...el.com>
> Sent: 22 August 2025 02:58 AM
> To: Pritam Manohar Sutar <pritam.sutar@...sung.com>; vkoul@...nel.org;
> kishon@...nel.org; robh@...nel.org; krzk+dt@...nel.org;
> conor+dt@...nel.org; alim.akhtar@...sung.com; andre.draszik@...aro.org;
> peter.griffin@...aro.org; kauschluss@...root.org;
> ivo.ivanov.ivanov1@...il.com; igor.belwon@...tallysanemainliners.org;
> johan@...nel.org; m.szyprowski@...sung.com; s.nawrocki@...sung.com
> Cc: oe-kbuild-all@...ts.linux.dev; linux-phy@...ts.infradead.org;
> devicetree@...r.kernel.org; linux-kernel@...r.kernel.org; linux-arm-
> kernel@...ts.infradead.org; linux-samsung-soc@...r.kernel.org;
> rosa.pila@...sung.com; dev.tailor@...sung.com;
> faraz.ata@...sung.com; muhammed.ali@...sung.com;
> selvarasu.g@...sung.com
> Subject: Re: [PATCH v6 6/6] phy: exynos5-usbdrd: support SS combo phy for
> ExynosAutov920
> 
> Hi Pritam,
> 
> kernel test robot noticed the following build warnings:
> 
> [auto build test WARNING on robh/for-next] [also build test WARNING on
> krzk/for-next linus/master v6.17-rc2 next-20250821] [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#_base_tree_information]
> 
> url:    https://protect2.fireeye.com/v1/url?k=07116f39-666ac5ae-0710e476-
> 74fe4860001d-17dff89291ad3b5b&q=1&e=45b4f292-bcb1-4614-86a0-
> c790a47fb814&u=https%3A%2F%2Fgithub.com%2Fintel-lab-
> lkp%2Flinux%2Fcommits%2FPritam-Manohar-Sutar%2Fdt-bindings-phy-
> samsung-usb3-drd-phy-add-ExynosAutov920-HS-phy-
> compatible%2F20250821-153122
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git
for-
> next
> patch link:    https://lore.kernel.org/r/20250821073703.2498302-7-
> pritam.sutar%40samsung.com
> patch subject: [PATCH v6 6/6] phy: exynos5-usbdrd: support SS combo phy
> for ExynosAutov920
> config: arc-randconfig-001-20250822 (https://download.01.org/0day-
> ci/archive/20250822/202508220553.lm7ExAxG-lkp@...el.com/config)
> compiler: arc-linux-gcc (GCC) 8.5.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-
> ci/archive/20250822/202508220553.lm7ExAxG-lkp@...el.com/reproduce)
> 
> If you fix the issue in a separate patch/commit (i.e. not just a new
version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@...el.com>
> | Closes:
> | https://lore.kernel.org/oe-kbuild-all/202508220553.lm7ExAxG-lkp@intel.
> | com/
> 
> All warnings (new ones prefixed by >>):
> 
>    drivers/phy/samsung/phy-exynos5-usbdrd.c: In function
> 'exynosautov920_usb31drd_cr_write':
> >> drivers/phy/samsung/phy-exynos5-usbdrd.c:2167:17: warning: unused
> >> variable 'dev' [-Wunused-variable]
>      struct device *dev = phy_drd->dev;
>                     ^~~
>    drivers/phy/samsung/phy-exynos5-usbdrd.c: In function
> 'exynosautov920_usb31drd_port_phy_ready':
> >> drivers/phy/samsung/phy-exynos5-usbdrd.c:2137:6: warning: 'reg' is
> >> used uninitialized in this function [-Wuninitialized]
>      reg &= ~(PHY_CR_PARA_CON0_PHY0_CR_PARA_CLK |
>      ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>        PHY_CR_PARA_CON0_PHY0_CR_PARA_ADDR);
>        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    during RTL pass: mach
>    drivers/phy/samsung/phy-exynos5-usbdrd.c: In function
> 'exynos5_usbdrd_phy_probe':
>    drivers/phy/samsung/phy-exynos5-usbdrd.c:3056:1: internal compiler
> error: in arc_ifcvt, at config/arc/arc.c:9110
>     }
>     ^
>    Please submit a full bug report,
>    with preprocessed source if appropriate.
>    See <https://gcc.gnu.org/bugs/> for instructions.
> 
> 
> vim +/dev +2167 drivers/phy/samsung/phy-exynos5-usbdrd.c
> 
>   2125
>   2126	static void
>   2127	exynosautov920_usb31drd_port_phy_ready(struct
> exynos5_usbdrd_phy *phy_drd)
>   2128	{
>   2129		struct device *dev = phy_drd->dev;
>   2130		void __iomem *reg_phy = phy_drd->reg_phy;
>   2131		static const unsigned int timeout_us = 20000;
>   2132		static const unsigned int sleep_us = 40;
>   2133		u32 reg;
>   2134		int err;
>   2135
>   2136		/* Clear cr_para_con */
> > 2137		reg &= ~(PHY_CR_PARA_CON0_PHY0_CR_PARA_CLK |
>   2138
> 	PHY_CR_PARA_CON0_PHY0_CR_PARA_ADDR);
>   2139		reg |= PHY_CR_PARA_CON0_PHY0_CR_PARA_SEL;
>   2140		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2141		writel(0x0, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON1);
>   2142		writel(0x0, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON2);
>   2143
>   2144		exynosautov920_usb31drd_cr_clk(phy_drd, true);
>   2145		exynosautov920_usb31drd_cr_clk(phy_drd, false);
>   2146
>   2147		/*
>   2148		 * The maximum time from phy reset de-assertion to
de-
> assertion of
>   2149		 * tx/rx_ack can be as high as 5ms in fast
simulation mode.
>   2150		 * Time to phy ready is < 20ms
>   2151		 */
>   2152		err = readl_poll_timeout(reg_phy +
>   2153
> 	EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0,
>   2154				reg, !(reg &
> PHY_CR_PARA_CON0_PHY0_CR_PARA_ACK),
>   2155				sleep_us, timeout_us);
>   2156		if (err)
>   2157			dev_err(dev, "timed out waiting for
rx/tx_ack:
> %#.8x\n", reg);
>   2158
>   2159		reg &= ~PHY_CR_PARA_CON0_PHY0_CR_PARA_CLK;
>   2160		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2161	}
>   2162
>   2163	static void
>   2164	exynosautov920_usb31drd_cr_write(struct exynos5_usbdrd_phy
> *phy_drd,
>   2165					 u16 addr, u16 data)
>   2166	{
> > 2167		struct device *dev = phy_drd->dev;
>   2168		void __iomem *reg_phy = phy_drd->reg_phy;
>   2169		u32 cnt = 0;
>   2170		u32 reg;
>   2171
>   2172		/* Pre Clocking */
>   2173		reg = readl(reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2174		reg |= PHY_CR_PARA_CON0_PHY0_CR_PARA_SEL;
>   2175		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2176
>   2177		/*
>   2178		 * tx clks must be available prior to assertion of
tx req.
>   2179		 * tx pstate p2 to p0 transition directly is not
permitted.
>   2180		 * tx clk ready must be asserted synchronously on tx
clk prior
>   2181		 * to internal transmit clk alignment sequence in
the phy
>   2182		 * when entering from p2 to p1 to p0.
>   2183		 */
>   2184		do {
>   2185			exynosautov920_usb31drd_cr_clk(phy_drd,
true);
>   2186			exynosautov920_usb31drd_cr_clk(phy_drd,
false);
>   2187			cnt++;
>   2188		} while (cnt < 15);
>   2189
>   2190		reg &= ~PHY_CR_PARA_CON0_PHY0_CR_PARA_SEL;
>   2191		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2192
>   2193		/*
>   2194		 * tx data path is active when tx lane is in p0
state
>   2195		 * and tx data en asserted. enable cr_para_wr_en.
>   2196		 */
>   2197		reg = readl(reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON2);
>   2198		reg &= ~PHY_CR_PARA_CON2_PHY0_CR_PARA_WR_DATA;
>   2199		reg |=
> FIELD_PREP(PHY_CR_PARA_CON2_PHY0_CR_PARA_WR_DATA, data) |
>   2200			PHY_CR_PARA_CON2_PHY0_CR_PARA_WR_EN;
>   2201		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON2);
>   2202
>   2203		/* write addr */
>   2204		reg = readl(reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2205		reg &= ~PHY_CR_PARA_CON0_PHY0_CR_PARA_ADDR;
>   2206		reg |=
> FIELD_PREP(PHY_CR_PARA_CON0_PHY0_CR_PARA_ADDR, addr) |
>   2207			PHY_CR_PARA_CON0_PHY0_CR_PARA_CLK |
>   2208			PHY_CR_PARA_CON0_PHY0_CR_PARA_SEL;
>   2209		writel(reg, reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2210
>   2211		/* check cr_para_ack*/
>   2212		cnt = 0;
>   2213		do {
>   2214			/*
>   2215			 * data symbols are captured by phy on
rising edge of
> the
>   2216			 * tx_clk when tx data enabled.
>   2217			 * completion of the write cycle is
acknowledged by
> assertion
>   2218			 * of the cr_para_ack.
>   2219			 */
>   2220			exynosautov920_usb31drd_cr_clk(phy_drd,
true);
>   2221			reg = readl(reg_phy +
> EXYNOSAUTOV920_USB31DRD_PHY_CR_PARA_CON0);
>   2222			if ((reg &
> PHY_CR_PARA_CON0_PHY0_CR_PARA_ACK))
>   2223				break;
>   2224
>   2225			exynosautov920_usb31drd_cr_clk(phy_drd,
false);
>   2226
>   2227			/*
>   2228			 * wait for minimum of 10 cr_para_clk cycles
after phy
> reset
>   2229			 * is negated, before accessing control regs
to allow
> for
>   2230			 * internal resets.
>   2231			 */
>   2232			cnt++;
>   2233		} while (cnt < 10);
>   2234
>   2235		if (cnt < 10)
>   2236			exynosautov920_usb31drd_cr_clk(phy_drd,
false);
>   2237	}
>   2238
> 
> --
> 0-DAY CI Kernel Test Service
> https://protect2.fireeye.com/v1/url?k=96757503-f70edf94-9674fe4c-
> 74fe4860001d-38e3f56dae8e119d&q=1&e=45b4f292-bcb1-4614-86a0-
> c790a47fb814&u=https%3A%2F%2Fgithub.com%2Fintel%2Flkp-tests%2Fwiki

Will post v7 with the fixes for these warnings.

Thank you.

Regards,
Pritam



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ