FreeCalypso > hg > freecalypso-tools
view rvinterf/etmsync/fscmdtab.c @ 497:74610c4f10f7
target-utils: added 10 ms delay at the end of abb_power_off()
The deosmification of the ABB access code (replacement of osmo_delay_ms()
bogus delays with correctly-timed ones, which are significantly shorter)
had one annoying side effect: when executing the poweroff command from
any of the programs, one last '=' prompt character was being sent (and
received by the x86 host) as the Calypso board powers off. With delays
being shorter now, the abb_power_off() function was returning and the
standalone program's main loop was printing its prompt before the Iota chip
fully executed the switch-off sequence!
I thought about inserting an endless tight loop at the end of the
abb_power_off() function, but the implemented solution of a 10 ms delay
is a little nicer IMO because if the DEVOFF operation doesn't happen for
some reason in a manual hacking scenario, there won't be an artificial
blocker in the form of a tight loop keeping us from further poking around.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 25 May 2019 20:44:05 +0000 |
parents | 0cb766828d7a |
children | adcb617e6a92 |
line wrap: on
line source
/* * fc-fsio command dispatch table */ #include "cmdtab.h" extern int cmd_cpout(); extern int cmd_cpout_file(); extern int cmd_delete(); extern int cmd_dieid(); extern int cmd_exec(); extern int cmd_exit(); extern int cmd_fd(); extern int cmd_ffs2ver(); extern int cmd_format(); extern int cmd_fwrite(); extern int cmd_hd(); extern int cmd_help(); extern int cmd_ll(); extern int cmd_ls(); extern int cmd_memdump(); extern int cmd_mkdir(); extern int cmd_omemdump(); extern int cmd_preformat(); extern int cmd_readlink(); extern int cmd_set_imeisv(); extern int cmd_set_pcm_string(); extern int cmd_set_rfcap(); extern int cmd_stat(); extern int cmd_symlink(); extern int cmd_uploadfs(); extern int cmd_upload_file(); extern int cmd_upload_rf_table(); extern int cmd_upload_subtree(); extern int cmd_write_battery_table(); extern int cmd_write_charging_config(); extern int create_std_dirs(); extern int get_pirelli_imei(); extern int pirelli_magnetite_init(); struct cmdtab cmdtab[] = { {"cpout", 2, 2, cmd_cpout}, {"cpout-file", 2, 2, cmd_cpout_file}, {"create-std-dirs", 0, 0, create_std_dirs}, {"delete", 1, 1, cmd_delete}, {"dieid", 0, 0, cmd_dieid}, {"exec", 1, 1, cmd_exec}, {"exit", 0, 0, cmd_exit}, {"fd", 2, 3, cmd_fd}, {"ffs2ver", 0, 0, cmd_ffs2ver}, {"format", 1, 1, cmd_format}, {"fwrite", 3, 3, cmd_fwrite}, {"hd", 1, 1, cmd_hd}, {"help", 0, 1, cmd_help}, {"ll", 1, 1, cmd_ll}, {"ls", 1, 2, cmd_ls}, {"memdump", 2, 2, cmd_memdump}, {"mkdir", 1, 1, cmd_mkdir}, {"mk-std-dirs", 0, 0, create_std_dirs}, {"omemdump", 2, 2, cmd_omemdump}, {"pirelli-get-imei", 0, 0, get_pirelli_imei}, {"pirelli-magnetite-init", 0, 0, pirelli_magnetite_init}, {"preformat", 0, 0, cmd_preformat}, {"readlink", 1, 1, cmd_readlink}, {"set-imeisv", 2, 2, cmd_set_imeisv}, {"set-pcm-string", 2, 2, cmd_set_pcm_string}, {"set-rfcap", 1, 1, cmd_set_rfcap}, {"stat", 1, 1, cmd_stat}, {"symlink", 2, 2, cmd_symlink}, {"upload-file", 2, 2, cmd_upload_file}, {"upload-fs", 1, 1, cmd_uploadfs}, {"upload-rf-table", 1, 2, cmd_upload_rf_table}, {"upload-subtree", 2, 2, cmd_upload_subtree}, {"write-battery-table", 1, 1, cmd_write_battery_table}, {"write-charging-config", 1, 1, cmd_write_charging_config}, {0, 0, 0, 0} };