comparison rvinterf/tmsh/l1cmd.c @ 120:12dbb47ad3f7

fc-tmsh: rfpw and rfpr accept keyword arguments
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 18 Feb 2017 08:02:22 +0000
parents 6ce20d48e9ee
children cad9129d0f03
comparison
equal deleted inserted replaced
119:6ce20d48e9ee 120:12dbb47ad3f7
196 cmdpkt[5] = bitmask >> 8; 196 cmdpkt[5] = bitmask >> 8;
197 send_etm_cmd(cmdpkt, 5); 197 send_etm_cmd(cmdpkt, 5);
198 return(0); 198 return(0);
199 } 199 }
200 200
201 static struct kwtab rf_param_arg[] = {
202 {"bcch-arfcn", BCCH_ARFCN},
203 {"tch-arfcn", TCH_ARFCN},
204 {"mon-arfcn", MON_ARFCN},
205 {"pdtch-arfcn", PDTCH_ARFCN},
206 {"std-band", STD_BAND_FLAG},
207 {"afc-enable", AFC_ENA_FLAG},
208 {"afc-dac-val", AFC_DAC_VALUE},
209 {"init-afc-dac", INITIAL_AFC_DAC},
210 {"multislot-class", MULTISLOT_CLASS},
211 {0, 0}
212 };
213
201 cmd_rfpw2(argc, argv) 214 cmd_rfpw2(argc, argv)
202 char **argv; 215 char **argv;
203 { 216 {
204 u16 index, value; 217 u16 index, value;
205 u_char cmdpkt[7]; 218 u_char cmdpkt[7];
206 219
207 index = strtoul(argv[1], 0, 0); 220 if (keyword_or_num(argv[1], rf_param_arg, &index))
221 return(ERROR_USAGE);
208 value = strtol(argv[2], 0, 0); 222 value = strtol(argv[2], 0, 0);
209 cmdpkt[1] = RF_PARAM_WRITE; 223 cmdpkt[1] = RF_PARAM_WRITE;
210 cmdpkt[2] = index; 224 cmdpkt[2] = index;
211 cmdpkt[3] = index >> 8; 225 cmdpkt[3] = index >> 8;
212 cmdpkt[4] = value; 226 cmdpkt[4] = value;
220 { 234 {
221 u16 index; 235 u16 index;
222 u8 val1, val2; 236 u8 val1, val2;
223 u_char cmdpkt[7]; 237 u_char cmdpkt[7];
224 238
225 index = strtoul(argv[1], 0, 0); 239 if (keyword_or_num(argv[1], rf_param_arg, &index))
240 return(ERROR_USAGE);
226 val1 = strtoul(argv[2], 0, 0); 241 val1 = strtoul(argv[2], 0, 0);
227 val2 = strtoul(argv[3], 0, 0); 242 val2 = strtoul(argv[3], 0, 0);
228 cmdpkt[1] = RF_PARAM_WRITE; 243 cmdpkt[1] = RF_PARAM_WRITE;
229 cmdpkt[2] = index; 244 cmdpkt[2] = index;
230 cmdpkt[3] = index >> 8; 245 cmdpkt[3] = index >> 8;
252 char **argv; 267 char **argv;
253 { 268 {
254 u16 index; 269 u16 index;
255 u_char cmdpkt[5]; 270 u_char cmdpkt[5];
256 271
257 index = strtoul(argv[1], 0, 0); 272 if (keyword_or_num(argv[1], rf_param_arg, &index))
273 return(ERROR_USAGE);
258 cmdpkt[1] = RF_PARAM_READ; 274 cmdpkt[1] = RF_PARAM_READ;
259 cmdpkt[2] = index; 275 cmdpkt[2] = index;
260 cmdpkt[3] = index >> 8; 276 cmdpkt[3] = index >> 8;
261 send_etm_cmd(cmdpkt, 3); 277 send_etm_cmd(cmdpkt, 3);
262 return(0); 278 return(0);