ELINK_INT_PHY
elink_set_autoneg(¶ms->phy[ELINK_INT_PHY], params, vars, 0);
elink_program_serdes(¶ms->phy[ELINK_INT_PHY], params, vars);
if (phy_index == ELINK_INT_PHY || phy_index == ELINK_EXT_PHY1) {
elink_populate_preemphasis(cb, shmem_base, phy, port, ELINK_INT_PHY);
if (phy_index == ELINK_INT_PHY)
for (phy_index = ELINK_INT_PHY; phy_index < ELINK_MAX_PHYS;
for (phy_index = ELINK_INT_PHY;
for (phy_index = ELINK_INT_PHY; phy_index < params->num_phys;
params->phy[ELINK_INT_PHY].config_loopback(
¶ms->phy[ELINK_INT_PHY],
struct elink_phy *int_phy = ¶ms->phy[ELINK_INT_PHY];
for (phy_idx = ELINK_INT_PHY; phy_idx < params->num_phys; phy_idx++) {
if (params->phy[ELINK_INT_PHY].link_reset)
params->phy[ELINK_INT_PHY].link_reset(
¶ms->phy[ELINK_INT_PHY], params);
for (phy_idx = ELINK_INT_PHY; phy_idx < ELINK_MAX_PHYS; phy_idx++) {
struct elink_phy *phy = ¶ms->phy[ELINK_INT_PHY];
for (phy_index = ELINK_INT_PHY; phy_index < ELINK_MAX_PHYS;
for (phy_idx = ELINK_INT_PHY; phy_idx < ELINK_MAX_PHYS; phy_idx++) {
struct elink_phy *phy = ¶ms->phy[ELINK_INT_PHY];
for (phy_index = ELINK_INT_PHY; phy_index < params->num_phys;
if (!(params->phy[ELINK_INT_PHY].flags & ELINK_FLAGS_TX_ERROR_CHECK)) {
(params->phy[ELINK_INT_PHY].supported &
elink_xgxs_specific_func(¶ms->phy[ELINK_INT_PHY], params,
for (phy_index = ELINK_INT_PHY; phy_index < params->num_phys;
if ((params->req_line_speed[ELINK_LINK_CONFIG_IDX(ELINK_INT_PHY)] ==
params->phy[ELINK_INT_PHY].media_type =
struct elink_phy *phy = ¶ms->phy[ELINK_INT_PHY];
params->phy[ELINK_INT_PHY].type !=
params->phy[ELINK_INT_PHY].type !=
struct elink_phy *int_phy = ¶ms->phy[ELINK_INT_PHY];
if (params->req_line_speed[ELINK_LINK_CONFIG_IDX(ELINK_INT_PHY)]
vars->line_speed = params->phy[ELINK_INT_PHY].req_line_speed;
elink_prepare_xgxs(¶ms->phy[ELINK_INT_PHY], params, vars);
struct elink_phy *phy = ¶ms->phy[ELINK_INT_PHY];
if (params->phy[ELINK_INT_PHY].config_init)
params->phy[ELINK_INT_PHY].config_init(phy, params, vars);
vars->line_speed = params->phy[ELINK_INT_PHY].req_line_speed;
if (params->phy[ELINK_INT_PHY].supported &
for (phy_idx = ELINK_INT_PHY; phy_idx < ELINK_MAX_PHYS; phy_idx++) {
u8 active_external_phy = ELINK_INT_PHY;
for (phy_index = ELINK_INT_PHY; phy_index < params->num_phys;
elink_set_aer_mmd(params, ¶ms->phy[ELINK_INT_PHY]);
if (params->phy[ELINK_INT_PHY].read_status)
params->phy[ELINK_INT_PHY].read_status(
¶ms->phy[ELINK_INT_PHY],
if (active_external_phy > ELINK_INT_PHY) {
if (params->phy[ELINK_INT_PHY].config_init)
params->phy[ELINK_INT_PHY].config_init(
¶ms->phy[ELINK_INT_PHY], params,
for (idx = ELINK_INT_PHY; idx < ELINK_MAX_PHYS; idx++) {
for (phy_idx = ELINK_INT_PHY; phy_idx < ELINK_MAX_PHYS; phy_idx++) {
phy = ¶ms->phy[ELINK_INT_PHY];
pdev->hw_info.link_config[ELINK_INT_PHY] = val;
flow_control = (pdev->hw_info.link_config[ELINK_INT_PHY] & PORT_FEATURE_FLOW_CONTROL_MASK);
lm_status = lm_set_phy_link_params(pdev, req_medium, flow_control, sw_config, ELINK_INT_PHY);
#define ELINK_LINK_CONFIG_IDX(_phy_idx) ((_phy_idx == ELINK_INT_PHY) ? \
pLM->params.link.phy[ELINK_INT_PHY].supported;
return (ELINK_INT_PHY);