#define PHY_ID_TJA_1103                        0x001BB010
 
-#define PMAPMD_B100T1_PMAPMD_CTL       0x0834
-#define B100T1_PMAPMD_CONFIG_EN                BIT(15)
-#define B100T1_PMAPMD_MASTER           BIT(14)
-#define MASTER_MODE                    (B100T1_PMAPMD_CONFIG_EN | \
-                                        B100T1_PMAPMD_MASTER)
-#define SLAVE_MODE                     (B100T1_PMAPMD_CONFIG_EN)
-
 #define VEND1_DEVICE_CONTROL           0x0040
 #define DEVICE_CONTROL_RESET           BIT(15)
 #define DEVICE_CONTROL_CONFIG_GLOBAL_EN        BIT(14)
        return nxp_c45_start_op(phydev);
 }
 
-static int nxp_c45_setup_master_slave(struct phy_device *phydev)
-{
-       switch (phydev->master_slave_set) {
-       case MASTER_SLAVE_CFG_MASTER_FORCE:
-       case MASTER_SLAVE_CFG_MASTER_PREFERRED:
-               phy_write_mmd(phydev, MDIO_MMD_PMAPMD, PMAPMD_B100T1_PMAPMD_CTL,
-                             MASTER_MODE);
-               break;
-       case MASTER_SLAVE_CFG_SLAVE_PREFERRED:
-       case MASTER_SLAVE_CFG_SLAVE_FORCE:
-               phy_write_mmd(phydev, MDIO_MMD_PMAPMD, PMAPMD_B100T1_PMAPMD_CTL,
-                             SLAVE_MODE);
-               break;
-       case MASTER_SLAVE_CFG_UNKNOWN:
-       case MASTER_SLAVE_CFG_UNSUPPORTED:
-               return 0;
-       default:
-               phydev_warn(phydev, "Unsupported Master/Slave mode\n");
-               return -EOPNOTSUPP;
-       }
-
-       return 0;
-}
-
-static int nxp_c45_read_master_slave(struct phy_device *phydev)
-{
-       int reg;
-
-       phydev->master_slave_get = MASTER_SLAVE_CFG_UNKNOWN;
-       phydev->master_slave_state = MASTER_SLAVE_STATE_UNKNOWN;
-
-       reg = phy_read_mmd(phydev, MDIO_MMD_PMAPMD, PMAPMD_B100T1_PMAPMD_CTL);
-       if (reg < 0)
-               return reg;
-
-       if (reg & B100T1_PMAPMD_MASTER) {
-               phydev->master_slave_get = MASTER_SLAVE_CFG_MASTER_FORCE;
-               phydev->master_slave_state = MASTER_SLAVE_STATE_MASTER;
-       } else {
-               phydev->master_slave_get = MASTER_SLAVE_CFG_SLAVE_FORCE;
-               phydev->master_slave_state = MASTER_SLAVE_STATE_SLAVE;
-       }
-
-       return 0;
-}
-
-static int nxp_c45_config_aneg(struct phy_device *phydev)
-{
-       return nxp_c45_setup_master_slave(phydev);
-}
-
-static int nxp_c45_read_status(struct phy_device *phydev)
-{
-       int ret;
-
-       ret = genphy_c45_read_status(phydev);
-       if (ret)
-               return ret;
-
-       ret = nxp_c45_read_master_slave(phydev);
-       if (ret)
-               return ret;
-
-       return 0;
-}
-
 static int nxp_c45_get_sqi(struct phy_device *phydev)
 {
        int reg;
                .features               = PHY_BASIC_T1_FEATURES,
                .probe                  = nxp_c45_probe,
                .soft_reset             = nxp_c45_soft_reset,
-               .config_aneg            = nxp_c45_config_aneg,
+               .config_aneg            = genphy_c45_config_aneg,
                .config_init            = nxp_c45_config_init,
                .config_intr            = nxp_c45_config_intr,
                .handle_interrupt       = nxp_c45_handle_interrupt,
-               .read_status            = nxp_c45_read_status,
+               .read_status            = genphy_c45_read_status,
                .suspend                = genphy_c45_pma_suspend,
                .resume                 = genphy_c45_pma_resume,
                .get_sset_count         = nxp_c45_get_sset_count,