}
 EXPORT_SYMBOL_GPL(dell_micmute_led_set);
 
+static int micmute_led_set(struct led_classdev *led_cdev,
+                          enum led_brightness brightness)
+{
+       int state = brightness != LED_OFF;
+       int err;
+
+       err = dell_micmute_led_set(state);
+       return err < 0 ? err : 0;
+}
+
+static struct led_classdev micmute_led_cdev = {
+       .name = "platform::micmute",
+       .max_brightness = 1,
+       .brightness_set_blocking = micmute_led_set,
+       .default_trigger = "audio-micmute",
+};
+
 static int __init dell_init(void)
 {
        struct calling_interface_token *token;
 
        dell_laptop_register_notifier(&dell_laptop_notifier);
 
+       micmute_led_cdev.brightness = ledtrig_audio_get(LED_AUDIO_MICMUTE);
+       ret = led_classdev_register(&platform_device->dev, &micmute_led_cdev);
+       if (ret < 0)
+               goto fail_led;
+
        if (acpi_video_get_backlight_type() != acpi_backlight_vendor)
                return 0;
 
 fail_get_brightness:
        backlight_device_unregister(dell_backlight_device);
 fail_backlight:
+       led_classdev_unregister(&micmute_led_cdev);
+fail_led:
        dell_cleanup_rfkill();
 fail_rfkill:
        platform_device_del(platform_device);
                touchpad_led_exit();
        kbd_led_exit();
        backlight_device_unregister(dell_backlight_device);
+       led_classdev_unregister(&micmute_led_cdev);
        dell_cleanup_rfkill();
        if (platform_device) {
                platform_device_unregister(platform_device);