summaryrefslogtreecommitdiff
path: root/target/linux/brcm47xx/files/arch/mips/bcm947xx
diff options
context:
space:
mode:
authormb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-17 13:06:45 +0000
committermb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-17 13:06:45 +0000
commitf6b242d80b0fd6e280c4a9379bc97323944a0a79 (patch)
tree8f980a241e954988c283d2d3e30a2b0be8b18f55 /target/linux/brcm47xx/files/arch/mips/bcm947xx
parentb776f2e6cf714862106b42fc9adeb021363677f9 (diff)
bcm47xx: We can use the ssb-invariants callback now,
as was changed to be called late enough. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10476 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx/files/arch/mips/bcm947xx')
-rw-r--r--target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c b/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
index bd99afaab4..008634a7e8 100644
--- a/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
+++ b/target/linux/brcm47xx/files/arch/mips/bcm947xx/setup.c
@@ -88,11 +88,6 @@ static void e_aton(char *str, char *dest)
static void bcm47xx_fill_sprom(struct ssb_sprom *sprom)
{
- // TODO
-}
-
-static void bcm47xx_fill_sprom_nvram(struct ssb_sprom *sprom)
-{
char *s;
memset(sprom, 0xFF, sizeof(struct ssb_sprom));
@@ -153,7 +148,9 @@ static int bcm47xx_get_invariants(struct ssb_bus *bus, struct ssb_init_invariant
iv->boardinfo.type = (u16)simple_strtoul(s, NULL, 0);
if ((s = nvram_get("boardrev")))
iv->boardinfo.rev = (u16)simple_strtoul(s, NULL, 0);
+
bcm47xx_fill_sprom(&iv->sprom);
+
return 0;
}
@@ -171,10 +168,6 @@ void __init plat_mem_setup(void)
}
mcore = &ssb.mipscore;
- /* FIXME: the nvram init depends on the ssb being fully initializes,
- * can't use the fill_sprom callback yet! */
- bcm47xx_fill_sprom_nvram(&ssb.sprom);
-
s = nvram_get("kernel_args");
if (s && !strncmp(s, "console=ttyS1", 13)) {
struct ssb_serial_port port;
@@ -193,7 +186,7 @@ void __init plat_mem_setup(void)
memset(&s, 0, sizeof(s));
s.line = i;
s.membase = port->regs;
- s.irq = port->irq + 2;//FIXME?
+ s.irq = port->irq + 2;
s.uartclk = port->baud_base;
s.flags = UPF_BOOT_AUTOCONF | UPF_SHARE_IRQ;
s.iotype = SERIAL_IO_MEM;