int do_psc_cmd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { int psc_module; int res; if (argc != 3) goto psc_cmd_usage; psc_module = simple_strtoul(argv[1], NULL, 10); if (strcmp(argv[2], "en") == 0) { res = psc_enable_module(psc_module); printf("psc_enable_module(%d) - %s\n", psc_module, (res) ? "ERROR" : "OK"); return 0; } if (strcmp(argv[2], "di") == 0) { res = psc_disable_module(psc_module); printf("psc_disable_module(%d) - %s\n", psc_module, (res) ? "ERROR" : "OK"); return 0; } if (strcmp(argv[2], "domain") == 0) { res = psc_disable_domain(psc_module); printf("psc_disable_domain(%d) - %s\n", psc_module, (res) ? "ERROR" : "OK"); return 0; } psc_cmd_usage: return cmd_usage(cmdtp); }
void xhci_hcd_stop(int index) { /* Disable USB */ if (keystone_xhci_phy_suspend()) return; if (psc_disable_module(KS2_LPSC_USB)) { debug("PSC disable module USB failed!\n"); return; } /* Disable PHY */ keystone_xhci_phy_unset(keystone.phy); /* memset(&keystone, 0, sizeof(struct keystone_xhci)); */ debug("xhci_hcd_stop OK.\n"); }