All of lore.kernel.org
 help / color / mirror / Atom feed
* [chrome-os:chromeos-6.6 275/275] drivers/pmdomain/mediatek/mtk-scpsys.c:943:13: warning: no previous prototype for 'init_scp'
@ 2025-01-15 17:23 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-01-15 17:23 UTC (permalink / raw)
  To: cros-kernel-buildreports; +Cc: oe-kbuild-all

tree:   https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-6.6
head:   0014573e8c8416a944ddeb1015b257d2bf148222
commit: 5c7b16c63a5bb549975112a6402d06e91c0a5aea [275/275] CHROMIUM: pmdomain: mediatek: add mt8196 power domain driver
config: i386-buildonly-randconfig-003-20250115 (https://download.01.org/0day-ci/archive/20250116/202501160144.VzafSTa7-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250116/202501160144.VzafSTa7-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501160144.VzafSTa7-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/pmdomain/mediatek/mtk-scpsys.c:943:13: warning: no previous prototype for 'init_scp' [-Wmissing-prototypes]
     943 | struct scp *init_scp(struct platform_device *pdev, const struct scp_soc_data *soc)
         |             ^~~~~~~~
--
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_comp' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_done_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_set_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_clr_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_en_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_set_sta_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_clr_sta_ofs' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'hwv_shift' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'sram_slp_bits' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'sram_slp_ack_bits' not described in 'scp_domain_data'
>> drivers/pmdomain/mediatek/mtk-scpsys.c:206: warning: Function parameter or member 'bp_table' not described in 'scp_domain_data'


vim +/init_scp +943 drivers/pmdomain/mediatek/mtk-scpsys.c

   942	
 > 943	struct scp *init_scp(struct platform_device *pdev, const struct scp_soc_data *soc)
   944	{
   945		struct genpd_onecell_data *pd_data;
   946		struct resource *res;
   947		int i, j;
   948		struct scp *scp;
   949		struct clk *clk[CLK_MAX];
   950		int ret;
   951	
   952		scp = devm_kzalloc(&pdev->dev, sizeof(*scp), GFP_KERNEL);
   953		if (!scp)
   954			return ERR_PTR(-ENOMEM);
   955	
   956		scp->ctrl_reg.pwr_sta_offs = soc->regs.pwr_sta_offs;
   957		scp->ctrl_reg.pwr_sta2nd_offs = soc->regs.pwr_sta2nd_offs;
   958	
   959		scp->bus_prot_reg_update = soc->bus_prot_reg_update;
   960	
   961		scp->dev = &pdev->dev;
   962	
   963		res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
   964		scp->base = devm_ioremap_resource(&pdev->dev, res);
   965		if (IS_ERR(scp->base))
   966			return ERR_CAST(scp->base);
   967	
   968		scp->domains = devm_kcalloc(&pdev->dev,
   969					soc->num_domains, sizeof(*scp->domains), GFP_KERNEL);
   970		if (!scp->domains)
   971			return ERR_PTR(-ENOMEM);
   972	
   973		pd_data = &scp->pd_data;
   974	
   975		pd_data->domains = devm_kcalloc(&pdev->dev,
   976				soc->num_domains, sizeof(*pd_data->domains), GFP_KERNEL);
   977		if (!pd_data->domains)
   978			return ERR_PTR(-ENOMEM);
   979	
   980		if (soc->bp_list && soc->num_bp > 0) {
   981			scp->num_bp = soc->num_bp;
   982			scp->bp_regmap = devm_kcalloc(&pdev->dev,
   983					scp->num_bp, sizeof(*scp->bp_regmap), GFP_KERNEL);
   984			if (!scp->bp_regmap)
   985				return ERR_PTR(-ENOMEM);
   986	
   987			/* get bus prot regmap from dts node, 0 means invalid bus type */
   988			for (i = 1; i < scp->num_bp; i++) {
   989				ret = mtk_pd_get_regmap(pdev, &scp->bp_regmap[i], soc->bp_list[i]);
   990				if (ret)
   991					return ERR_PTR(ret);
   992			}
   993		} else {
   994			scp->infracfg = syscon_regmap_lookup_by_phandle(pdev->dev.of_node,
   995					"infracfg");
   996			if (IS_ERR(scp->infracfg)) {
   997				dev_err(&pdev->dev, "Cannot find infracfg controller: %ld\n",
   998						PTR_ERR(scp->infracfg));
   999				return ERR_CAST(scp->infracfg);
  1000			}
  1001		}
  1002	
  1003		for (i = 0; i < soc->num_domains; i++) {
  1004			struct scp_domain *scpd = &scp->domains[i];
  1005			const struct scp_domain_data *data = &soc->domains[i];
  1006	
  1007			scpd->supply = devm_regulator_get_optional(&pdev->dev, data->name);
  1008			if (IS_ERR(scpd->supply)) {
  1009				if (PTR_ERR(scpd->supply) == -ENODEV)
  1010					scpd->supply = NULL;
  1011				else
  1012					return ERR_CAST(scpd->supply);
  1013			}
  1014		}
  1015	
  1016		pd_data->num_domains = soc->num_domains;
  1017	
  1018		init_clks(pdev, clk);
  1019	
  1020		for (i = 0; i < soc->num_domains; i++) {
  1021			struct scp_domain *scpd = &scp->domains[i];
  1022			struct generic_pm_domain *genpd = &scpd->genpd;
  1023			const struct scp_domain_data *data = &soc->domains[i];
  1024	
  1025			pd_data->domains[i] = genpd;
  1026			scpd->scp = scp;
  1027	
  1028			scpd->data = data;
  1029	
  1030			for (j = 0; j < MAX_CLKS && data->clk_id[j]; j++) {
  1031				struct clk *c = clk[data->clk_id[j]];
  1032	
  1033				if (IS_ERR(c)) {
  1034					dev_err(&pdev->dev, "%s: clk unavailable\n",
  1035						data->name);
  1036					return ERR_CAST(c);
  1037				}
  1038	
  1039				scpd->clk[j] = c;
  1040			}
  1041	
  1042			if (data->hwv_comp) {
  1043				ret = mtk_pd_get_regmap(pdev, &scpd->hwv_regmap, data->hwv_comp);
  1044				if (ret)
  1045					return ERR_PTR(ret);
  1046			}
  1047	
  1048			genpd->name = data->name;
  1049			if (MTK_SCPD_CAPS(scpd, MTK_SCPD_HWV_OPS)) {
  1050				genpd->power_on = scpsys_hwv_power_on;
  1051				genpd->power_off = scpsys_hwv_power_off;
  1052			} else {
  1053				genpd->power_off = scpsys_power_off;
  1054				genpd->power_on = scpsys_power_on;
  1055			}
  1056			if (MTK_SCPD_CAPS(scpd, MTK_SCPD_ACTIVE_WAKEUP))
  1057				genpd->flags |= GENPD_FLAG_ACTIVE_WAKEUP;
  1058			if (MTK_SCPD_CAPS(scpd, MTK_SCPD_IRQ_SAVE))
  1059				genpd->flags |= GENPD_FLAG_IRQ_SAFE;
  1060			if (MTK_SCPD_CAPS(scpd, MTK_SCPD_ALWAYS_ON))
  1061				genpd->flags |= GENPD_FLAG_ALWAYS_ON;
  1062		}
  1063	
  1064		return scp;
  1065	}
  1066	

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-01-15 17:24 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-15 17:23 [chrome-os:chromeos-6.6 275/275] drivers/pmdomain/mediatek/mtk-scpsys.c:943:13: warning: no previous prototype for 'init_scp' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.