35 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/*3 * LED Core4 *5 * Copyright 2005 Openedhand Ltd.6 *7 * Author: Richard Purdie <rpurdie@openedhand.com>8 */9#ifndef __LEDS_H_INCLUDED10#define __LEDS_H_INCLUDED11 12#include <linux/rwsem.h>13#include <linux/leds.h>14 15static inline int led_get_brightness(struct led_classdev *led_cdev)16{17 return led_cdev->brightness;18}19 20void led_init_core(struct led_classdev *led_cdev);21void led_stop_software_blink(struct led_classdev *led_cdev);22void led_set_brightness_nopm(struct led_classdev *led_cdev, unsigned int value);23void led_set_brightness_nosleep(struct led_classdev *led_cdev, unsigned int value);24ssize_t led_trigger_read(struct file *filp, struct kobject *kobj,25 struct bin_attribute *attr, char *buf,26 loff_t pos, size_t count);27ssize_t led_trigger_write(struct file *filp, struct kobject *kobj,28 struct bin_attribute *bin_attr, char *buf,29 loff_t pos, size_t count);30 31extern struct rw_semaphore leds_list_lock;32extern struct list_head leds_list;33 34#endif /* __LEDS_H_INCLUDED */35