Lines Matching refs:ag
1130 static struct ar7240sw *ar7240_probe(struct ag71xx *ag)
1132 struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag);
1133 struct mii_bus *mii = ag->mii_bus;
1146 ag->dev->name, phy_id1, phy_id2);
1177 ag->dev->name);
1190 ag->dev->name, ctrl);
1198 if (register_switch(&as->swdev, ag->dev) < 0)
1201 pr_info("%s: Found an %s\n", ag->dev->name, swdev->name);
1217 struct ag71xx *ag = container_of(work, struct ag71xx, link_work.work);
1218 struct ar7240sw *as = ag->phy_priv;
1231 link = ar7240sw_phy_read(ag->mii_bus, i, MII_BMSR);
1238 spin_lock_irqsave(&ag->lock, flags);
1239 if (status != ag->link) {
1240 ag->link = status;
1241 ag71xx_link_adjust(ag);
1243 spin_unlock_irqrestore(&ag->lock, flags);
1245 schedule_delayed_work(&ag->link_work, HZ / 2);
1248 void ag71xx_ar7240_start(struct ag71xx *ag)
1250 struct ar7240sw *as = ag->phy_priv;
1254 ag->speed = SPEED_1000;
1255 ag->duplex = 1;
1257 ar7240_set_addr(as, ag->dev->dev_addr);
1260 schedule_delayed_work(&ag->link_work, HZ / 10);
1263 void ag71xx_ar7240_stop(struct ag71xx *ag)
1265 cancel_delayed_work_sync(&ag->link_work);
1268 int __devinit ag71xx_ar7240_init(struct ag71xx *ag)
1272 as = ar7240_probe(ag);
1276 ag->phy_priv = as;
1280 INIT_DELAYED_WORK(&ag->link_work, link_function);
1285 void ag71xx_ar7240_cleanup(struct ag71xx *ag)
1287 struct ar7240sw *as = ag->phy_priv;
1294 ag->phy_priv = NULL;