[pci:controller/dwc-stm32 2/5] drivers/pci/controller/dwc/pcie-stm32.c:96:23: error: incomplete definition of type 'struct dev_pin_info'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git controller/dwc-stm32
head:   5a972a01e24b278f7302a834c6eaee5bdac12843
commit: 633f42f48af5a55abbdb92b036f23b428c5fb59b [2/5] PCI: stm32: Add PCIe host support for STM32MP25
config: um-allmodconfig (https://download.01.org/0day-ci/archive/20250626/202506260920.bmQ9hQ9s-lkp@xxxxxxxxx/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250626/202506260920.bmQ9hQ9s-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506260920.bmQ9hQ9s-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   In file included from drivers/pci/controller/dwc/pcie-stm32.c:12:
   In file included from include/linux/phy/phy.h:17:
   In file included from include/linux/regulator/consumer.h:35:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:27:
   In file included from include/linux/kernel_stat.h:8:
   In file included from include/linux/interrupt.h:11:
   In file included from include/linux/hardirq.h:11:
   In file included from arch/um/include/asm/hardirq.h:5:
   In file included from include/asm-generic/hardirq.h:17:
   In file included from include/linux/irq.h:20:
   In file included from include/linux/io.h:12:
   In file included from arch/um/include/asm/io.h:24:
   include/asm-generic/io.h:1175:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
    1175 |         return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
         |                                                   ~~~~~~~~~~ ^
>> drivers/pci/controller/dwc/pcie-stm32.c:96:23: error: incomplete definition of type 'struct dev_pin_info'
      96 |         if (!IS_ERR(dev->pins->init_state))
         |                     ~~~~~~~~~^
   include/linux/device.h:46:8: note: forward declaration of 'struct dev_pin_info'
      46 | struct dev_pin_info;
         |        ^
   drivers/pci/controller/dwc/pcie-stm32.c:97:39: error: incomplete definition of type 'struct dev_pin_info'
      97 |                 ret = pinctrl_select_state(dev->pins->p, dev->pins->init_state);
         |                                            ~~~~~~~~~^
   include/linux/device.h:46:8: note: forward declaration of 'struct dev_pin_info'
      46 | struct dev_pin_info;
         |        ^
   drivers/pci/controller/dwc/pcie-stm32.c:97:53: error: incomplete definition of type 'struct dev_pin_info'
      97 |                 ret = pinctrl_select_state(dev->pins->p, dev->pins->init_state);
         |                                                          ~~~~~~~~~^
   include/linux/device.h:46:8: note: forward declaration of 'struct dev_pin_info'
      46 | struct dev_pin_info;
         |        ^
   1 warning and 3 errors generated.


vim +96 drivers/pci/controller/dwc/pcie-stm32.c

    85	
    86	static int stm32_pcie_resume_noirq(struct device *dev)
    87	{
    88		struct stm32_pcie *stm32_pcie = dev_get_drvdata(dev);
    89		int ret;
    90	
    91		/*
    92		 * The core clock is gated with CLKREQ# from the COMBOPHY REFCLK,
    93		 * thus if no device is present, must force it low with an init pinmux
    94		 * to be able to access the DBI registers.
    95		 */
  > 96		if (!IS_ERR(dev->pins->init_state))
    97			ret = pinctrl_select_state(dev->pins->p, dev->pins->init_state);
    98		else
    99			ret = pinctrl_pm_select_default_state(dev);
   100	
   101		if (ret) {
   102			dev_err(dev, "Failed to activate pinctrl pm state: %d\n", ret);
   103			return ret;
   104		}
   105	
   106		if (!device_wakeup_path(dev)) {
   107			ret = phy_init(stm32_pcie->phy);
   108			if (ret) {
   109				pinctrl_pm_select_default_state(dev);
   110				return ret;
   111			}
   112		}
   113	
   114		ret = clk_prepare_enable(stm32_pcie->clk);
   115		if (ret)
   116			goto err_phy_exit;
   117	
   118		stm32_pcie_deassert_perst(stm32_pcie);
   119	
   120		ret = dw_pcie_resume_noirq(&stm32_pcie->pci);
   121		if (ret)
   122			goto err_disable_clk;
   123	
   124		pinctrl_pm_select_default_state(dev);
   125	
   126		return 0;
   127	
   128	err_disable_clk:
   129		stm32_pcie_assert_perst(stm32_pcie);
   130		clk_disable_unprepare(stm32_pcie->clk);
   131	
   132	err_phy_exit:
   133		phy_exit(stm32_pcie->phy);
   134		pinctrl_pm_select_default_state(dev);
   135	
   136		return ret;
   137	}
   138	

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




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux