Lines Matching full:sgmii
5 /* Qualcomm Technologies, Inc. EMAC SGMII Controller driver.
16 #include "emac-sgmii.h"
90 /* Initialize the SGMII link between the internal and external PHYs. */
123 net_err_ratelimited("%s: failed to clear SGMII irq: status:0x%x bits:0x%x\n", in emac_sgmii_irq_clear()
160 /* The SGMII is capable of recovering from some decode in emac_sgmii_interrupt()
195 * SGMII in emac_sgmii_reset_prepare()
216 struct emac_sgmii *sgmii = &adpt->phy; in emac_sgmii_common_open() local
219 if (sgmii->irq) { in emac_sgmii_common_open()
224 writel(0, sgmii->base + EMAC_SGMII_PHY_INTERRUPT_MASK); in emac_sgmii_common_open()
226 ret = request_irq(sgmii->irq, emac_sgmii_interrupt, 0, in emac_sgmii_common_open()
227 "emac-sgmii", adpt); in emac_sgmii_common_open()
240 struct emac_sgmii *sgmii = &adpt->phy; in emac_sgmii_common_close() local
243 writel(0, sgmii->base + EMAC_SGMII_PHY_INTERRUPT_MASK); in emac_sgmii_common_close()
244 free_irq(sgmii->irq, adpt); in emac_sgmii_common_close()
250 struct emac_sgmii *sgmii = &adpt->phy; in emac_sgmii_common_link_change() local
260 sgmii->base + EMAC_SGMII_PHY_INTERRUPT_MASK); in emac_sgmii_common_link_change()
263 writel(0, sgmii->base + EMAC_SGMII_PHY_INTERRUPT_MASK); in emac_sgmii_common_link_change()
264 synchronize_irq(sgmii->irq); in emac_sgmii_common_link_change()
341 .compatible = "qcom,fsm9900-emac-sgmii",
345 .compatible = "qcom,qdf2432-emac-sgmii",
410 /* v2 SGMII has a per-lane digital digital, so parse it if it exists */ in emac_sgmii_config()