rtlwifi: use alloc_workqueue
[linux-2.6.git] / drivers / net / wireless / rtl818x / rtl8187_leds.h
1 /*
2  * Definitions for RTL8187 leds
3  *
4  * Copyright 2009 Larry Finger <Larry.Finger@lwfinger.net>
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 {
25         LED_PIN_LED0,
26         LED_PIN_LED1,
27         LED_PIN_GPIO0,
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 */