drivers: net: phy: xgene: Add lock to protect mac access
This patch, - refactors mac access routine - adds lock to protect mac indirect access Signed-off-by: Quan Nguyen <qnguyen@apm.com> Signed-off-by: Iyappan Subramanian <isubramanian@apm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
ae1aed95d0
commit
8ec7074a6b
@@ -102,6 +102,7 @@ struct xgene_mdio_pdata {
|
||||
void __iomem *mdio_csr_addr;
|
||||
struct mii_bus *mdio_bus;
|
||||
int mdio_id;
|
||||
spinlock_t mac_lock; /* mac lock */
|
||||
};
|
||||
|
||||
/* Set the specified value into a bit-field defined by its starting position
|
||||
@@ -132,6 +133,8 @@ static inline u64 xgene_enet_get_field_value(int pos, int len, u64 src)
|
||||
#define GET_BIT(field, src) \
|
||||
xgene_enet_get_field_value(field ## _POS, 1, src)
|
||||
|
||||
u32 xgene_mdio_rd_mac(struct xgene_mdio_pdata *pdata, u32 rd_addr);
|
||||
void xgene_mdio_wr_mac(struct xgene_mdio_pdata *pdata, u32 wr_addr, u32 data);
|
||||
int xgene_mdio_rgmii_read(struct mii_bus *bus, int phy_id, int reg);
|
||||
int xgene_mdio_rgmii_write(struct mii_bus *bus, int phy_id, int reg, u16 data);
|
||||
struct phy_device *xgene_enet_phy_register(struct mii_bus *bus, int phy_addr);
|
||||
|
Reference in New Issue
Block a user