bnxt_en: read the clause type from the PHY ID
Currently driver hard code Clause 45 based on speed supported by the PHY. Instead read the clause type from the PHY ID provided as input to the mdio ioctl. Fixes: 0ca12be99667 ("bnxt_en: Add support for mdio read/write to external PHY") Signed-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
691aa62045
commit
2730214ddb
@ -8699,7 +8699,7 @@ static int bnxt_hwrm_port_phy_read(struct bnxt *bp, u16 phy_addr, u16 reg,
|
||||
req.port_id = cpu_to_le16(bp->pf.port_id);
|
||||
req.phy_addr = phy_addr;
|
||||
req.reg_addr = cpu_to_le16(reg & 0x1f);
|
||||
if (bp->link_info.support_speeds & BNXT_LINK_SPEED_MSK_10GB) {
|
||||
if (mdio_phy_id_is_c45(phy_addr)) {
|
||||
req.cl45_mdio = 1;
|
||||
req.phy_addr = mdio_phy_id_prtad(phy_addr);
|
||||
req.dev_addr = mdio_phy_id_devad(phy_addr);
|
||||
@ -8726,7 +8726,7 @@ static int bnxt_hwrm_port_phy_write(struct bnxt *bp, u16 phy_addr, u16 reg,
|
||||
req.port_id = cpu_to_le16(bp->pf.port_id);
|
||||
req.phy_addr = phy_addr;
|
||||
req.reg_addr = cpu_to_le16(reg & 0x1f);
|
||||
if (bp->link_info.support_speeds & BNXT_LINK_SPEED_MSK_10GB) {
|
||||
if (mdio_phy_id_is_c45(phy_addr)) {
|
||||
req.cl45_mdio = 1;
|
||||
req.phy_addr = mdio_phy_id_prtad(phy_addr);
|
||||
req.dev_addr = mdio_phy_id_devad(phy_addr);
|
||||
|
Loading…
x
Reference in New Issue
Block a user