/* ------------------------------------------------------------------------*//** * @FUNCTION main_dra7xx_dump * @BRIEF dump some DRA7 registers, which category is found in * argv * @RETURNS 0 in case of success * OMAPCONF_ERR_CPU * OMAPCONF_ERR_ARG * @param[in] argc: number of arguments * @param[in] argv: argument(s) * @DESCRIPTION dump some DRA7 registers, which category is found in * argv *//*------------------------------------------------------------------------ */ int main_dra7xx_dump(int argc, char *argv[]) { dpll_dra7xx_id dpll_id; CHECK_NULL_ARG(argv, OMAPCONF_ERR_ARG); if (argc < 1) { help(HELP_USAGE); return OMAPCONF_ERR_ARG; } else if (strcmp(argv[0], "prcm") == 0) { if (argc == 1) return prcm_dra7xx_dump(NULL); else if (argc == 2) return prcm_dra7xx_dump(argv[1]); else return err_arg_too_many_msg_show(HELP_PRCM); } else if (strcmp(argv[0], "dpll") == 0) { if (argc == 1) return dpll_dra7xx_dump(stdout, DPLL_DRA7XX_ID_MAX); else if (argc == 2) { if (strcmp(argv[1], "all") == 0) dpll_id = DPLL_DRA7XX_ID_MAX; else { dpll_id = dpll_dra7xx_s2id(argv[1]); if (dpll_id == DPLL_DRA7XX_ID_MAX) return err_arg_msg_show(HELP_DPLL); } return dpll_dra7xx_dump(stdout, dpll_id); } else return err_arg_too_many_msg_show(HELP_PRCM); } else if (strncmp(argv[0], "mcasp", 5) == 0) { if (argc == 1) { return dra7xx_mcasp_dumpregs(stdout, argc, argv); } else { return err_arg_too_many_msg_show(HELP_MCASP); } } else if (strcmp(argv[0], "audioic") == 0) { if (argc == 1 || argc == 3) return tlv320aic3x_dumpregs(argc, argv); else return err_arg_too_many_msg_show(HELP_AUDIOIC); } else if (!strcmp(argv[0], "crossbar")) { if (argc == 1 || argc == 2 || argc == 3) { return dra7_crossbar_dump_main(argc - 1, argv + 1); } else { return err_arg_too_many_msg_show(HELP_CROSSBAR); } } else { return err_unknown_argument_msg_show(argv[0]); } }
/* ------------------------------------------------------------------------*//** * @FUNCTION tlv320aic3x_main * @BRIEF main entry point * @RETURNS 0 in case of success * OMAPCONF_ERR_ARG * OMAPCONF_ERR_INTERNAL * @param[in] argc: shell input argument number * @param[in] argv: shell input argument(s) * @DESCRIPTION main entry point *//*------------------------------------------------------------------------ */ int tlv320aic3x_main(int argc, char *argv[]) { int ret; if (argc == 1 || argc == 3) { if (strcmp(argv[0], "dump") == 0) { ret = tlv320aic3x_dumpregs(argc, argv); } else { help(HELP_AUDIOIC); ret = OMAPCONF_ERR_ARG; } } else { help(HELP_AUDIOIC); ret = OMAPCONF_ERR_ARG; } return ret; }