Lines Matching refs:sbm_mdio

244 	void __iomem		*sbm_mdio;	/* MDIO Register */  member
306 static void sbmac_mii_sync(void __iomem *sbm_mdio);
307 static void sbmac_mii_senddata(void __iomem *sbm_mdio, unsigned int data,
350 static void sbmac_mii_sync(void __iomem *sbm_mdio) in sbmac_mii_sync() argument
356 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC; in sbmac_mii_sync()
360 __raw_writeq(bits | mac_mdio_genc, sbm_mdio); in sbmac_mii_sync()
363 __raw_writeq(bits | M_MAC_MDC | mac_mdio_genc, sbm_mdio); in sbmac_mii_sync()
364 __raw_writeq(bits | mac_mdio_genc, sbm_mdio); in sbmac_mii_sync()
380 static void sbmac_mii_senddata(void __iomem *sbm_mdio, unsigned int data, in sbmac_mii_senddata() argument
388 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC; in sbmac_mii_senddata()
391 __raw_writeq(bits | mac_mdio_genc, sbm_mdio); in sbmac_mii_senddata()
399 __raw_writeq(bits | mac_mdio_genc, sbm_mdio); in sbmac_mii_senddata()
400 __raw_writeq(bits | M_MAC_MDC | mac_mdio_genc, sbm_mdio); in sbmac_mii_senddata()
401 __raw_writeq(bits | mac_mdio_genc, sbm_mdio); in sbmac_mii_senddata()
424 void __iomem *sbm_mdio = sc->sbm_mdio; in sbmac_mii_read() local
434 sbmac_mii_sync(sbm_mdio); in sbmac_mii_read()
443 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_START, 2); in sbmac_mii_read()
444 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_READ, 2); in sbmac_mii_read()
445 sbmac_mii_senddata(sbm_mdio, phyaddr, 5); in sbmac_mii_read()
446 sbmac_mii_senddata(sbm_mdio, regidx, 5); in sbmac_mii_read()
448 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC; in sbmac_mii_read()
453 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_read()
459 sbm_mdio); in sbmac_mii_read()
460 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_read()
465 error = __raw_readq(sbm_mdio) & M_MAC_MDIO_IN; in sbmac_mii_read()
472 sbm_mdio); in sbmac_mii_read()
473 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_read()
481 if (__raw_readq(sbm_mdio) & M_MAC_MDIO_IN) in sbmac_mii_read()
486 sbm_mdio); in sbmac_mii_read()
487 __raw_writeq(M_MAC_MDIO_DIR_INPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_read()
491 __raw_writeq(M_MAC_MDIO_DIR_OUTPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_read()
518 void __iomem *sbm_mdio = sc->sbm_mdio; in sbmac_mii_write() local
521 sbmac_mii_sync(sbm_mdio); in sbmac_mii_write()
523 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_START, 2); in sbmac_mii_write()
524 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_WRITE, 2); in sbmac_mii_write()
525 sbmac_mii_senddata(sbm_mdio, phyaddr, 5); in sbmac_mii_write()
526 sbmac_mii_senddata(sbm_mdio, regidx, 5); in sbmac_mii_write()
527 sbmac_mii_senddata(sbm_mdio, MII_COMMAND_ACK, 2); in sbmac_mii_write()
528 sbmac_mii_senddata(sbm_mdio, regval, 16); in sbmac_mii_write()
530 mac_mdio_genc = __raw_readq(sbm_mdio) & M_MAC_GENC; in sbmac_mii_write()
532 __raw_writeq(M_MAC_MDIO_DIR_OUTPUT | mac_mdio_genc, sbm_mdio); in sbmac_mii_write()
1335 s->sbm_mdio = s->sbm_base + R_MAC_MDIO; in sbmac_initctx()