FreeCalypso > hg > freecalypso-tools
annotate rvinterf/tmsh/l1cmd.c @ 117:c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 18 Feb 2017 07:44:12 +0000 |
parents | c41511b79b1d |
children | 9aeabcbe6a3d |
rev | line source |
---|---|
112
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * In this module we are going to implement commands which send |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * TM3 command packets to the L1TM firmware component: RF calibration |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 * and test modes. |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 */ |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 #include <sys/types.h> |
117
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
8 #include <ctype.h> |
112
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 #include <stdio.h> |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 #include <string.h> |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 #include <strings.h> |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 #include <stdlib.h> |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 #include "pktmux.h" |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 #include "limits.h" |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 #include "localtypes.h" |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 #include "tm3.h" |
117
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
17 #include "l1tm.h" |
112
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 #include "exitcodes.h" |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 cmd_tminit(argc, argv) |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 char **argv; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 { |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 u_char cmdpkt[3]; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 cmdpkt[1] = TM_INIT; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 send_etm_cmd(cmdpkt, 1); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 return(0); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 } |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 cmd_tms(argc, argv) |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 char **argv; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 { |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 u16 arg; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 u_char cmdpkt[5]; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 arg = strtoul(argv[1], 0, 0); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 cmdpkt[1] = TM_MODE_SET; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 cmdpkt[2] = arg; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 cmdpkt[3] = arg >> 8; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 send_etm_cmd(cmdpkt, 3); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 return(0); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 } |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 cmd_tm3ver(argc, argv) |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 char **argv; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 { |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 u16 arg; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 u_char cmdpkt[5]; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 arg = strtoul(argv[1], 0, 16); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 cmdpkt[1] = VERSION_GET; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 cmdpkt[2] = arg; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 cmdpkt[3] = arg >> 8; |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 send_etm_cmd(cmdpkt, 3); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 return(0); |
2825d79bb151
fc-tmsh: beginning of L1TM command support
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 } |
113
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
57 |
117
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
58 static |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
59 is_num_string(argstr) |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
60 char *argstr; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
61 { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
62 char *cp = argstr; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
63 |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
64 if (!isdigit(*cp++)) |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
65 return(0); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
66 while (*cp) { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
67 if (!isdigit(*cp++)) |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
68 return(0); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
69 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
70 return(1); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
71 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
72 |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
73 struct kwtab { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
74 char *kw; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
75 int val; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
76 }; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
77 |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
78 static |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
79 keyword_or_num(argstr, kwtab, valp) |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
80 char *argstr; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
81 struct kwtab *kwtab; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
82 u16 *valp; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
83 { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
84 struct kwtab *tp; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
85 |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
86 if (is_num_string(argstr)) { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
87 *valp = atoi(argstr); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
88 return(0); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
89 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
90 for (tp = kwtab; tp->kw; tp++) { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
91 if (!strcmp(tp->kw, argstr)) { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
92 *valp = tp->val; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
93 return(0); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
94 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
95 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
96 printf("error: non-numeric argument not understood\n"); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
97 return(ERROR_USAGE); |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
98 } |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
99 |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
100 static struct kwtab rfe_arg[] = { |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
101 {"stop-all", STOP_ALL}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
102 {"rx-tch", RX_TCH}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
103 {"tx-tch", TX_TCH}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
104 {"rx-tx-tch", RX_TX_TCH}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
105 {"rx-tx-pdtch", RX_TX_PDTCH}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
106 {"rx-tch-cont", RX_TCH_CONT}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
107 {"tx-tch-cont", TX_TCH_CONT}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
108 {"bcch-loop", BCCH_LOOP}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
109 {"sb-loop", SB_LOOP}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
110 {"fb1-loop", FB1_LOOP}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
111 {"fb0-loop", FB0_LOOP}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
112 {"single-pm", SINGLE_PM}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
113 {"rx-tx-pdtch-mon", RX_TX_PDTCH_MON}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
114 {"rx-tx-mon-tch", RX_TX_MON_TCH}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
115 {"rx-tx-mon", RX_TX_MON}, |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
116 {0, 0} |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
117 }; |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
118 |
113
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
119 cmd_rfe(argc, argv) |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
120 char **argv; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
121 { |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
122 u16 arg; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
123 u_char cmdpkt[5]; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
124 |
117
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
125 if (keyword_or_num(argv[1], rfe_arg, &arg)) |
c91500530216
fc-tmsh: l1tm keyword argument framework implemented, used in rfe command
Mychaela Falconia <falcon@freecalypso.org>
parents:
115
diff
changeset
|
126 return(ERROR_USAGE); |
113
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
127 cmdpkt[1] = RF_ENABLE; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
128 cmdpkt[2] = arg; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
129 cmdpkt[3] = arg >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
130 send_etm_cmd(cmdpkt, 3); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
131 return(0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
132 } |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
133 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
134 cmd_scw(argc, argv) |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
135 char **argv; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
136 { |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
137 u16 index, value; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
138 u_char cmdpkt[7]; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
139 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
140 index = strtoul(argv[1], 0, 0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
141 value = strtoul(argv[2], 0, 0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
142 cmdpkt[1] = STATS_CONFIG_WRITE; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
143 cmdpkt[2] = index; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
144 cmdpkt[3] = index >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
145 cmdpkt[4] = value; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
146 cmdpkt[5] = value >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
147 send_etm_cmd(cmdpkt, 5); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
148 return(0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
149 } |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
150 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
151 cmd_scr(argc, argv) |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
152 char **argv; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
153 { |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
154 u16 index; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
155 u_char cmdpkt[5]; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
156 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
157 index = strtoul(argv[1], 0, 0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
158 cmdpkt[1] = STATS_CONFIG_READ; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
159 cmdpkt[2] = index; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
160 cmdpkt[3] = index >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
161 send_etm_cmd(cmdpkt, 3); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
162 return(0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
163 } |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
164 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
165 cmd_sr(argc, argv) |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
166 char **argv; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
167 { |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
168 u16 type, bitmask; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
169 u_char cmdpkt[7]; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
170 |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
171 type = strtoul(argv[1], 0, 0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
172 bitmask = strtoul(argv[2], 0, 16); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
173 cmdpkt[1] = STATS_READ; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
174 cmdpkt[2] = type; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
175 cmdpkt[3] = type >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
176 cmdpkt[4] = bitmask; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
177 cmdpkt[5] = bitmask >> 8; |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
178 send_etm_cmd(cmdpkt, 5); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
179 return(0); |
816d91739a32
fc-tmsh: rfe, scw, scr and sr commands implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
112
diff
changeset
|
180 } |
114
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
181 |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
182 cmd_rfpw2(argc, argv) |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
183 char **argv; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
184 { |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
185 u16 index, value; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
186 u_char cmdpkt[7]; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
187 |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
188 index = strtoul(argv[1], 0, 0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
189 value = strtol(argv[2], 0, 0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
190 cmdpkt[1] = RF_PARAM_WRITE; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
191 cmdpkt[2] = index; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
192 cmdpkt[3] = index >> 8; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
193 cmdpkt[4] = value; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
194 cmdpkt[5] = value >> 8; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
195 send_etm_cmd(cmdpkt, 5); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
196 return(0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
197 } |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
198 |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
199 cmd_rfpw3(argc, argv) |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
200 char **argv; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
201 { |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
202 u16 index; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
203 u8 val1, val2; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
204 u_char cmdpkt[7]; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
205 |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
206 index = strtoul(argv[1], 0, 0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
207 val1 = strtoul(argv[2], 0, 0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
208 val2 = strtoul(argv[3], 0, 0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
209 cmdpkt[1] = RF_PARAM_WRITE; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
210 cmdpkt[2] = index; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
211 cmdpkt[3] = index >> 8; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
212 cmdpkt[4] = val1; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
213 cmdpkt[5] = val2; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
214 send_etm_cmd(cmdpkt, 5); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
215 return(0); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
216 } |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
217 |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
218 cmd_rfpw(argc, argv) |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
219 char **argv; |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
220 { |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
221 switch (argc) { |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
222 case 3: |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
223 return cmd_rfpw2(argc, argv); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
224 case 4: |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
225 return cmd_rfpw3(argc, argv); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
226 default: |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
227 fprintf(stderr, "BUG: wrong argc in cmd_rfpw()\n"); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
228 return(ERROR_BUG); |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
229 } |
eb54195fded6
fc-tmsh: rfpw command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
113
diff
changeset
|
230 } |
115
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
231 |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
232 cmd_rfpr(argc, argv) |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
233 char **argv; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
234 { |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
235 u16 index; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
236 u_char cmdpkt[5]; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
237 |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
238 index = strtoul(argv[1], 0, 0); |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
239 cmdpkt[1] = RF_PARAM_READ; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
240 cmdpkt[2] = index; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
241 cmdpkt[3] = index >> 8; |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
242 send_etm_cmd(cmdpkt, 3); |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
243 return(0); |
c41511b79b1d
fc-tmsh: rfpr command implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
114
diff
changeset
|
244 } |