#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/platform_device.h>
#include <linux/leds.h>
#include <linux/slab.h>
#include <linux/mfd/da9052/reg.h>
#include <linux/mfd/da9052/da9052.h>
#include <linux/mfd/da9052/pdata.h>
#define DA9052_OPENDRAIN_OUTPUT …
#define DA9052_SET_HIGH_LVL_OUTPUT …
#define DA9052_MASK_UPPER_NIBBLE …
#define DA9052_MASK_LOWER_NIBBLE …
#define DA9052_NIBBLE_SHIFT …
#define DA9052_MAX_BRIGHTNESS …
struct da9052_led { … };
static unsigned char led_reg[] = …;
static int da9052_set_led_brightness(struct da9052_led *led,
enum led_brightness brightness)
{ … }
static int da9052_led_set(struct led_classdev *led_cdev,
enum led_brightness value)
{ … }
static int da9052_configure_leds(struct da9052 *da9052)
{ … }
static int da9052_led_probe(struct platform_device *pdev)
{ … }
static void da9052_led_remove(struct platform_device *pdev)
{ … }
static struct platform_driver da9052_led_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;