Lines Matching refs:sbm_mdio
260 void __iomem *sbm_mdio; /* MDIO Register */
322 static void sbmac_mii_sync(void __iomem *sbm_mdio);
323 static void sbmac_mii_senddata(void __iomem *sbm_mdio, unsigned int data,
354 * SBMAC_MII_SYNC(sbm_mdio)
360 * sbm_mdio - address of the MAC's MDIO register
366 static void sbmac_mii_sync(void __iomem *sbm_mdio)
372 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC;
376 __raw_writeq(bits | mac_mdio_genc, sbm_mdio);
379 __raw_writeq(bits | M_MAC_MDC | mac_mdio_genc, sbm_mdio);
380 __raw_writeq(bits | mac_mdio_genc, sbm_mdio);
385 * SBMAC_MII_SENDDATA(sbm_mdio, data, bitcnt)
391 * sbm_mdio - address of the MAC's MDIO register
396 static void sbmac_mii_senddata(void __iomem *sbm_mdio, unsigned int data,
404 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC;
407 __raw_writeq(bits | mac_mdio_genc, sbm_mdio);
415 __raw_writeq(bits | mac_mdio_genc, sbm_mdio);
416 __raw_writeq(bits | M_MAC_MDC | mac_mdio_genc, sbm_mdio);
417 __raw_writeq(bits | mac_mdio_genc, sbm_mdio);
440 void __iomem *sbm_mdio = sc->sbm_mdio;
450 sbmac_mii_sync(sbm_mdio);
459 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_START, 2);
460 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_READ, 2);
461 sbmac_mii_senddata(sbm_mdio, phyaddr, 5);
462 sbmac_mii_senddata(sbm_mdio, regidx, 5);
464 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC;
469 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio);
475 sbm_mdio);
476 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio);
481 error = __raw_readq(sbm_mdio) & M_MAC_MDIO_IN;
488 sbm_mdio);
489 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio);
497 if (__raw_readq(sbm_mdio) & M_MAC_MDIO_IN)
502 sbm_mdio);
503 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio);
507 __raw_writeq(M_MAC_MDIO_DIR_OUTPUT | mac_mdio_genc, sbm_mdio);
534 void __iomem *sbm_mdio = sc->sbm_mdio;
537 sbmac_mii_sync(sbm_mdio);
539 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_START, 2);
540 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_WRITE, 2);
541 sbmac_mii_senddata(sbm_mdio, phyaddr, 5);
542 sbmac_mii_senddata(sbm_mdio, regidx, 5);
543 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_ACK, 2);
544 sbmac_mii_senddata(sbm_mdio, regval, 16);
546 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC;
548 __raw_writeq(M_MAC_MDIO_DIR_OUTPUT | mac_mdio_genc, sbm_mdio);
1350 s->sbm_mdio = s->sbm_base + R_MAC_MDIO;