1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 // Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd 3 4 #define LOG_TAG "NPU_POWER" 5 #include <npu_powerctrl.h> 6 #include <iostream> 7 #include <unistd.h> 8 usage(void)9static void usage(void) 10 { 11 printf("Usage:npu_powerctrl [-s] [-r] [-o] [-i] [-d]\n"); 12 printf("-s npu enter sleep\n"); 13 printf("-r wakup npu\n"); 14 printf("-o power up or reset npu\n"); 15 printf("-i gpio init\n"); 16 printf("-d power down\n"); 17 } 18 main(int argc,char * argv[])19int main(int argc, char* argv[]) 20 { 21 int ch, ret = -1; 22 23 while ((ch = getopt(argc, argv, "s::r::o::i::d::")) != -1) { 24 switch (ch) { 25 case 's': 26 ret = npu_suspend(); 27 printf("suspend %d\n", ret); 28 break; 29 case 'r': 30 ret = npu_resume(); 31 printf("resume %d\n", ret); 32 break; 33 case 'o': 34 ret = 0; 35 npu_reset(); 36 printf("powerup\n"); 37 break; 38 case 'i': 39 npu_power_gpio_init(); 40 ret = 0; 41 printf("gpio init\n"); 42 break; 43 case 'd': 44 npu_poweroff(); 45 ret = 0; 46 printf("powerdown\n"); 47 break; 48 default: 49 usage(); 50 break; 51 } 52 return ret; 53 } 54 usage(); 55 56 return ret; 57 } 58