linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom'
@ 2020-06-12  6:14 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2020-06-12  6:14 UTC (permalink / raw)
  To: Florian Fainelli; +Cc: kbuild-all, linux-kernel, Paul Burton

[-- Attachment #1: Type: text/plain, Size: 19222 bytes --]

Hi Florian,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   b791d1bdf9212d944d749a5c7ff6febdba241771
commit: 5699ad0aaf1091824f22492a708478912c38c7d2 firmware: bcm47xx_nvram: Allow COMPILE_TEST
date:   10 months ago
config: i386-randconfig-r011-20200612 (attached as .config)
compiler: gcc-4.9 (Ubuntu 4.9.3-13ubuntu2) 4.9.3
reproduce (this is a W=1 build):
        git checkout 5699ad0aaf1091824f22492a708478912c38c7d2
        # save the attached .config to linux build tree
        make W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>, old ones prefixed by <<):

>> drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom' [-Wmissing-prototypes]
void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
^
>> drivers/firmware/broadcom/bcm47xx_sprom.c:705:5: warning: no previous prototype for 'bcm47xx_sprom_register_fallbacks' [-Wmissing-prototypes]
int bcm47xx_sprom_register_fallbacks(void)
^

vim +/bcm47xx_fill_sprom +563 drivers/firmware/broadcom/bcm47xx_sprom.c

5d24ceab4eaf0d arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  562  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03 @563  void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  564  			bool fallback)
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  565  {
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  566  	bcm47xx_fill_sprom_ethernet(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  567  	bcm47xx_fill_board_data(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  568  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  569  	nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  570  
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  571  	/* Entries requiring custom functions */
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  572  	nvram_read_alpha2(prefix, "ccode", sprom->alpha2, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  573  	if (sprom->revision >= 3)
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  574  		nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  575  				 &sprom->leddc_off_time, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  576  
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  577  	switch (sprom->revision) {
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  578  	case 4:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  579  	case 5:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  580  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  581  		bcm47xx_fill_sprom_path_r45(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  582  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  583  	case 8:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  584  	case 9:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  585  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  586  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  587  	}
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  588  
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  589  	bcm47xx_sprom_fill_auto(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  590  }
a9bba182a1f3f3 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-04-29  591  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  592  #if IS_BUILTIN(CONFIG_SSB) && IS_ENABLED(CONFIG_SSB_SPROM)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  593  static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  594  {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  595  	char prefix[10];
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  596  
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  597  	switch (bus->bustype) {
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  598  	case SSB_BUSTYPE_SSB:
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  599  		bcm47xx_fill_sprom(out, NULL, false);
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  600  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  601  	case SSB_BUSTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  602  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  603  		snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  604  			 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  605  			 PCI_SLOT(bus->host_pci->devfn));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  606  		bcm47xx_fill_sprom(out, prefix, false);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  607  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  608  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  609  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  610  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  611  	}
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  612  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  613  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  614  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  615  #if IS_BUILTIN(CONFIG_BCMA)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  616  /*
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  617   * Having many NVRAM entries for PCI devices led to repeating prefixes like
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  618   * pci/1/1/ all the time and wasting flash space. So at some point Broadcom
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  619   * decided to introduce prefixes like 0: 1: 2: etc.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  620   * If we find e.g. devpath0=pci/2/1 or devpath0=pci/2/1/ we should use 0:
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  621   * instead of pci/2/1/.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  622   */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  623  static void bcm47xx_sprom_apply_prefix_alias(char *prefix, size_t prefix_size)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  624  {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  625  	size_t prefix_len = strlen(prefix);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  626  	size_t short_len = prefix_len - 1;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  627  	char nvram_var[10];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  628  	char buf[20];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  629  	int i;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  630  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  631  	/* Passed prefix has to end with a slash */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  632  	if (prefix_len <= 0 || prefix[prefix_len - 1] != '/')
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  633  		return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  634  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  635  	for (i = 0; i < 3; i++) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  636  		if (snprintf(nvram_var, sizeof(nvram_var), "devpath%d", i) <= 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  637  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  638  		if (bcm47xx_nvram_getenv(nvram_var, buf, sizeof(buf)) < 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  639  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  640  		if (!strcmp(buf, prefix) ||
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  641  		    (short_len && strlen(buf) == short_len && !strncmp(buf, prefix, short_len))) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  642  			snprintf(prefix, prefix_size, "%d:", i);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  643  			return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  644  		}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  645  	}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  646  }
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  647  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  648  static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  649  {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  650  	struct bcma_boardinfo *binfo = &bus->boardinfo;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  651  	struct bcma_device *core;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  652  	char buf[10];
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  653  	char *prefix;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  654  	bool fallback = false;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  655  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  656  	switch (bus->hosttype) {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  657  	case BCMA_HOSTTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  658  		memset(out, 0, sizeof(struct ssb_sprom));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  659  		/* On BCM47XX all PCI buses share the same domain */
97f2645f358b41 drivers/firmware/broadcom/bcm47xx_sprom.c Masahiro Yamada 2016-08-03  660  		if (IS_ENABLED(CONFIG_BCM47XX))
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  661  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  662  				 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  663  				 PCI_SLOT(bus->host_pci->devfn));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  664  		else
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  665  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  666  				 pci_domain_nr(bus->host_pci->bus) + 1,
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  667  				 bus->host_pci->bus->number);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  668  		bcm47xx_sprom_apply_prefix_alias(buf, sizeof(buf));
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  669  		prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  670  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  671  	case BCMA_HOSTTYPE_SOC:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  672  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  673  		core = bcma_find_core(bus, BCMA_CORE_80211);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  674  		if (core) {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  675  			snprintf(buf, sizeof(buf), "sb/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  676  				 core->core_index);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  677  			prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  678  			fallback = true;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  679  		} else {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  680  			prefix = NULL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  681  		}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  682  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  683  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  684  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  685  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  686  	}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  687  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  688  	nvram_read_u16(prefix, NULL, "boardvendor", &binfo->vendor, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  689  	if (!binfo->vendor)
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  690  		binfo->vendor = SSB_BOARDVENDOR_BCM;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  691  	nvram_read_u16(prefix, NULL, "boardtype", &binfo->type, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  692  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  693  	bcm47xx_fill_sprom(out, prefix, fallback);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  694  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  695  	return 0;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  696  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  697  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  698  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  699  static unsigned int bcm47xx_sprom_registered;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  700  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  701  /*
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  702   * On bcm47xx we need to register SPROM fallback handler very early, so we can't
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  703   * use anything like platform device / driver for this.
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  704   */
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25 @705  int bcm47xx_sprom_register_fallbacks(void)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  706  {
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  707  	if (bcm47xx_sprom_registered)
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  708  		return 0;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  709  

:::::: The code at line 563 was first introduced by commit
:::::: b8ebbaff03798180c4d9661105670e03276afe83 MIPS: BCM47xx: sprom: read values without prefix as fallback

:::::: TO: Hauke Mehrtens <hauke@hauke-m.de>
:::::: CC: John Crispin <blogic@openwrt.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 36872 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom'
@ 2020-07-26  0:28 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2020-07-26  0:28 UTC (permalink / raw)
  To: Florian Fainelli; +Cc: kbuild-all, linux-kernel, Paul Burton

[-- Attachment #1: Type: text/plain, Size: 19289 bytes --]

Hi Florian,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   04300d66f0a06d572d9f2ad6768c38cabde22179
commit: 5699ad0aaf1091824f22492a708478912c38c7d2 firmware: bcm47xx_nvram: Allow COMPILE_TEST
date:   11 months ago
config: i386-randconfig-r003-20200726 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
        git checkout 5699ad0aaf1091824f22492a708478912c38c7d2
        # save the attached .config to linux build tree
        make W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom' [-Wmissing-prototypes]
     563 | void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
         |      ^~~~~~~~~~~~~~~~~~
>> drivers/firmware/broadcom/bcm47xx_sprom.c:705:5: warning: no previous prototype for 'bcm47xx_sprom_register_fallbacks' [-Wmissing-prototypes]
     705 | int bcm47xx_sprom_register_fallbacks(void)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/bcm47xx_fill_sprom +563 drivers/firmware/broadcom/bcm47xx_sprom.c

5d24ceab4eaf0d arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  562  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03 @563  void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  564  			bool fallback)
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  565  {
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  566  	bcm47xx_fill_sprom_ethernet(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  567  	bcm47xx_fill_board_data(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  568  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  569  	nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  570  
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  571  	/* Entries requiring custom functions */
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  572  	nvram_read_alpha2(prefix, "ccode", sprom->alpha2, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  573  	if (sprom->revision >= 3)
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  574  		nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  575  				 &sprom->leddc_off_time, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  576  
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  577  	switch (sprom->revision) {
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  578  	case 4:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  579  	case 5:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  580  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  581  		bcm47xx_fill_sprom_path_r45(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  582  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  583  	case 8:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  584  	case 9:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  585  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  586  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  587  	}
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  588  
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  589  	bcm47xx_sprom_fill_auto(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  590  }
a9bba182a1f3f3 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-04-29  591  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  592  #if IS_BUILTIN(CONFIG_SSB) && IS_ENABLED(CONFIG_SSB_SPROM)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  593  static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  594  {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  595  	char prefix[10];
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  596  
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  597  	switch (bus->bustype) {
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  598  	case SSB_BUSTYPE_SSB:
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  599  		bcm47xx_fill_sprom(out, NULL, false);
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  600  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  601  	case SSB_BUSTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  602  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  603  		snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  604  			 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  605  			 PCI_SLOT(bus->host_pci->devfn));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  606  		bcm47xx_fill_sprom(out, prefix, false);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  607  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  608  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  609  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  610  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  611  	}
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  612  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  613  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  614  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  615  #if IS_BUILTIN(CONFIG_BCMA)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  616  /*
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  617   * Having many NVRAM entries for PCI devices led to repeating prefixes like
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  618   * pci/1/1/ all the time and wasting flash space. So at some point Broadcom
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  619   * decided to introduce prefixes like 0: 1: 2: etc.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  620   * If we find e.g. devpath0=pci/2/1 or devpath0=pci/2/1/ we should use 0:
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  621   * instead of pci/2/1/.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  622   */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  623  static void bcm47xx_sprom_apply_prefix_alias(char *prefix, size_t prefix_size)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  624  {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  625  	size_t prefix_len = strlen(prefix);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  626  	size_t short_len = prefix_len - 1;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  627  	char nvram_var[10];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  628  	char buf[20];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  629  	int i;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  630  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  631  	/* Passed prefix has to end with a slash */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  632  	if (prefix_len <= 0 || prefix[prefix_len - 1] != '/')
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  633  		return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  634  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  635  	for (i = 0; i < 3; i++) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  636  		if (snprintf(nvram_var, sizeof(nvram_var), "devpath%d", i) <= 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  637  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  638  		if (bcm47xx_nvram_getenv(nvram_var, buf, sizeof(buf)) < 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  639  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  640  		if (!strcmp(buf, prefix) ||
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  641  		    (short_len && strlen(buf) == short_len && !strncmp(buf, prefix, short_len))) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  642  			snprintf(prefix, prefix_size, "%d:", i);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  643  			return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  644  		}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  645  	}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  646  }
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  647  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  648  static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  649  {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  650  	struct bcma_boardinfo *binfo = &bus->boardinfo;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  651  	struct bcma_device *core;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  652  	char buf[10];
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  653  	char *prefix;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  654  	bool fallback = false;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  655  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  656  	switch (bus->hosttype) {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  657  	case BCMA_HOSTTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  658  		memset(out, 0, sizeof(struct ssb_sprom));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  659  		/* On BCM47XX all PCI buses share the same domain */
97f2645f358b41 drivers/firmware/broadcom/bcm47xx_sprom.c Masahiro Yamada 2016-08-03  660  		if (IS_ENABLED(CONFIG_BCM47XX))
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  661  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  662  				 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  663  				 PCI_SLOT(bus->host_pci->devfn));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  664  		else
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  665  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  666  				 pci_domain_nr(bus->host_pci->bus) + 1,
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  667  				 bus->host_pci->bus->number);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  668  		bcm47xx_sprom_apply_prefix_alias(buf, sizeof(buf));
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  669  		prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  670  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  671  	case BCMA_HOSTTYPE_SOC:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  672  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  673  		core = bcma_find_core(bus, BCMA_CORE_80211);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  674  		if (core) {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  675  			snprintf(buf, sizeof(buf), "sb/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  676  				 core->core_index);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  677  			prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  678  			fallback = true;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  679  		} else {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  680  			prefix = NULL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  681  		}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  682  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  683  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  684  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  685  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  686  	}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  687  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  688  	nvram_read_u16(prefix, NULL, "boardvendor", &binfo->vendor, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  689  	if (!binfo->vendor)
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  690  		binfo->vendor = SSB_BOARDVENDOR_BCM;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  691  	nvram_read_u16(prefix, NULL, "boardtype", &binfo->type, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  692  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  693  	bcm47xx_fill_sprom(out, prefix, fallback);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  694  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  695  	return 0;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  696  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  697  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  698  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  699  static unsigned int bcm47xx_sprom_registered;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  700  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  701  /*
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  702   * On bcm47xx we need to register SPROM fallback handler very early, so we can't
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  703   * use anything like platform device / driver for this.
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  704   */
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25 @705  int bcm47xx_sprom_register_fallbacks(void)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  706  {
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  707  	if (bcm47xx_sprom_registered)
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  708  		return 0;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  709  

:::::: The code at line 563 was first introduced by commit
:::::: b8ebbaff03798180c4d9661105670e03276afe83 MIPS: BCM47xx: sprom: read values without prefix as fallback

:::::: TO: Hauke Mehrtens <hauke@hauke-m.de>
:::::: CC: John Crispin <blogic@openwrt.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 43725 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom'
@ 2020-07-13  5:54 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2020-07-13  5:54 UTC (permalink / raw)
  To: Florian Fainelli; +Cc: kbuild-all, linux-kernel, Paul Burton

[-- Attachment #1: Type: text/plain, Size: 19287 bytes --]

Hi Florian,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   11ba468877bb23f28956a35e896356252d63c983
commit: 5699ad0aaf1091824f22492a708478912c38c7d2 firmware: bcm47xx_nvram: Allow COMPILE_TEST
date:   11 months ago
config: i386-randconfig-r022-20200713 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
        git checkout 5699ad0aaf1091824f22492a708478912c38c7d2
        # save the attached .config to linux build tree
        make W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom' [-Wmissing-prototypes]
     563 | void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
         |      ^~~~~~~~~~~~~~~~~~
>> drivers/firmware/broadcom/bcm47xx_sprom.c:705:5: warning: no previous prototype for 'bcm47xx_sprom_register_fallbacks' [-Wmissing-prototypes]
     705 | int bcm47xx_sprom_register_fallbacks(void)
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

vim +/bcm47xx_fill_sprom +563 drivers/firmware/broadcom/bcm47xx_sprom.c

5d24ceab4eaf0d arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  562  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03 @563  void bcm47xx_fill_sprom(struct ssb_sprom *sprom, const char *prefix,
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  564  			bool fallback)
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  565  {
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  566  	bcm47xx_fill_sprom_ethernet(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  567  	bcm47xx_fill_board_data(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  568  
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  569  	nvram_read_u8(prefix, NULL, "sromrev", &sprom->revision, 0, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  570  
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  571  	/* Entries requiring custom functions */
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  572  	nvram_read_alpha2(prefix, "ccode", sprom->alpha2, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  573  	if (sprom->revision >= 3)
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  574  		nvram_read_leddc(prefix, "leddc", &sprom->leddc_on_time,
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  575  				 &sprom->leddc_off_time, fallback);
590605c6bc31d5 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-06-21  576  
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  577  	switch (sprom->revision) {
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  578  	case 4:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  579  	case 5:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  580  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  581  		bcm47xx_fill_sprom_path_r45(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  582  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  583  	case 8:
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  584  	case 9:
b8ebbaff037981 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-10-03  585  		bcm47xx_fill_sprom_path_r4589(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  586  		break;
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  587  	}
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  588  
d55a52ccf8f80c arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-04-02  589  	bcm47xx_sprom_fill_auto(sprom, prefix, fallback);
019eee2e34e2d1 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-02-28  590  }
a9bba182a1f3f3 arch/mips/bcm47xx/sprom.c                 Hauke Mehrtens  2012-04-29  591  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  592  #if IS_BUILTIN(CONFIG_SSB) && IS_ENABLED(CONFIG_SSB_SPROM)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  593  static int bcm47xx_get_sprom_ssb(struct ssb_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  594  {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  595  	char prefix[10];
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  596  
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  597  	switch (bus->bustype) {
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  598  	case SSB_BUSTYPE_SSB:
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  599  		bcm47xx_fill_sprom(out, NULL, false);
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  600  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  601  	case SSB_BUSTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  602  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  603  		snprintf(prefix, sizeof(prefix), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  604  			 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  605  			 PCI_SLOT(bus->host_pci->devfn));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  606  		bcm47xx_fill_sprom(out, prefix, false);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  607  		return 0;
daa7ce02513d21 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-10-25  608  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  609  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  610  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  611  	}
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  612  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  613  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  614  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  615  #if IS_BUILTIN(CONFIG_BCMA)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  616  /*
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  617   * Having many NVRAM entries for PCI devices led to repeating prefixes like
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  618   * pci/1/1/ all the time and wasting flash space. So at some point Broadcom
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  619   * decided to introduce prefixes like 0: 1: 2: etc.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  620   * If we find e.g. devpath0=pci/2/1 or devpath0=pci/2/1/ we should use 0:
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  621   * instead of pci/2/1/.
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  622   */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  623  static void bcm47xx_sprom_apply_prefix_alias(char *prefix, size_t prefix_size)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  624  {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  625  	size_t prefix_len = strlen(prefix);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  626  	size_t short_len = prefix_len - 1;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  627  	char nvram_var[10];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  628  	char buf[20];
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  629  	int i;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  630  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  631  	/* Passed prefix has to end with a slash */
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  632  	if (prefix_len <= 0 || prefix[prefix_len - 1] != '/')
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  633  		return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  634  
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  635  	for (i = 0; i < 3; i++) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  636  		if (snprintf(nvram_var, sizeof(nvram_var), "devpath%d", i) <= 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  637  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  638  		if (bcm47xx_nvram_getenv(nvram_var, buf, sizeof(buf)) < 0)
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  639  			continue;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  640  		if (!strcmp(buf, prefix) ||
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  641  		    (short_len && strlen(buf) == short_len && !strncmp(buf, prefix, short_len))) {
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  642  			snprintf(prefix, prefix_size, "%d:", i);
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  643  			return;
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  644  		}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  645  	}
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  646  }
9a6a2b96dfd8b0 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-03-14  647  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  648  static int bcm47xx_get_sprom_bcma(struct bcma_bus *bus, struct ssb_sprom *out)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  649  {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  650  	struct bcma_boardinfo *binfo = &bus->boardinfo;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  651  	struct bcma_device *core;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  652  	char buf[10];
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  653  	char *prefix;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  654  	bool fallback = false;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  655  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  656  	switch (bus->hosttype) {
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  657  	case BCMA_HOSTTYPE_PCI:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  658  		memset(out, 0, sizeof(struct ssb_sprom));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  659  		/* On BCM47XX all PCI buses share the same domain */
97f2645f358b41 drivers/firmware/broadcom/bcm47xx_sprom.c Masahiro Yamada 2016-08-03  660  		if (IS_ENABLED(CONFIG_BCM47XX))
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  661  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  662  				 bus->host_pci->bus->number + 1,
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  663  				 PCI_SLOT(bus->host_pci->devfn));
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  664  		else
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  665  			snprintf(buf, sizeof(buf), "pci/%u/%u/",
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  666  				 pci_domain_nr(bus->host_pci->bus) + 1,
3d1f664ab94038 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2016-01-01  667  				 bus->host_pci->bus->number);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  668  		bcm47xx_sprom_apply_prefix_alias(buf, sizeof(buf));
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  669  		prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  670  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  671  	case BCMA_HOSTTYPE_SOC:
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  672  		memset(out, 0, sizeof(struct ssb_sprom));
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  673  		core = bcma_find_core(bus, BCMA_CORE_80211);
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  674  		if (core) {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  675  			snprintf(buf, sizeof(buf), "sb/%u/",
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  676  				 core->core_index);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  677  			prefix = buf;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  678  			fallback = true;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  679  		} else {
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  680  			prefix = NULL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  681  		}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  682  		break;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  683  	default:
d548ca6b0784a9 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-12-10  684  		pr_warn("Unable to fill SPROM for given bustype.\n");
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  685  		return -EINVAL;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  686  	}
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  687  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  688  	nvram_read_u16(prefix, NULL, "boardvendor", &binfo->vendor, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  689  	if (!binfo->vendor)
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  690  		binfo->vendor = SSB_BOARDVENDOR_BCM;
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  691  	nvram_read_u16(prefix, NULL, "boardtype", &binfo->type, 0, true);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  692  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  693  	bcm47xx_fill_sprom(out, prefix, fallback);
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  694  
2623899459da55 arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2015-05-12  695  	return 0;
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  696  }
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  697  #endif
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  698  
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  699  static unsigned int bcm47xx_sprom_registered;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  700  
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  701  /*
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  702   * On bcm47xx we need to register SPROM fallback handler very early, so we can't
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  703   * use anything like platform device / driver for this.
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  704   */
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25 @705  int bcm47xx_sprom_register_fallbacks(void)
a59da8fb3b2a1f arch/mips/bcm47xx/sprom.c                 Rafał Miłecki   2014-10-28  706  {
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  707  	if (bcm47xx_sprom_registered)
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  708  		return 0;
2ab71a02c56f82 drivers/firmware/broadcom/bcm47xx_sprom.c Rafał Miłecki   2016-01-25  709  

:::::: The code at line 563 was first introduced by commit
:::::: b8ebbaff03798180c4d9661105670e03276afe83 MIPS: BCM47xx: sprom: read values without prefix as fallback

:::::: TO: Hauke Mehrtens <hauke@hauke-m.de>
:::::: CC: John Crispin <blogic@openwrt.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 32955 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-07-26  1:18 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-12  6:14 drivers/firmware/broadcom/bcm47xx_sprom.c:563:6: warning: no previous prototype for 'bcm47xx_fill_sprom' kernel test robot
2020-07-13  5:54 kernel test robot
2020-07-26  0:28 kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).