EXPORT_SYMBOL_GPL(phy_led_trigger_change_speed);
 
 static void phy_led_trigger_format_name(struct phy_device *phy, char *buf,
-                                       size_t size, char *suffix)
+                                       size_t size, const char *suffix)
 {
        snprintf(buf, size, PHY_ID_FMT ":%s",
                 phy->mdio.bus->id, phy->mdio.addr, suffix);
                                    struct phy_led_trigger *plt,
                                    unsigned int speed)
 {
-       char name_suffix[PHY_LED_TRIGGER_SPEED_SUFFIX_SIZE];
-
        plt->speed = speed;
-
-       if (speed < SPEED_1000)
-               snprintf(name_suffix, sizeof(name_suffix), "%dMbps", speed);
-       else if (speed == SPEED_2500)
-               snprintf(name_suffix, sizeof(name_suffix), "2.5Gbps");
-       else
-               snprintf(name_suffix, sizeof(name_suffix), "%dGbps",
-                        DIV_ROUND_CLOSEST(speed, 1000));
-
        phy_led_trigger_format_name(phy, plt->name, sizeof(plt->name),
-                                   name_suffix);
+                                   phy_speed_to_str(speed));
        plt->trigger.name = plt->name;
 
        return led_trigger_register(&plt->trigger);