diff options
Diffstat (limited to 'target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch')
-rw-r--r-- | target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch b/target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch deleted file mode 100644 index fe52ccc..0000000 --- a/target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch +++ /dev/null @@ -1,72 +0,0 @@ -Register switch connected to srab - -Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> - ---- a/drivers/net/ethernet/broadcom/bgmac.c -+++ b/drivers/net/ethernet/broadcom/bgmac.c -@@ -16,6 +16,7 @@ - #include <linux/phy.h> - #include <linux/interrupt.h> - #include <linux/dma-mapping.h> -+#include <linux/platform_data/b53.h> - #include <bcm47xx_nvram.h> - - static const struct bcma_device_id bgmac_bcma_tbl[] = { -@@ -1405,6 +1406,17 @@ static void bgmac_mii_unregister(struct - mdiobus_free(mii_bus); - } - -+static struct b53_platform_data bgmac_b53_pdata = { -+}; -+ -+static struct platform_device bgmac_b53_dev = { -+ .name = "b53-srab-switch", -+ .id = -1, -+ .dev = { -+ .platform_data = &bgmac_b53_pdata, -+ }, -+}; -+ - /************************************************** - * BCMA bus ops - **************************************************/ -@@ -1521,6 +1533,16 @@ static int bgmac_probe(struct bcma_devic - goto err_dma_free; - } - -+ if (core->id.id != BCMA_CHIP_ID_BCM4707 && -+ core->id.id != BCMA_CHIP_ID_BCM53018 && -+ !bgmac_b53_pdata.regs) { -+ bgmac_b53_pdata.regs = ioremap_nocache(0x18007000, 0x1000); -+ -+ err = platform_device_register(&bgmac_b53_dev); -+ if (!err) -+ bgmac->b53_device = &bgmac_b53_dev; -+ } -+ - err = register_netdev(bgmac->net_dev); - if (err) { - bgmac_err(bgmac, "Cannot register net device\n"); -@@ -1549,6 +1571,10 @@ static void bgmac_remove(struct bcma_dev - { - struct bgmac *bgmac = bcma_get_drvdata(core); - -+ if (bgmac->b53_device) -+ platform_device_unregister(&bgmac_b53_dev); -+ bgmac->b53_device = NULL; -+ - netif_napi_del(&bgmac->napi); - unregister_netdev(bgmac->net_dev); - bgmac_mii_unregister(bgmac); ---- a/drivers/net/ethernet/broadcom/bgmac.h -+++ b/drivers/net/ethernet/broadcom/bgmac.h -@@ -457,6 +457,9 @@ struct bgmac { - bool has_robosw; - - bool loopback; -+ -+ /* platform device for associated switch */ -+ struct platform_device *b53_device; - }; - - static inline u32 bgmac_read(struct bgmac *bgmac, u16 offset) |