swconfig: fix Broadcom b53 support
This commit fixes a bug in the main swconfig patch where a function needed by the b53 driver is not exported. Additionally it adds OF support to the b53_mdio driver for devicetree- based probing Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
This commit is contained in:
		
				
					committed by
					
						
						David Bauer
					
				
			
			
				
	
			
			
			
						parent
						
							35ba9304c6
						
					
				
				
					commit
					8f9cd1af0f
				
			@@ -370,6 +370,26 @@ static int b53_phy_read_status(struct phy_device *phydev)
 | 
				
			|||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const struct of_device_id b53_of_match_1[] = {
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm5325" },
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm5395" },
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm5397" },
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm5398" },
 | 
				
			||||||
 | 
						{ /* sentinel */ },
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const struct of_device_id b53_of_match_2[] = {
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm53115" },
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm53125" },
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm53128" },
 | 
				
			||||||
 | 
						{ /* sentinel */ },
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static const struct of_device_id b53_of_match_3[] = {
 | 
				
			||||||
 | 
						{ .compatible = "brcm,bcm5365" },
 | 
				
			||||||
 | 
						{ /* sentinel */ },
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* BCM5325, BCM539x */
 | 
					/* BCM5325, BCM539x */
 | 
				
			||||||
static struct phy_driver b53_phy_driver_id1 = {
 | 
					static struct phy_driver b53_phy_driver_id1 = {
 | 
				
			||||||
	.phy_id		= 0x0143bc00,
 | 
						.phy_id		= 0x0143bc00,
 | 
				
			||||||
@@ -381,6 +401,10 @@ static struct phy_driver b53_phy_driver_id1 = {
 | 
				
			|||||||
	.config_aneg	= b53_phy_config_aneg,
 | 
						.config_aneg	= b53_phy_config_aneg,
 | 
				
			||||||
	.config_init	= b53_phy_config_init,
 | 
						.config_init	= b53_phy_config_init,
 | 
				
			||||||
	.read_status	= b53_phy_read_status,
 | 
						.read_status	= b53_phy_read_status,
 | 
				
			||||||
 | 
						.mdiodrv.driver = {
 | 
				
			||||||
 | 
							.name = "bcm539x",
 | 
				
			||||||
 | 
							.of_match_table = b53_of_match_1,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* BCM53125, BCM53128 */
 | 
					/* BCM53125, BCM53128 */
 | 
				
			||||||
@@ -394,6 +418,10 @@ static struct phy_driver b53_phy_driver_id2 = {
 | 
				
			|||||||
	.config_aneg	= b53_phy_config_aneg,
 | 
						.config_aneg	= b53_phy_config_aneg,
 | 
				
			||||||
	.config_init	= b53_phy_config_init,
 | 
						.config_init	= b53_phy_config_init,
 | 
				
			||||||
	.read_status	= b53_phy_read_status,
 | 
						.read_status	= b53_phy_read_status,
 | 
				
			||||||
 | 
						.mdiodrv.driver = {
 | 
				
			||||||
 | 
							.name = "bcm531xx",
 | 
				
			||||||
 | 
							.of_match_table = b53_of_match_2,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* BCM5365 */
 | 
					/* BCM5365 */
 | 
				
			||||||
@@ -407,6 +435,10 @@ static struct phy_driver b53_phy_driver_id3 = {
 | 
				
			|||||||
	.config_aneg	= b53_phy_config_aneg,
 | 
						.config_aneg	= b53_phy_config_aneg,
 | 
				
			||||||
	.config_init	= b53_phy_config_init,
 | 
						.config_init	= b53_phy_config_init,
 | 
				
			||||||
	.read_status	= b53_phy_read_status,
 | 
						.read_status	= b53_phy_read_status,
 | 
				
			||||||
 | 
						.mdiodrv.driver = {
 | 
				
			||||||
 | 
							.name = "bcm5365",
 | 
				
			||||||
 | 
							.of_match_table = b53_of_match_3,
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
int __init b53_phy_driver_register(void)
 | 
					int __init b53_phy_driver_register(void)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1256,6 +1256,7 @@ switch_generic_set_link(struct switch_dev *dev, int port,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	return 0;
 | 
						return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					EXPORT_SYMBOL_GPL(switch_generic_set_link);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static int __init
 | 
					static int __init
 | 
				
			||||||
swconfig_init(void)
 | 
					swconfig_init(void)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user