diff options
Diffstat (limited to 'arch/mips/bcm47xx')
-rw-r--r-- | arch/mips/bcm47xx/prom.c | 31 | ||||
-rw-r--r-- | arch/mips/bcm47xx/setup.c | 2 |
2 files changed, 11 insertions, 22 deletions
diff --git a/arch/mips/bcm47xx/prom.c b/arch/mips/bcm47xx/prom.c index 5cba318bc1cd..53b9a3fbc8f5 100644 --- a/arch/mips/bcm47xx/prom.c +++ b/arch/mips/bcm47xx/prom.c | |||
@@ -37,32 +37,19 @@ | |||
37 | 37 | ||
38 | static int cfe_cons_handle; | 38 | static int cfe_cons_handle; |
39 | 39 | ||
40 | static u16 get_chip_id(void) | 40 | static char bcm47xx_system_type[20] = "Broadcom BCM47XX"; |
41 | { | ||
42 | switch (bcm47xx_bus_type) { | ||
43 | #ifdef CONFIG_BCM47XX_SSB | ||
44 | case BCM47XX_BUS_TYPE_SSB: | ||
45 | return bcm47xx_bus.ssb.chip_id; | ||
46 | #endif | ||
47 | #ifdef CONFIG_BCM47XX_BCMA | ||
48 | case BCM47XX_BUS_TYPE_BCMA: | ||
49 | return bcm47xx_bus.bcma.bus.chipinfo.id; | ||
50 | #endif | ||
51 | } | ||
52 | return 0; | ||
53 | } | ||
54 | 41 | ||
55 | const char *get_system_type(void) | 42 | const char *get_system_type(void) |
56 | { | 43 | { |
57 | static char buf[50]; | 44 | return bcm47xx_system_type; |
58 | u16 chip_id = get_chip_id(); | 45 | } |
59 | |||
60 | snprintf(buf, sizeof(buf), | ||
61 | (chip_id > 0x9999) ? "Broadcom BCM%d (%s)" : | ||
62 | "Broadcom BCM%04X (%s)", | ||
63 | chip_id, bcm47xx_board_get_name()); | ||
64 | 46 | ||
65 | return buf; | 47 | __init void bcm47xx_set_system_type(u16 chip_id) |
48 | { | ||
49 | snprintf(bcm47xx_system_type, sizeof(bcm47xx_system_type), | ||
50 | (chip_id > 0x9999) ? "Broadcom BCM%d" : | ||
51 | "Broadcom BCM%04X", | ||
52 | chip_id); | ||
66 | } | 53 | } |
67 | 54 | ||
68 | void prom_putchar(char c) | 55 | void prom_putchar(char c) |
diff --git a/arch/mips/bcm47xx/setup.c b/arch/mips/bcm47xx/setup.c index 1f30571968e7..de08ba95ebac 100644 --- a/arch/mips/bcm47xx/setup.c +++ b/arch/mips/bcm47xx/setup.c | |||
@@ -210,12 +210,14 @@ void __init plat_mem_setup(void) | |||
210 | #ifdef CONFIG_BCM47XX_BCMA | 210 | #ifdef CONFIG_BCM47XX_BCMA |
211 | bcm47xx_bus_type = BCM47XX_BUS_TYPE_BCMA; | 211 | bcm47xx_bus_type = BCM47XX_BUS_TYPE_BCMA; |
212 | bcm47xx_register_bcma(); | 212 | bcm47xx_register_bcma(); |
213 | bcm47xx_set_system_type(bcm47xx_bus.bcma.bus.chipinfo.id); | ||
213 | #endif | 214 | #endif |
214 | } else { | 215 | } else { |
215 | printk(KERN_INFO "bcm47xx: using ssb bus\n"); | 216 | printk(KERN_INFO "bcm47xx: using ssb bus\n"); |
216 | #ifdef CONFIG_BCM47XX_SSB | 217 | #ifdef CONFIG_BCM47XX_SSB |
217 | bcm47xx_bus_type = BCM47XX_BUS_TYPE_SSB; | 218 | bcm47xx_bus_type = BCM47XX_BUS_TYPE_SSB; |
218 | bcm47xx_register_ssb(); | 219 | bcm47xx_register_ssb(); |
220 | bcm47xx_set_system_type(bcm47xx_bus.ssb.chip_id); | ||
219 | #endif | 221 | #endif |
220 | } | 222 | } |
221 | 223 | ||