Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
leds.h
Go to the documentation of this file.
1 /*
2  * Definitions for RTL8187 leds
3  *
4  * Copyright 2009 Larry Finger <[email protected]>
5  *
6  * Based on the LED handling in the r8187 driver, which is:
7  * Copyright (c) Realtek Semiconductor Corp. All rights reserved.
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License version 2 as
11  * published by the Free Software Foundation.
12  */
13 
14 #ifndef RTL8187_LED_H
15 #define RTL8187_LED_H
16 
17 #ifdef CONFIG_RTL8187_LEDS
18 
19 #define RTL8187_LED_MAX_NAME_LEN 21
20 
21 #include <linux/leds.h>
22 #include <linux/types.h>
23 
24 enum {
28  LED_PIN_HW
29 };
30 
31 enum {
32  EEPROM_CID_RSVD0 = 0x00,
33  EEPROM_CID_RSVD1 = 0xFF,
34  EEPROM_CID_ALPHA0 = 0x01,
35  EEPROM_CID_SERCOMM_PS = 0x02,
36  EEPROM_CID_HW = 0x03,
37  EEPROM_CID_TOSHIBA = 0x04,
38  EEPROM_CID_QMI = 0x07,
39  EEPROM_CID_DELL = 0x08
40 };
41 
42 struct rtl8187_led {
43  struct ieee80211_hw *dev;
44  /* The LED class device */
45  struct led_classdev led_dev;
46  /* The pin/method used to control the led */
47  u8 ledpin;
48  /* The unique name string for this LED device. */
49  char name[RTL8187_LED_MAX_NAME_LEN + 1];
50  /* If the LED is radio or tx/rx */
51  bool is_radio;
52 };
53 
54 void rtl8187_leds_init(struct ieee80211_hw *dev, u16 code);
55 void rtl8187_leds_exit(struct ieee80211_hw *dev);
56 
57 #endif /* def CONFIG_RTL8187_LEDS */
58 
59 #endif /* RTL8187_LED_H */