Skip to content

Commit

Permalink
MIPS: BCM47XX: only print SoC name in system type in cpuinfo
Browse files Browse the repository at this point in the history
Recently the output of "system type" in  /proc/cpuinfo was changed to
Broadcom BCM4730 (Some sample board), but it is better to just print
the SoC name in the "system type" entry. The board name will be added
in the machine entry later.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John Crispin <blogic@openwrt.org>
Patchwork: http://patchwork.linux-mips.org/patch/5865/
  • Loading branch information
Hauke Mehrtens authored and Ralf Baechle committed Jan 22, 2014
1 parent 3a705ab commit dd57328
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 22 deletions.
31 changes: 9 additions & 22 deletions arch/mips/bcm47xx/prom.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,32 +37,19 @@

static int cfe_cons_handle;

static u16 get_chip_id(void)
{
switch (bcm47xx_bus_type) {
#ifdef CONFIG_BCM47XX_SSB
case BCM47XX_BUS_TYPE_SSB:
return bcm47xx_bus.ssb.chip_id;
#endif
#ifdef CONFIG_BCM47XX_BCMA
case BCM47XX_BUS_TYPE_BCMA:
return bcm47xx_bus.bcma.bus.chipinfo.id;
#endif
}
return 0;
}
static char bcm47xx_system_type[20] = "Broadcom BCM47XX";

const char *get_system_type(void)
{
static char buf[50];
u16 chip_id = get_chip_id();

snprintf(buf, sizeof(buf),
(chip_id > 0x9999) ? "Broadcom BCM%d (%s)" :
"Broadcom BCM%04X (%s)",
chip_id, bcm47xx_board_get_name());
return bcm47xx_system_type;
}

return buf;
__init void bcm47xx_set_system_type(u16 chip_id)
{
snprintf(bcm47xx_system_type, sizeof(bcm47xx_system_type),
(chip_id > 0x9999) ? "Broadcom BCM%d" :
"Broadcom BCM%04X",
chip_id);
}

void prom_putchar(char c)
Expand Down
2 changes: 2 additions & 0 deletions arch/mips/bcm47xx/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -210,12 +210,14 @@ void __init plat_mem_setup(void)
#ifdef CONFIG_BCM47XX_BCMA
bcm47xx_bus_type = BCM47XX_BUS_TYPE_BCMA;
bcm47xx_register_bcma();
bcm47xx_set_system_type(bcm47xx_bus.bcma.bus.chipinfo.id);
#endif
} else {
printk(KERN_INFO "bcm47xx: using ssb bus\n");
#ifdef CONFIG_BCM47XX_SSB
bcm47xx_bus_type = BCM47XX_BUS_TYPE_SSB;
bcm47xx_register_ssb();
bcm47xx_set_system_type(bcm47xx_bus.ssb.chip_id);
#endif
}

Expand Down
2 changes: 2 additions & 0 deletions arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,6 @@ void bcm47xx_fill_bcma_boardinfo(struct bcma_boardinfo *boardinfo,
const char *prefix);
#endif

void bcm47xx_set_system_type(u16 chip_id);

#endif /* __ASM_BCM47XX_H */

0 comments on commit dd57328

Please sign in to comment.