diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2015-02-11 18:11:22 +0000 |
---|---|---|
committer | Rafał Miłecki <zajec5@gmail.com> | 2015-02-11 18:11:22 +0000 |
commit | e0ec46ed4d6a993181c4e65ce37b9fa7e415768a (patch) | |
tree | 0d549f74511ba8accb9f3e74c2275fa99b2ca3c9 /target/linux/generic/patches-3.14 | |
parent | c419d3be121a35680753f4709a070b5da239d97c (diff) | |
download | upstream-e0ec46ed4d6a993181c4e65ce37b9fa7e415768a.tar.gz upstream-e0ec46ed4d6a993181c4e65ce37b9fa7e415768a.tar.bz2 upstream-e0ec46ed4d6a993181c4e65ce37b9fa7e415768a.zip |
kernel: fix bgmac check for chip ID
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44411 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic/patches-3.14')
-rw-r--r-- | target/linux/generic/patches-3.14/770-bgmac-fix-device-initialization-on-Northstar-SoCs-co.patch | 46 | ||||
-rw-r--r-- | target/linux/generic/patches-3.14/773-bgmac-add-srab-switch.patch | 8 |
2 files changed, 50 insertions, 4 deletions
diff --git a/target/linux/generic/patches-3.14/770-bgmac-fix-device-initialization-on-Northstar-SoCs-co.patch b/target/linux/generic/patches-3.14/770-bgmac-fix-device-initialization-on-Northstar-SoCs-co.patch new file mode 100644 index 0000000000..0043b4c84f --- /dev/null +++ b/target/linux/generic/patches-3.14/770-bgmac-fix-device-initialization-on-Northstar-SoCs-co.patch @@ -0,0 +1,46 @@ +From b053c5ad4d99d8f025efadd5c8b4bd84ea06eb6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com> +Date: Wed, 11 Feb 2015 17:55:32 +0100 +Subject: [PATCH FIX] bgmac: fix device initialization on Northstar SoCs + (condition typo) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +On Northstar (Broadcom's ARM architecture) we need to manually enable +all cores. Code for that is already in place, but the condition for it +was wrong. + +Signed-off-by: Rafał Miłecki <zajec5@gmail.com> +--- +Can we have it for 3.20, please? +--- + drivers/net/ethernet/broadcom/bgmac.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c +index 3007d95..728373b 100644 +--- a/drivers/net/ethernet/broadcom/bgmac.c ++++ b/drivers/net/ethernet/broadcom/bgmac.c +@@ -1412,6 +1412,7 @@ static void bgmac_mii_unregister(struct bgmac *bgmac) + /* http://bcm-v4.sipsolutions.net/mac-gbit/gmac/chipattach */ + static int bgmac_probe(struct bcma_device *core) + { ++ struct bcma_chipinfo *ci = &core->bus->chipinfo; + struct net_device *net_dev; + struct bgmac *bgmac; + struct ssb_sprom *sprom = &core->bus->sprom; +@@ -1474,8 +1475,8 @@ static int bgmac_probe(struct bcma_device *core) + bgmac_chip_reset(bgmac); + + /* For Northstar, we have to take all GMAC core out of reset */ +- if (core->id.id == BCMA_CHIP_ID_BCM4707 || +- core->id.id == BCMA_CHIP_ID_BCM53018) { ++ if (ci->id == BCMA_CHIP_ID_BCM4707 || ++ ci->id == BCMA_CHIP_ID_BCM53018) { + struct bcma_device *ns_core; + int ns_gmac; + +-- +1.8.4.5 + 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 index bf3ab93830..ef12cac9bf 100644 --- 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 @@ -30,12 +30,12 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> /************************************************** * BCMA bus ops **************************************************/ -@@ -1523,6 +1535,16 @@ static int bgmac_probe(struct bcma_devic +@@ -1524,6 +1536,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 && ++ if ((ci->id == BCMA_CHIP_ID_BCM4707 || ++ ci->id == BCMA_CHIP_ID_BCM53018) && + !bgmac_b53_pdata.regs) { + bgmac_b53_pdata.regs = ioremap_nocache(0x18007000, 0x1000); + @@ -47,7 +47,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> 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 +@@ -1550,6 +1572,10 @@ static void bgmac_remove(struct bcma_dev { struct bgmac *bgmac = bcma_get_drvdata(core); |