All of lore.kernel.org
 help / color / mirror / Atom feed
* LED module not creating /sys/class/leds entry
@ 2013-08-05  4:27 Ian Pilcher
  0 siblings, 0 replies; only message in thread
From: Ian Pilcher @ 2013-08-05  4:27 UTC (permalink / raw)
  To: linux-kernel

I am trying to understand the LED API.  I have created an extremely
simple "dummy" LED module (see below), which loads without any errors,
but /sys/class/leds is empty.

Any pointers on what additional steps I need to take to get my "LED" to
show up are greatly appreciated.

Thanks!

#include <linux/leds.h>
#include <linux/module.h>
#include <linux/platform_device.h>

static enum led_brightness dummy_led_brightness = LED_OFF;

static void dummy_led_set_brightness(struct led_classdev *cdev,
				     enum led_brightness brightness)
{
	dummy_led_brightness = brightness;
}

static enum led_brightness dummy_led_get_brightness(struct led_classdev
*cdev)
{
	return dummy_led_brightness;
}

static struct led_classdev dummy_led_cdev = {
	.name = "dummy",
	.brightness_set = dummy_led_set_brightness,
	.brightness_get = dummy_led_get_brightness,
};

static int dummy_led_probe(struct platform_device *pdev)
{
	return led_classdev_register(&pdev->dev, &dummy_led_cdev);
}

static int dummy_led_remove(struct platform_device *pdev)
{
	led_classdev_unregister(&dummy_led_cdev);
	return 0;
}

static struct platform_driver dummy_led_driver = {
	.probe = dummy_led_probe,
	.remove = dummy_led_remove,
	.driver = {
		.name = "dummy-led",
		.owner = THIS_MODULE,
	},
};

static int __init dummy_led_init(void)
{
	return platform_driver_register(&dummy_led_driver);
}

static void __exit dummy_led_exit(void)
{
    platform_driver_unregister(&dummy_led_driver);
}

module_init(dummy_led_init);
module_exit(dummy_led_exit);

MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("Dummy LED driver");
MODULE_AUTHOR("Ian Pilcher <arequipeno@gmail.com>");

-- 
========================================================================
Ian Pilcher                                         arequipeno@gmail.com
Sometimes there's nothing left to do but crash and burn...or die trying.
========================================================================


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-08-05  4:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-05  4:27 LED module not creating /sys/class/leds entry Ian Pilcher

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.