Lines Matching +full:full +full:- +full:duplex
1 // SPDX-License-Identifier: GPL-2.0-only
84 dev_err(pcs->dev, "PCS could not get out of sw reset\n"); in tse_pcs_reset()
85 return -ETIMEDOUT; in tse_pcs_reset()
105 pcs->sgmii_adapter_base + SGMII_ADAPTER_CTRL_REG); in tse_pcs_init()
113 void __iomem *tse_pcs_base = pcs->tse_pcs_base; in pcs_link_timer_callback()
114 void __iomem *sgmii_adapter_base = pcs->sgmii_adapter_base; in pcs_link_timer_callback()
120 dev_dbg(pcs->dev, "Adapter: Link is established\n"); in pcs_link_timer_callback()
124 mod_timer(&pcs->aneg_link_timer, jiffies + in pcs_link_timer_callback()
133 u16 duplex = 0; in auto_nego_timer_callback() local
134 void __iomem *tse_pcs_base = pcs->tse_pcs_base; in auto_nego_timer_callback()
135 void __iomem *sgmii_adapter_base = pcs->sgmii_adapter_base; in auto_nego_timer_callback()
141 dev_dbg(pcs->dev, "Adapter: Auto Negotiation is completed\n"); in auto_nego_timer_callback()
144 duplex = val & TSE_PCS_PARTNER_DUPLEX_MASK; in auto_nego_timer_callback()
147 duplex == TSE_PCS_PARTNER_DUPLEX_FULL) in auto_nego_timer_callback()
148 dev_dbg(pcs->dev, in auto_nego_timer_callback()
149 "Adapter: Link Partner is Up - 10/Full\n"); in auto_nego_timer_callback()
151 duplex == TSE_PCS_PARTNER_DUPLEX_FULL) in auto_nego_timer_callback()
152 dev_dbg(pcs->dev, in auto_nego_timer_callback()
153 "Adapter: Link Partner is Up - 100/Full\n"); in auto_nego_timer_callback()
155 duplex == TSE_PCS_PARTNER_DUPLEX_FULL) in auto_nego_timer_callback()
156 dev_dbg(pcs->dev, in auto_nego_timer_callback()
157 "Adapter: Link Partner is Up - 1000/Full\n"); in auto_nego_timer_callback()
159 duplex == TSE_PCS_PARTNER_DUPLEX_HALF) in auto_nego_timer_callback()
160 dev_err(pcs->dev, in auto_nego_timer_callback()
161 "Adapter does not support Half Duplex\n"); in auto_nego_timer_callback()
163 duplex == TSE_PCS_PARTNER_DUPLEX_HALF) in auto_nego_timer_callback()
164 dev_err(pcs->dev, in auto_nego_timer_callback()
165 "Adapter does not support Half Duplex\n"); in auto_nego_timer_callback()
167 duplex == TSE_PCS_PARTNER_DUPLEX_HALF) in auto_nego_timer_callback()
168 dev_err(pcs->dev, in auto_nego_timer_callback()
169 "Adapter does not support Half Duplex\n"); in auto_nego_timer_callback()
171 dev_err(pcs->dev, in auto_nego_timer_callback()
172 "Adapter: Invalid Partner Speed and Duplex\n"); in auto_nego_timer_callback()
174 if (duplex == TSE_PCS_PARTNER_DUPLEX_FULL && in auto_nego_timer_callback()
186 mod_timer(&pcs->aneg_link_timer, jiffies + in auto_nego_timer_callback()
195 if (pcs->autoneg == AUTONEG_ENABLE) in aneg_link_timer_callback()
197 else if (pcs->autoneg == AUTONEG_DISABLE) in aneg_link_timer_callback()
204 void __iomem *tse_pcs_base = pcs->tse_pcs_base; in tse_pcs_fix_mac_speed()
205 void __iomem *sgmii_adapter_base = pcs->sgmii_adapter_base; in tse_pcs_fix_mac_speed()
211 pcs->autoneg = phy_dev->autoneg; in tse_pcs_fix_mac_speed()
213 if (phy_dev->autoneg == AUTONEG_ENABLE) { in tse_pcs_fix_mac_speed()
227 timer_setup(&pcs->aneg_link_timer, aneg_link_timer_callback, in tse_pcs_fix_mac_speed()
229 mod_timer(&pcs->aneg_link_timer, jiffies + in tse_pcs_fix_mac_speed()
231 } else if (phy_dev->autoneg == AUTONEG_DISABLE) { in tse_pcs_fix_mac_speed()
260 timer_setup(&pcs->aneg_link_timer, aneg_link_timer_callback, in tse_pcs_fix_mac_speed()
262 mod_timer(&pcs->aneg_link_timer, jiffies + in tse_pcs_fix_mac_speed()