 74d00a8c38
			
		
	
	74d00a8c38
	
	
	
		
			
			* properly format/comment all patches * merge debloat patches * merge Kconfig patches * merge swconfig patches * merge hotplug patches * drop 200-fix_localversion.patch - upstream * drop 222-arm_zimage_none.patch - unused * drop 252-mv_cesa_depends.patch - no longer required * drop 410-mtd-move-forward-declaration-of-struct-mtd_info.patch - unused * drop 661-fq_codel_keep_dropped_stats.patch - outdated * drop 702-phy_add_aneg_done_function.patch - upstream * drop 840-rtc7301.patch - unused * drop 841-rtc_pt7c4338.patch - upstream * drop 921-use_preinit_as_init.patch - unused * drop spio-gpio-old and gpio-mmc - unused Signed-off-by: John Crispin <john@phrozen.org>
		
			
				
	
	
		
			54 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 8e6f31baba7e2c13ab7e954fe6179420a7545a8b Mon Sep 17 00:00:00 2001
 | |
| From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
 | |
| Date: Tue, 31 Jan 2017 19:37:56 +0100
 | |
| Subject: [PATCH 3/3] net: bgmac: use PHY subsystem for initializing PHY
 | |
| MIME-Version: 1.0
 | |
| Content-Type: text/plain; charset=UTF-8
 | |
| Content-Transfer-Encoding: 8bit
 | |
| 
 | |
| This adds support for using bgmac with PHYs supported by standalone PHY
 | |
| drivers. Having any PHY initialization in bgmac is hacky and shouldn't
 | |
| be extended but rather removed if anyone has hardware to test it.
 | |
| 
 | |
| Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 | |
| Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
 | |
| Signed-off-by: David S. Miller <davem@davemloft.net>
 | |
| ---
 | |
|  drivers/net/ethernet/broadcom/bgmac-bcma-mdio.c | 10 ++++++++++
 | |
|  1 file changed, 10 insertions(+)
 | |
| 
 | |
| --- a/drivers/net/ethernet/broadcom/bgmac-bcma-mdio.c
 | |
| +++ b/drivers/net/ethernet/broadcom/bgmac-bcma-mdio.c
 | |
| @@ -132,6 +132,10 @@ static void bcma_mdio_phy_init(struct bg
 | |
|  	struct bcma_chipinfo *ci = &bgmac->bcma.core->bus->chipinfo;
 | |
|  	u8 i;
 | |
|  
 | |
| +	/* For some legacy hardware we do chipset-based PHY initialization here
 | |
| +	 * without even detecting PHY ID. It's hacky and should be cleaned as
 | |
| +	 * soon as someone can test it.
 | |
| +	 */
 | |
|  	if (ci->id == BCMA_CHIP_ID_BCM5356) {
 | |
|  		for (i = 0; i < 5; i++) {
 | |
|  			bcma_mdio_phy_write(bgmac, i, 0x1f, 0x008b);
 | |
| @@ -140,6 +144,7 @@ static void bcma_mdio_phy_init(struct bg
 | |
|  			bcma_mdio_phy_write(bgmac, i, 0x12, 0x2aaa);
 | |
|  			bcma_mdio_phy_write(bgmac, i, 0x1f, 0x000b);
 | |
|  		}
 | |
| +		return;
 | |
|  	}
 | |
|  	if ((ci->id == BCMA_CHIP_ID_BCM5357 && ci->pkg != 10) ||
 | |
|  	    (ci->id == BCMA_CHIP_ID_BCM4749 && ci->pkg != 10) ||
 | |
| @@ -161,7 +166,12 @@ static void bcma_mdio_phy_init(struct bg
 | |
|  			bcma_mdio_phy_write(bgmac, i, 0x17, 0x9273);
 | |
|  			bcma_mdio_phy_write(bgmac, i, 0x1f, 0x000b);
 | |
|  		}
 | |
| +		return;
 | |
|  	}
 | |
| +
 | |
| +	/* For all other hw do initialization using PHY subsystem. */
 | |
| +	if (bgmac->net_dev && bgmac->net_dev->phydev)
 | |
| +		phy_init_hw(bgmac->net_dev->phydev);
 | |
|  }
 | |
|  
 | |
|  /* http://bcm-v4.sipsolutions.net/mac-gbit/gmac/chipphyreset */
 |