blob: 2350fe96d71c288036ca53f82cad7325bacd73b4 [file] [log] [blame]
lijuang7d235f42015-07-16 20:19:45 +08001/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
2*
3* Redistribution and use in source and binary forms, with or without
4* modification, are permitted provided that the following conditions are
5* met:
6* * Redistributions of source code must retain the above copyright
7* notice, this list of conditions and the following disclaimer.
8* * Redistributions in binary form must reproduce the above
9* copyright notice, this list of conditions and the following
10* disclaimer in the documentation and/or other materials provided
11* with the distribution.
12* * Neither the name of The Linux Foundation nor the names of its
13* contributors may be used to endorse or promote products derived
14* from this software without specific prior written permission.
15*
16* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
17* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
19* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
20* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
23* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
25* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
26* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27*/
28
29#ifndef __PLATFORM_MSM_SHARED_DISPLAY_MENU_H
30#define __PLATFORM_MSM_SHARED_DISPLAY_MENU_H
31
32#include <openssl/evp.h>
33
34#define SELECT_OPTION_MAX 5
35
36enum display_menu_type {
37 DISPLAY_MENU_YELLOW = 0,
38 DISPLAY_MENU_ORANGE,
39 DISPLAY_MENU_RED,
40 DISPLAY_MENU_MORE_OPTION,
41 DISPLAY_MENU_UNLOCK,
42};
43
44struct select_msg_info {
45 uint32_t option_start[SELECT_OPTION_MAX];
46 uint32_t option_end[SELECT_OPTION_MAX];
47 uint32_t option_bg[SELECT_OPTION_MAX];
48 uint32_t option_num;
49 uint32_t msg_type;
50 bool msg_timeout;
51 bool msg_power_key_pressed;
52 bool msg_volume_key_pressed;
53};
54
55enum display_thread_type {
56 DISPLAY_THREAD_UNLOCK = 0,
57 DISPLAY_THREAD_BOOT_STATE,
58};
59
60void wait_for_users_action(void);
61void display_unlock_menu(struct select_msg_info *msg_info);
62void display_boot_verified_menu(struct select_msg_info *msg_info, int type);
63void display_boot_verified_option(struct select_msg_info *msg_info);
64void display_menu_thread(int type);
65#endif /* __PLATFORM_MSM_SHARED_DISPLAY_MENU_H */