Lines Matching refs:fixup
78 struct phy_fixup *fixup = kzalloc(sizeof(*fixup), GFP_KERNEL); in phy_register_fixup() local
80 if (!fixup) in phy_register_fixup()
83 strlcpy(fixup->bus_id, bus_id, sizeof(fixup->bus_id)); in phy_register_fixup()
84 fixup->phy_uid = phy_uid; in phy_register_fixup()
85 fixup->phy_uid_mask = phy_uid_mask; in phy_register_fixup()
86 fixup->run = run; in phy_register_fixup()
89 list_add_tail(&fixup->list, &phy_fixup_list); in phy_register_fixup()
115 static int phy_needs_fixup(struct phy_device *phydev, struct phy_fixup *fixup) in phy_needs_fixup() argument
117 if (strcmp(fixup->bus_id, dev_name(&phydev->dev)) != 0) in phy_needs_fixup()
118 if (strcmp(fixup->bus_id, PHY_ANY_ID) != 0) in phy_needs_fixup()
121 if ((fixup->phy_uid & fixup->phy_uid_mask) != in phy_needs_fixup()
122 (phydev->phy_id & fixup->phy_uid_mask)) in phy_needs_fixup()
123 if (fixup->phy_uid != PHY_ANY_UID) in phy_needs_fixup()
132 struct phy_fixup *fixup; in phy_scan_fixups() local
135 list_for_each_entry(fixup, &phy_fixup_list, list) { in phy_scan_fixups()
136 if (phy_needs_fixup(phydev, fixup)) { in phy_scan_fixups()
137 int err = fixup->run(phydev); in phy_scan_fixups()