blob: 5529eceefd709ac84b0e64d55fecac801a58168b [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -07001/*******************************************************************************
2 * Copyright (C) 2007, ZTE Corporation.
3 *
4 * File Name: drvs_io_led.h
5 * File Mark:
6 * Description:
7 * Others:
8 * Version: 1.0
9 * Author: yuxiang
10 * Date: 2014-07-03
11 * History 1:
12 * Date:
13 * Version:
14 * Author:
15 * Modification:
16 * History 2:
17 ********************************************************************************/
18
19#ifndef _DRVS_IO_LED_H
20#define _DRVS_IO_LED_H
21
22/****************************************************************************
23* Include files
24****************************************************************************/
25#include "drvs_io.h"
26/****************************************************************************
27* Macros
28****************************************************************************/
29#define ZDRV_DEV_LED "led"
30/****************************************************************************
31* Types
32****************************************************************************/
33typedef enum {
34 LED_BRIGHTNESS_0 = 0,
35 LED_BRIGHTNESS_1 , /* 0000 - 10mA */
36 LED_BRIGHTNESS_2 , /* 0001 - 15mA */
37 LED_BRIGHTNESS_3 , /* 0010 - 20mA */
38 LED_BRIGHTNESS_4 , /* 30mA */
39 LED_BRIGHTNESS_5 , /* 40mA */
40 LED_BRIGHTNESS_6 , /* 50mA */
41 LED_BRIGHTNESS_7 , /* 60mA */
42 LED_BRIGHTNESS_8 , /* 70mA */
43 LED_BRIGHTNESS_9 , /* 80mA */
44 LED_BRIGHTNESS_10 , /* 90mA */
45 LED_BRIGHTNESS_11 , /* 100mA */
46 LED_BRIGHTNESS_12 , /* 110mA */
47 LED_BRIGHTNESS_13 , /* 1100 - 120mA */
48 LED_BRIGHTNESS_14 , /* 1101 - 120mA */
49 LED_BRIGHTNESS_15 , /* 1110 - 120mA */
50 LED_BRIGHTNESS_16 , /* 1111 - 120mA */
51 LED_BRIGHTNESS_MAX,
52}T_ZDrvLed_Brightness;
53
54#define LED_RED_ON (1<<0)
55#define LED_GREEN_ON (1<<1)
56#define LED_BLUE_ON (1<<2)
57typedef enum
58{
59 LED_COLOR_RED =LED_RED_ON,
60 LED_COLOR_GREEN =LED_GREEN_ON,
61 LED_COLOR_BLUE =LED_BLUE_ON,
62 LED_COLOR_YELLOW=LED_RED_ON | LED_GREEN_ON,
63 LED_COLOR_PURPLE=LED_RED_ON | LED_BLUE_ON,
64 LED_COLOR_CYAN =LED_GREEN_ON | LED_BLUE_ON,
65 LED_COLOR_WHITE =LED_RED_ON |LED_GREEN_ON | LED_BLUE_ON,
66 //LED_COLOR_BLACK,
67 LED_COLOR_MAX,
68}T_ZDrvLed_Color;
69
70typedef enum
71{
72 LED_STATE_OFF = 0,
73 LED_STATE_ON ,
74 //LED_STATE_BLINK_OFF,
75 //LED_STATE_BLINK_ON,
76 LED_STATE_BLINK,
77 LED_STATE_MAX,
78}T_ZDrvLed_State;
79
80typedef enum
81{
82 LED_TRAFFIC_10 = 0,
83 LED_TRAFFIC_20 ,
84 LED_TRAFFIC_30,
85 LED_TRAFFIC_40,
86 LED_TRAFFIC_50,
87 LED_TRAFFIC_60,
88 LED_TRAFFIC_70,
89 LED_TRAFFIC_80,
90 LED_TRAFFIC_90,
91 LED_TRAFFIC_100,
92 LED_TRAFFIC_MAX,
93}T_ZDrvLed_Traffic;
94
95typedef enum
96{
97 LED_SLEEP_ENTER = 0,
98 LED_SLEEP_EXIT,
99 LED_SLEEP_MAX,
100
101}T_ZDrvLed_Sleep;
102
103typedef enum
104{
105 LED_DEVICE_NAME_WAN = 0,
106 LED_DEVICE_NAME_LAN,
107 LED_DEVICE_NAME_SMS,
108 LED_DEVICE_NAME_BATTERY,
109 LED_DEVICE_NAME_TRAFFIC,
110 LED_DEVICE_LEFT_1,
111 LED_DEVICE_LEFT_2,
112 LED_DEVICE_LEFT_3,
113 LED_DEVICE_LEFT_4,
114 LED_DEVICE_NAME_LGP,
115
116 LED_DEVICE_NAME_SLEEP,
117 LED_DEVICE_NAME_MAX,
118}T_ZDrvLed_DevName;
119
120typedef struct
121{
122 UINT32 uBlinkOnTime;
123 UINT32 uBlinkOffTime;
124}T_ZDrvLed_Blink;
125
126/*define for led ctrl mod by mcu or hardware 0x01 BLED_REG*/
127
128typedef enum
129{
130 LED_HW_CTRL = 0,
131 LED_MCU_CTRL,
132
133 LED_MAX_CTRL,
134}T_ZDrvLed_CtrlMod;
135
136
137/*IOCTL¿ØÖƲÙ×÷´«µÝ²ÎÊýÀàÐÍ*/
138typedef struct
139{
140 //T_ZDrvLed_DevName uDeviceName;
141 T_ZDrvLed_Brightness uBrightness;
142 T_ZDrvLed_Color uColor;
143 T_ZDrvLed_State uState;
144 T_ZDrvLed_Traffic uTraffic;
145 T_ZDrvLed_Sleep uSleep;
146 T_ZDrvLed_Blink ledBlink;
147 T_ZDrvLed_CtrlMod ledCtrlMod;
148}T_ZDrvLed_Descriptor;
149
150#if 0
151/*ÓÃÓÚ»ñÈ¡É豸ÐÅÏ¢*/
152typedef struct
153{
154 T_ZDrvLed_DevName ledName;
155 T_ZDrvLed_State ledState ;
156 T_ZDrvLed_Color ledColor ;
157 T_ZDrvLed_Brightness ledBrightNess;
158
159}T_LED_INFO;
160#endif
161
162#endif/*_DRVS_IO_LED_H*/
163