FreeCalypso > hg > freecalypso-tools
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); |