void __zmii_enable_mdio(struct ocp_device *ocpdev, int input) { struct ibm_ocp_zmii *dev = ocp_get_drvdata(ocpdev); u32 fer = in_be32(&dev->base->fer) & ~ZMII_FER_MDI_ALL; ZMII_DBG2("%d: mdio(%d)" NL, ocpdev->def->index, input); out_be32(&dev->base->fer, fer | ZMII_FER_MDI(input)); }
void zmii_get_mdio(struct of_device *ofdev, int input) { struct zmii_instance *dev = dev_get_drvdata(&ofdev->dev); u32 fer; ZMII_DBG2(dev, "get_mdio(%d)" NL, input); mutex_lock(&dev->lock); fer = in_be32(&dev->base->fer) & ~ZMII_FER_MDI_ALL; out_be32(&dev->base->fer, fer | ZMII_FER_MDI(input)); }