Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/arm/mach-kirkwood/include/mach/leds-netxbig.h
10820 views
1
/*
2
* arch/arm/mach-kirkwood/include/mach/leds-netxbig.h
3
*
4
* Platform data structure for netxbig LED driver
5
*
6
* This file is licensed under the terms of the GNU General Public
7
* License version 2. This program is licensed "as is" without any
8
* warranty of any kind, whether express or implied.
9
*/
10
11
#ifndef __MACH_LEDS_NETXBIG_H
12
#define __MACH_LEDS_NETXBIG_H
13
14
struct netxbig_gpio_ext {
15
unsigned *addr;
16
int num_addr;
17
unsigned *data;
18
int num_data;
19
unsigned enable;
20
};
21
22
enum netxbig_led_mode {
23
NETXBIG_LED_OFF,
24
NETXBIG_LED_ON,
25
NETXBIG_LED_SATA,
26
NETXBIG_LED_TIMER1,
27
NETXBIG_LED_TIMER2,
28
NETXBIG_LED_MODE_NUM,
29
};
30
31
#define NETXBIG_LED_INVALID_MODE NETXBIG_LED_MODE_NUM
32
33
struct netxbig_led_timer {
34
unsigned long delay_on;
35
unsigned long delay_off;
36
enum netxbig_led_mode mode;
37
};
38
39
struct netxbig_led {
40
const char *name;
41
const char *default_trigger;
42
int mode_addr;
43
int *mode_val;
44
int bright_addr;
45
};
46
47
struct netxbig_led_platform_data {
48
struct netxbig_gpio_ext *gpio_ext;
49
struct netxbig_led_timer *timer;
50
int num_timer;
51
struct netxbig_led *leds;
52
int num_leds;
53
};
54
55
#endif /* __MACH_LEDS_NETXBIG_H */
56
57