From 9b919a07e068953d4435ae65a6bf9a028f5da05f Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 18 Feb 2012 23:08:26 +0000 Subject: brcm47xx: sprom for nvram parsing This adds support for parsing sprom form nvram for sprom version form 1 to 9. It also adds sprom from nvram support for devices on the bcma bus. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30638 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'target/linux/brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch') diff --git a/target/linux/brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch b/target/linux/brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch index 0dd1968150..3ae5711535 100644 --- a/target/linux/brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch +++ b/target/linux/brcm47xx/patches-3.2/0043-bcma-add-extra-sprom-check.patch @@ -14,7 +14,7 @@ Signed-off-by: Hauke Mehrtens --- a/drivers/bcma/sprom.c +++ b/drivers/bcma/sprom.c -@@ -210,6 +210,7 @@ int bcma_sprom_get(struct bcma_bus *bus) +@@ -209,6 +209,7 @@ int bcma_sprom_get(struct bcma_bus *bus) { u16 offset; u16 *sprom; @@ -22,14 +22,13 @@ Signed-off-by: Hauke Mehrtens int err = 0; if (!bus->drv_cc.core) -@@ -220,6 +221,13 @@ int bcma_sprom_get(struct bcma_bus *bus) +@@ -217,6 +218,12 @@ int bcma_sprom_get(struct bcma_bus *bus) + if (!(bus->drv_cc.capabilities & BCMA_CC_CAP_SPROM)) return -ENOENT; - } + if (bus->drv_cc.core->id.rev >= 32) { + sromctrl = bcma_read32(bus->drv_cc.core, BCMA_CC_SROM_CONTROL); + if (!(sromctrl & BCMA_CC_SROM_CONTROL_PRESENT)) -+ random_ether_addr(bus->sprom.il0mac); + return -ENOENT; + } + -- cgit v1.2.3