1 bgmac: make bgmac work on systems without nvram
3 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 drivers/net/ethernet/broadcom/bgmac.c | 4 ++++
6 1 file changed, 4 insertions(+)
8 --- a/drivers/net/ethernet/broadcom/Kconfig
9 +++ b/drivers/net/ethernet/broadcom/Kconfig
10 @@ -132,7 +132,7 @@ config BNX2X_SRIOV
13 tristate "BCMA bus GBit core support"
14 - depends on BCMA_HOST_SOC && HAS_DMA && BCM47XX
15 + depends on BCMA_HOST_SOC && HAS_DMA
18 This driver supports GBit MAC and BCM4706 GBit MAC cores on BCMA bus.
19 --- a/drivers/net/ethernet/broadcom/bgmac.c
20 +++ b/drivers/net/ethernet/broadcom/bgmac.c
22 #include <linux/interrupt.h>
23 #include <linux/dma-mapping.h>
24 #include <linux/platform_data/b53.h>
25 +#ifdef CONFIG_BCM47XX
26 #include <bcm47xx_nvram.h>
28 +#define bcm47xx_nvram_getenv(a, b, c) -1
31 static const struct bcma_device_id bgmac_bcma_tbl[] = {
32 BCMA_CORE(BCMA_MANUF_BCM, BCMA_CORE_4706_MAC_GBIT, BCMA_ANY_REV, BCMA_ANY_CLASS),
33 @@ -1445,7 +1449,7 @@ static int bgmac_probe(struct bcma_devic
36 /* We don't support 2nd, 3rd, ... units, SPROM has to be adjusted */
37 - if (core->core_unit > 1) {
38 + if (core->core_unit > 0) {
39 pr_err("Unsupported core_unit %d\n", core->core_unit);
42 @@ -1541,8 +1545,7 @@ static int bgmac_probe(struct bcma_devic
43 /* TODO: reset the external phy. Specs are needed */
44 bgmac_phy_reset(bgmac);
46 - bgmac->has_robosw = !!(core->bus->sprom.boardflags_lo &
47 - BGMAC_BFL_ENETROBO);
48 + bgmac->has_robosw = 1;
49 if (bgmac->has_robosw)
50 bgmac_warn(bgmac, "Support for Roboswitch not implemented\n");