Is currently of the form:
 
-"devicename:colour"
+"devicename:colour:function"
 
 There have been calls for LED properties such as colour to be exported as
 individual led class attributes. As a solution which doesn't incur as much
 overhead, I suggest these become part of the device name. The naming scheme
-above leaves scope for further attributes should they be needed.
+above leaves scope for further attributes should they be needed. If sections
+of the name don't apply, just leave that section blank.
 
 
 Known Issues
 
 
 static struct gpio_led dsmg600_led_pins[] = {
        {
-               .name           = "power",
+               .name           = "dsmg600:green:power",
                .gpio           = DSMG600_LED_PWR_GPIO,
        },
        {
-               .name           = "wlan",
+               .name           = "dsmg600:green:wlan",
                .gpio           = DSMG600_LED_WLAN_GPIO,
                .active_low     = true,
        },
 
 
 static struct gpio_led nas100d_led_pins[] = {
        {
-               .name           = "wlan",   /* green led */
+               .name           = "nas100d:green:wlan",
                .gpio           = NAS100D_LED_WLAN_GPIO,
                .active_low     = true,
        },
        {
-               .name           = "power",  /* blue power led (off=flashing) */
+               .name           = "nas100d:blue:power",  /* (off=flashing) */
                .gpio           = NAS100D_LED_PWR_GPIO,
                .active_low     = true,
        },
        {
-               .name           = "disk",   /* yellow led */
+               .name           = "nas100d:yellow:disk",
                .gpio           = NAS100D_LED_DISK_GPIO,
                .active_low     = true,
        },
 
 
 static struct gpio_led nslu2_led_pins[] = {
        {
-               .name           = "ready",  /* green led */
+               .name           = "nslu2:green:ready",
                .gpio           = NSLU2_LED_GRN_GPIO,
        },
        {
-               .name           = "status", /* red led */
+               .name           = "nslu2:red:status",
                .gpio           = NSLU2_LED_RED_GPIO,
        },
        {
-               .name           = "disk-1",
+               .name           = "nslu2:green:disk-1",
                .gpio           = NSLU2_LED_DISK1_GPIO,
                .active_low     = true,
        },
        {
-               .name           = "disk-2",
+               .name           = "nslu2:green:disk-2",
                .gpio           = NSLU2_LED_DISK2_GPIO,
                .active_low     = true,
        },
 
 }
 
 static struct led_classdev applesmc_backlight = {
-       .name                   = "smc:kbd_backlight",
+       .name                   = "smc::kbd_backlight",
        .default_trigger        = "nand-disk",
        .brightness_set         = applesmc_brightness_set,
 };
 
 }
 
 static struct led_classdev wistron_mail_led = {
-       .name                   = "mail:green",
+       .name                   = "wistron:green:mail",
        .brightness_set         = wistron_mail_led_set,
 };
 
 static struct led_classdev wistron_wifi_led = {
-       .name                   = "wifi:red",
+       .name                   = "wistron:red:wifi",
        .brightness_set         = wistron_wifi_led_set,
 };
 
 
 static struct ams_delta_led ams_delta_leds[] = {
        {
                .cdev           = {
-                       .name           = "ams-delta:camera",
+                       .name           = "ams-delta::camera",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_CAMERA,
        },
        {
                .cdev           = {
-                       .name           = "ams-delta:advert",
+                       .name           = "ams-delta::advert",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_ADVERT,
        },
        {
                .cdev           = {
-                       .name           = "ams-delta:email",
+                       .name           = "ams-delta::email",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_EMAIL,
        },
        {
                .cdev           = {
-                       .name           = "ams-delta:handsfree",
+                       .name           = "ams-delta::handsfree",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_HANDSFREE,
        },
        {
                .cdev           = {
-                       .name           = "ams-delta:voicemail",
+                       .name           = "ams-delta::voicemail",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_VOICEMAIL,
        },
        {
                .cdev           = {
-                       .name           = "ams-delta:voice",
+                       .name           = "ams-delta::voice",
                        .brightness_set = ams_delta_led_set,
                },
                .bitmask        = AMS_DELTA_LATCH1_LED_VOICE,
 
 }
 
 static struct led_classdev clevo_mail_led = {
-       .name                   = "clevo",
+       .name                   = "clevo::mail",
        .brightness_set         = clevo_mail_led_set,
 };
 
 
 }
 
 static struct led_classdev corgi_amber_led = {
-       .name                   = "corgi:amber",
+       .name                   = "corgi:amber:charge",
        .default_trigger        = "sharpsl-charge",
        .brightness_set         = corgiled_amber_set,
 };
 
 static struct led_classdev corgi_green_led = {
-       .name                   = "corgi:green",
+       .name                   = "corgi:green:mail",
        .default_trigger        = "nand-disk",
        .brightness_set         = corgiled_green_set,
 };
 
 }
 
 static struct led_classdev locomo_led0 = {
-       .name                   = "locomo:amber",
+       .name                   = "locomo:amber:charge",
        .default_trigger        = "sharpsl-charge",
        .brightness_set         = locomoled_brightness_set0,
 };
 
 static struct led_classdev locomo_led1 = {
-       .name                   = "locomo:green",
+       .name                   = "locomo:green:mail",
        .default_trigger        = "nand-disk",
        .brightness_set         = locomoled_brightness_set1,
 };
 
 }
 
 static struct led_classdev net48xx_error_led = {
-       .name           = "net48xx:error",
+       .name           = "net48xx::error",
        .brightness_set = net48xx_error_led_set,
 };
 
 
 }
 
 static struct led_classdev spitz_amber_led = {
-       .name                   = "spitz:amber",
+       .name                   = "spitz:amber:charge",
        .default_trigger        = "sharpsl-charge",
        .brightness_set         = spitzled_amber_set,
 };
 
 static struct led_classdev spitz_green_led = {
-       .name                   = "spitz:green",
+       .name                   = "spitz:green:hddactivity",
        .default_trigger        = "ide-disk",
        .brightness_set         = spitzled_green_set,
 };
 {
        int ret;
 
-       if (machine_is_akita())
+       if (machine_is_akita()) {
+               spitz_green_led.name = "spitz:green:mail";
                spitz_green_led.default_trigger = "nand-disk";
+       }
 
        ret = led_classdev_register(&pdev->dev, &spitz_amber_led);
        if (ret < 0)
 
 }
 
 static struct led_classdev tosa_amber_led = {
-       .name                   = "tosa:amber",
+       .name                   = "tosa:amber:charge",
        .default_trigger        = "sharpsl-charge",
        .brightness_set         = tosaled_amber_set,
 };
 
 static struct led_classdev tosa_green_led = {
-       .name                   = "tosa:green",
+       .name                   = "tosa:green:mail",
        .default_trigger        = "nand-disk",
        .brightness_set         = tosaled_green_set,
 };
 
 }
 
 static struct led_classdev wrap_error_led = {
-       .name           = "wrap:error",
+       .name           = "wrap::error",
        .brightness_set = wrap_error_led_set,
 };
 
 static struct led_classdev wrap_extra_led = {
-       .name           = "wrap:extra",
+       .name           = "wrap::extra",
        .brightness_set = wrap_extra_led_set,
 };
 
 
        static int object##_led_wk;                                     \
        static DECLARE_WORK(object##_led_work, object##_led_update);    \
        static struct led_classdev object##_led = {                     \
-               .name           = "asus:" ledname,                      \
+               .name           = "asus::" ledname,                     \
                .brightness_set = object##_led_set,                     \
        }
 
 
        case B43_LED_TRANSFER:
        case B43_LED_APTRANSFER:
                snprintf(name, sizeof(name),
-                        "b43-%s:tx", wiphy_name(hw->wiphy));
+                        "b43-%s::tx", wiphy_name(hw->wiphy));
                b43_register_led(dev, &dev->led_tx, name,
                                 ieee80211_get_tx_led_name(hw),
                                 led_index, activelow);
                snprintf(name, sizeof(name),
-                        "b43-%s:rx", wiphy_name(hw->wiphy));
+                        "b43-%s::rx", wiphy_name(hw->wiphy));
                b43_register_led(dev, &dev->led_rx, name,
                                 ieee80211_get_rx_led_name(hw),
                                 led_index, activelow);
        case B43_LED_RADIO_B:
        case B43_LED_MODE_BG:
                snprintf(name, sizeof(name),
-                        "b43-%s:radio", wiphy_name(hw->wiphy));
+                        "b43-%s::radio", wiphy_name(hw->wiphy));
                b43_register_led(dev, &dev->led_radio, name,
                                 b43_rfkill_led_name(dev),
                                 led_index, activelow);
        case B43_LED_WEIRD:
        case B43_LED_ASSOC:
                snprintf(name, sizeof(name),
-                        "b43-%s:assoc", wiphy_name(hw->wiphy));
+                        "b43-%s::assoc", wiphy_name(hw->wiphy));
                b43_register_led(dev, &dev->led_assoc, name,
                                 ieee80211_get_assoc_led_name(hw),
                                 led_index, activelow);