blob: d88a65b9cf0570d2ddcfca52c696cda5a4ba3c66 [file] [log] [blame]
r.xiaoec113d12024-01-12 02:13:28 -08001#include "lynq-qser-autosuspend.h"
2
3#include <stdio.h>
4#include <unistd.h>
5#include <stddef.h>
6#include "mbtk_type.h"
7#include "mbtk_log.h"
8
9
10static void qser_lpm_handler(qser_lpm_edge_t edge_state)
11{
12 printf("this is qser_lpm_handler, edge_state=%d\n", edge_state);
13}
14
15
16int main(int argc, char *argv[])
17{
18 char operator[10];
19 int opt;
20 int lv_voll = 0;
21 int fd_t;
22
23
24 while(1)
25 {
26 printf("=========sleep main=========\n"
27 "\t0 exit\n"
28 "\t1 autosuspend enable\n"
29 "\t2 wakelock create\n"
30 "\t3 wakelock lock\n"
31 "\t4 wakelock unlock\n"
32 "\t5 wakelock destroy\n"
33 "\t6 whitelist set\n"
34 "\t7 whitelist get\n"
r.xiaocfd7c682024-01-22 03:59:46 -080035 "\t8 lpm init\n"
36 "\t9 lpm destroy\n"
r.xiaoec113d12024-01-12 02:13:28 -080037 "operator: >> \n");
38
39 fgets(operator, sizeof(operator), stdin);
40 fflush(stdin);
41 opt = atoi(operator);
42 switch (opt)
43 {
44 case 0:
45 printf("main exit\n");
46 return 0;
47 case 1:
48 {
49 int en;
50 printf(">>>>>Input 0 or 1<<<<<\n");
51 memset(operator, 0x00, sizeof(operator));
52 fgets(operator, sizeof(operator), stdin);
53 fflush(stdin);
54 en = atoi(operator);
55 if (en == 0 || en == 1)
56 {
57 qser_autosuspend_enable(en);
58 }
59 else
r.xiaocfd7c682024-01-22 03:59:46 -080060 printf(">>>>>re Input 0 or 1 error<<<<<\n");
r.xiaoec113d12024-01-12 02:13:28 -080061 break;
62 }
63 case 2:
64 {
r.xiaocfd7c682024-01-22 03:59:46 -080065 printf(">>>>>Input name<<<<<\n");
r.xiaoec113d12024-01-12 02:13:28 -080066 char *t_name = NULL;
r.xiaoec113d12024-01-12 02:13:28 -080067 int len_name;
r.xiaocfd7c682024-01-22 03:59:46 -080068 memset(operator, 0x00, sizeof(operator));
69 fgets(operator, sizeof(operator), stdin);
r.xiaoec113d12024-01-12 02:13:28 -080070 fflush(stdin);
r.xiaocfd7c682024-01-22 03:59:46 -080071 len_name = strlen(operator);
72 strncpy(t_name, operator, len_name);
r.xiaoec113d12024-01-12 02:13:28 -080073
r.xiaocfd7c682024-01-22 03:59:46 -080074 fd_t = qser_wakelock_create(t_name, len_name);
75 printf(">>>>>Output ID NUM =[%d]<<<<<\n",fd_t);
r.xiaoec113d12024-01-12 02:13:28 -080076 break;
77 }
78 case 3:
r.xiaocfd7c682024-01-22 03:59:46 -080079 printf(">>>>>Input ID NUM<<<<<\n");
80 fgets(operator, sizeof(operator), stdin);
81 fflush(stdin);
82 fd_t = atoi(operator);
r.xiaoec113d12024-01-12 02:13:28 -080083 qser_wakelock_lock(fd_t);
84 break;
85 case 4:
r.xiaocfd7c682024-01-22 03:59:46 -080086 printf(">>>>>Input ID NUM<<<<<\n");
87 memset(operator, 0x00, sizeof(operator));
88 fgets(operator, sizeof(operator), stdin);
89 fflush(stdin);
90 fd_t = atoi(operator);
r.xiaoec113d12024-01-12 02:13:28 -080091 qser_wakelock_unlock(fd_t);
92 break;
93 case 5:
r.xiaocfd7c682024-01-22 03:59:46 -080094 printf(">>>>>Input ID NUM<<<<<\n");
95 memset(operator, 0x00, sizeof(operator));
96 fgets(operator, sizeof(operator), stdin);
97 fflush(stdin);
98 fd_t = atoi(operator);
r.xiaoec113d12024-01-12 02:13:28 -080099 qser_wakelock_destroy(fd_t);
100 break;
101 case 6:
102 {
r.xiaocfd7c682024-01-22 03:59:46 -0800103 printf(">>>>>Input whitelish NUM 4位(eg:1010) <<<<<\n");
104 char* whitelish = "1010";
105
106 printf(">>>server list = [%s]\n", whitelish);
r.xiaoec113d12024-01-12 02:13:28 -0800107 qser_whitelist_set(whitelish);
108 }
109 break;
110 case 7:
111 {
r.xiaocfd7c682024-01-22 03:59:46 -0800112 char whitelish_get[10]={0};
113 printf(">>>>>get\n");
114
115 qser_whitelist_get(whitelish_get);
116 printf(">>>server list = %s\n", whitelish_get);
r.xiaoec113d12024-01-12 02:13:28 -0800117 }
118 break;
119 case 8:
120 {
121 qser_pm_cfg_t *qser_lpm_cfg = NULL;
122 qser_lpm_cfg = (qser_pm_cfg_t *)malloc(sizeof(qser_pm_cfg_t));
123 qser_lpm_cfg->wakeupin.wakeupin_pin = 50;
124 qser_lpm_cfg->wakeupin.wakeupin_edge = E_QL_LPM_FALLING;
125 qser_lpm_init(qser_lpm_handler, qser_lpm_cfg);
r.xiaocfd7c682024-01-22 03:59:46 -0800126 free(qser_lpm_cfg);
r.xiaoec113d12024-01-12 02:13:28 -0800127 }
128 break;
129 case 9:
130 qser_lpm_deinit();
131 break;
132
133 default:
134 break;
135 }
136
137 }
138
139 return 0;
140}
141