Lines Matching refs:link_info
2913 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_get_port_module_status() local
2914 struct hwrm_port_phy_qcfg_output *resp = &link_info->phy_qcfg_resp; in bnxt_get_port_module_status()
2920 module_status = link_info->module_status; in bnxt_get_port_module_status()
3272 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_media_status() local
3274 uint64_t target_baudrate = bnxt_get_baudrate(link_info); in bnxt_media_status()
3282 if (link_info->link_up) in bnxt_media_status()
3287 if (link_info->duplex == HWRM_PORT_PHY_QCFG_OUTPUT_DUPLEX_CFG_FULL) in bnxt_media_status()
3304 if (link_info->flow_ctrl.rx) in bnxt_media_status()
3306 if (link_info->flow_ctrl.tx) in bnxt_media_status()
3320 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_media_change() local
3327 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3328 link_info->req_link_speed = in bnxt_media_change()
3337 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3339 if (link_info->support_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS_1GB) { in bnxt_media_change()
3340 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_1GB; in bnxt_media_change()
3342 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_1GB) { in bnxt_media_change()
3343 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_1GB; in bnxt_media_change()
3344 link_info->force_speed2_nrz = true; in bnxt_media_change()
3351 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3352 link_info->req_link_speed = in bnxt_media_change()
3360 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3362 if (link_info->support_speeds & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_10GB) { in bnxt_media_change()
3363 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_10GB; in bnxt_media_change()
3365 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_10GB) { in bnxt_media_change()
3366 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_10GB; in bnxt_media_change()
3367 link_info->force_speed2_nrz = true; in bnxt_media_change()
3372 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3373 link_info->req_link_speed = in bnxt_media_change()
3381 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3383 if (link_info->support_speeds & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_25GB) { in bnxt_media_change()
3384 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_25GB; in bnxt_media_change()
3386 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_25GB) { in bnxt_media_change()
3387 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_25GB; in bnxt_media_change()
3388 link_info->force_speed2_nrz = true; in bnxt_media_change()
3400 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3402 if (link_info->support_speeds & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_40GB) { in bnxt_media_change()
3403 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_40GB; in bnxt_media_change()
3405 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_40GB) { in bnxt_media_change()
3406 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_40GB; in bnxt_media_change()
3407 link_info->force_speed2_nrz = true; in bnxt_media_change()
3418 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3420 if (link_info->support_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS_50GB) { in bnxt_media_change()
3421 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_50GB; in bnxt_media_change()
3423 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_50GB) { in bnxt_media_change()
3424 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_50GB; in bnxt_media_change()
3425 link_info->force_speed2_nrz = true; in bnxt_media_change()
3435 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3437 if (link_info->support_pam4_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_PAM4_SPEEDS_50G) { in bnxt_media_change()
3438 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_PAM4_LINK_SPEED_50GB; in bnxt_media_change()
3439 link_info->force_pam4_speed = true; in bnxt_media_change()
3441 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_50GB_PAM4_56) { in bnxt_media_change()
3442 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_50GB_PAM4_56; in bnxt_media_change()
3443 link_info->force_pam4_56_speed2 = true; in bnxt_media_change()
3454 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3456 if (link_info->support_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS_100GB) { in bnxt_media_change()
3457 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEED_100GB; in bnxt_media_change()
3459 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_100GB) { in bnxt_media_change()
3460 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_100GB; in bnxt_media_change()
3461 link_info->force_speed2_nrz = true; in bnxt_media_change()
3471 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3473 if (link_info->support_pam4_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_PAM4_SPEEDS_100G) { in bnxt_media_change()
3474 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_PAM4_LINK_SPEED_100GB; in bnxt_media_change()
3475 link_info->force_pam4_speed = true; in bnxt_media_change()
3477 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_100GB_PAM4_56) { in bnxt_media_change()
3478 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_100GB_PAM4_56; in bnxt_media_change()
3479 link_info->force_pam4_56_speed2 = true; in bnxt_media_change()
3489 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3491 if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_100GB_PAM4_112) { in bnxt_media_change()
3492 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_100GB_PAM4_112; in bnxt_media_change()
3493 link_info->force_pam4_112_speed2 = true; in bnxt_media_change()
3505 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3507 if (link_info->support_pam4_speeds & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_PAM4_SPEEDS_200G) { in bnxt_media_change()
3508 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_PAM4_LINK_SPEED_200GB; in bnxt_media_change()
3509 link_info->force_pam4_speed = true; in bnxt_media_change()
3511 } else if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_200GB_PAM4_56) { in bnxt_media_change()
3512 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_200GB_PAM4_56; in bnxt_media_change()
3513 link_info->force_pam4_56_speed2 = true; in bnxt_media_change()
3520 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3522 if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_200GB_PAM4_112) { in bnxt_media_change()
3523 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_200GB_PAM4_112; in bnxt_media_change()
3524 link_info->force_pam4_112_speed2 = true; in bnxt_media_change()
3532 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3534 if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_400GB_PAM4_56) { in bnxt_media_change()
3535 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_400GB_PAM4_56; in bnxt_media_change()
3536 link_info->force_pam4_56_speed2 = true; in bnxt_media_change()
3543 link_info->autoneg &= ~BNXT_AUTONEG_SPEED; in bnxt_media_change()
3545 if (link_info->support_speeds2 & HWRM_PORT_PHY_QCFG_OUTPUT_SUPPORT_SPEEDS2_400GB_PAM4_112) { in bnxt_media_change()
3546 link_info->req_link_speed = HWRM_PORT_PHY_CFG_INPUT_FORCE_LINK_SPEEDS2_400GB_PAM4_112; in bnxt_media_change()
3547 link_info->force_pam4_112_speed2 = true; in bnxt_media_change()
3553 link_info->advertising = HWRM_PORT_PHY_CFG_INPUT_AUTO_LINK_SPEED_MASK_1GB; in bnxt_media_change()
3554 link_info->autoneg |= BNXT_AUTONEG_SPEED; in bnxt_media_change()
3557 link_info->advertising = HWRM_PORT_PHY_CFG_INPUT_AUTO_LINK_SPEED_MASK_10GB; in bnxt_media_change()
3558 link_info->autoneg |= BNXT_AUTONEG_SPEED; in bnxt_media_change()
3566 link_info->autoneg |= BNXT_AUTONEG_SPEED; in bnxt_media_change()
4287 if (softc->link_info.module_status > in bnxt_i2c_req()
4309 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_probe_phy() local
4330 if (link_info->auto_mode != HWRM_PORT_PHY_QCFG_OUTPUT_AUTO_MODE_NONE) in bnxt_probe_phy()
4331 link_info->autoneg |= BNXT_AUTONEG_SPEED; in bnxt_probe_phy()
4333 link_info->req_duplex = link_info->duplex_setting; in bnxt_probe_phy()
4336 if (link_info->autoneg & BNXT_AUTONEG_SPEED) in bnxt_probe_phy()
4337 link_info->req_link_speed = link_info->auto_link_speeds; in bnxt_probe_phy()
4339 link_info->req_link_speed = link_info->force_link_speed; in bnxt_probe_phy()
4342 if (link_info->auto_pam4_link_speeds) in bnxt_probe_phy()
4343 link_info->req_link_speed = link_info->auto_pam4_link_speeds; in bnxt_probe_phy()
4344 if (link_info->force_pam4_link_speed) in bnxt_probe_phy()
4345 link_info->req_link_speed = link_info->force_pam4_link_speed; in bnxt_probe_phy()
4519 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_add_media_types() local
4523 supported_NRZ_speeds = link_info->support_speeds; in bnxt_add_media_types()
4524 supported_speeds2 = link_info->support_speeds2; in bnxt_add_media_types()
4525 supported_pam4_speeds = link_info->support_pam4_speeds; in bnxt_add_media_types()
4641 switch (link_info->sig_mode) { in bnxt_add_media_types()
4724 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_update_link() local
4725 uint8_t link_up = link_info->link_up; in bnxt_update_link()
4734 if (link_info->phy_link_status == in bnxt_update_link()
4736 link_info->link_up = 1; in bnxt_update_link()
4738 link_info->link_up = 0; in bnxt_update_link()
4739 if (link_up != link_info->link_up) in bnxt_update_link()
4743 link_info->link_up = 0; in bnxt_update_link()
4788 struct bnxt_link_info *link_info = &softc->link_info; in bnxt_report_link() local
4794 bnxt_fw_to_ethtool_speed(link_info->link_speed); in bnxt_report_link()
4796 if (link_info->link_up == link_info->last_link_up) { in bnxt_report_link()
4797 if (!link_info->link_up) in bnxt_report_link()
4799 if ((link_info->duplex == link_info->last_duplex) && in bnxt_report_link()
4800 (link_info->phy_type == link_info->last_phy_type) && in bnxt_report_link()
4801 (!(BNXT_IS_FLOW_CTRL_CHANGED(link_info)))) in bnxt_report_link()
4805 if (link_info->link_up) { in bnxt_report_link()
4806 if (link_info->duplex == in bnxt_report_link()
4811 if (link_info->flow_ctrl.tx & link_info->flow_ctrl.rx) in bnxt_report_link()
4813 else if (link_info->flow_ctrl.tx) in bnxt_report_link()
4815 else if (link_info->flow_ctrl.rx) in bnxt_report_link()
4820 if (softc->link_info.phy_qcfg_resp.option_flags & in bnxt_report_link()
4822 uint8_t sig_mode = softc->link_info.active_fec_sig_mode & in bnxt_report_link()
4837 link_info->sig_mode = sig_mode; in bnxt_report_link()
4843 flow_ctrl, (link_info->link_speed * 100)); in bnxt_report_link()
4846 bnxt_get_baudrate(&softc->link_info)); in bnxt_report_link()
4850 link_info->last_link_up = link_info->link_up; in bnxt_report_link()
4851 link_info->last_duplex = link_info->duplex; in bnxt_report_link()
4852 link_info->last_phy_type = link_info->phy_type; in bnxt_report_link()
4853 link_info->last_flow_ctrl.tx = link_info->flow_ctrl.tx; in bnxt_report_link()
4854 link_info->last_flow_ctrl.rx = link_info->flow_ctrl.rx; in bnxt_report_link()
4855 link_info->last_flow_ctrl.autoneg = link_info->flow_ctrl.autoneg; in bnxt_report_link()
5204 struct bnxt_link_info *link_info = &softc->link_info; in get_phy_type() local
5205 uint8_t phy_type = link_info->phy_type; in get_phy_type()
5212 supported = link_info->support_speeds; in get_phy_type()
5214 if (link_info->media_type == in get_phy_type()
5217 if (link_info->media_type == in get_phy_type()
5225 if (link_info->media_type == in get_phy_type()