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: <202601301031.VutflAtp-lkp@intel.com>
Date: Fri, 30 Jan 2026 11:03:38 +0800
From: kernel test robot <lkp@...el.com>
To: Abhash Kumar Jha <a-kumar2@...com>, andrzej.hajda@...el.com,
	neil.armstrong@...aro.org, rfoss@...nel.org, mripard@...nel.org,
	tzimmermann@...e.de, airlied@...il.com, simona@...ll.ch,
	devarsht@...com, u-kumar1@...com, sjakhade@...ence.com
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
	dri-devel@...ts.freedesktop.org, Laurent.pinchart@...asonboard.com,
	jonas@...boo.se, jernej.skrabec@...il.com, s-jain1@...com,
	p-mantena@...com, tomi.valkeinen@...asonboard.com
Subject: Re: [PATCH] drm/bridge: cdns-mhdp8546: Add suspend resume support to
 the bridge driver

Hi Abhash,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm-misc/drm-misc-next]
[also build test WARNING on linus/master v6.19-rc7 next-20260129]
[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://github.com/intel-lab-lkp/linux/commits/Abhash-Kumar-Jha/drm-bridge-cdns-mhdp8546-Add-suspend-resume-support-to-the-bridge-driver/20260129-193145
base:   https://gitlab.freedesktop.org/drm/misc/kernel.git drm-misc-next
patch link:    https://lore.kernel.org/r/20260129112016.2448037-1-a-kumar2%40ti.com
patch subject: [PATCH] drm/bridge: cdns-mhdp8546: Add suspend resume support to the bridge driver
config: parisc-randconfig-002-20260130 (https://download.01.org/0day-ci/archive/20260130/202601301031.VutflAtp-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260130/202601301031.VutflAtp-lkp@intel.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/202601301031.VutflAtp-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c:2447:12: warning: 'cdns_mhdp_suspend' defined but not used [-Wunused-function]
    static int cdns_mhdp_suspend(struct device *dev)
               ^~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c:2387:12: warning: 'cdns_mhdp_resume' defined but not used [-Wunused-function]
    static int cdns_mhdp_resume(struct device *dev)
               ^~~~~~~~~~~~~~~~


vim +/cdns_mhdp_suspend +2447 drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c

  2386	
> 2387	static int cdns_mhdp_resume(struct device *dev)
  2388	{
  2389		struct cdns_mhdp_device *mhdp = dev_get_drvdata(dev);
  2390		unsigned long rate;
  2391		int ret;
  2392	
  2393		ret = clk_prepare_enable(mhdp->clk);
  2394		if (ret)
  2395			return ret;
  2396	
  2397		rate = clk_get_rate(mhdp->clk);
  2398		writel(rate % 1000000, mhdp->regs + CDNS_SW_CLK_L);
  2399		writel(rate / 1000000, mhdp->regs + CDNS_SW_CLK_H);
  2400		writel(~0, mhdp->regs + CDNS_APB_INT_MASK);
  2401	
  2402		ret = phy_init(mhdp->phy);
  2403		if (ret) {
  2404			dev_err(mhdp->dev, "Failed to initialize PHY: %d\n", ret);
  2405			goto disable_clk;
  2406		}
  2407		ret = phy_power_on(mhdp->phy);
  2408		if (ret < 0) {
  2409			dev_err(mhdp->dev, "Failed to power on PHY: %d\n", ret);
  2410			goto error;
  2411		}
  2412	
  2413		if (mhdp->powered_off) {
  2414			ret = cdns_mhdp_load_firmware(mhdp);
  2415			if (ret)
  2416				goto phy_off;
  2417	
  2418			ret = wait_event_timeout(mhdp->fw_load_wq,
  2419						mhdp->hw_state == MHDP_HW_READY,
  2420						msecs_to_jiffies(1000));
  2421			if (ret == 0) {
  2422				dev_err(mhdp->dev, "%s: Timeout waiting for fw loading\n",
  2423					__func__);
  2424				ret = -ETIMEDOUT;
  2425				goto phy_off;
  2426			}
  2427		} else {
  2428			ret = cdns_mhdp_set_firmware_active(mhdp, true);
  2429			if (ret) {
  2430				dev_err(mhdp->dev, "Failed to activate firmware (%pe)\n", ERR_PTR(ret));
  2431				goto phy_off;
  2432			}
  2433		}
  2434	
  2435		return 0;
  2436	
  2437	phy_off:
  2438		phy_power_off(mhdp->phy);
  2439	error:
  2440		phy_exit(mhdp->phy);
  2441	disable_clk:
  2442		clk_disable_unprepare(mhdp->clk);
  2443	
  2444		return ret;
  2445	}
  2446	
> 2447	static int cdns_mhdp_suspend(struct device *dev)
  2448	{
  2449		struct cdns_mhdp_device *mhdp = dev_get_drvdata(dev);
  2450		unsigned long timeout = msecs_to_jiffies(100);
  2451		int ret = 0;
  2452	
  2453		cancel_work_sync(&mhdp->hpd_work);
  2454		ret = wait_event_timeout(mhdp->fw_load_wq,
  2455					 mhdp->hw_state == MHDP_HW_READY,
  2456					 timeout);
  2457	
  2458		spin_lock(&mhdp->start_lock);
  2459		if (mhdp->hw_state != MHDP_HW_READY) {
  2460			spin_unlock(&mhdp->start_lock);
  2461			return -EINVAL;
  2462		}
  2463		mhdp->hw_state = MHDP_HW_STOPPED;
  2464		spin_unlock(&mhdp->start_lock);
  2465	
  2466		if (ret == 0) {
  2467			dev_err(mhdp->dev, "%s: Timeout waiting for fw loading\n", __func__);
  2468			ret = -ETIMEDOUT;
  2469			goto error;
  2470		} else {
  2471			ret = cdns_mhdp_set_firmware_active(mhdp, false);
  2472			if (ret) {
  2473				dev_err(mhdp->dev, "Failed to stop firmware (%pe)\n", ERR_PTR(ret));
  2474				goto error;
  2475			}
  2476		}
  2477	
  2478		phy_power_off(mhdp->phy);
  2479		phy_exit(mhdp->phy);
  2480		clk_disable_unprepare(mhdp->clk);
  2481	
  2482	error:
  2483		return ret;
  2484	}
  2485	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ