diff options
| author | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2021-05-27 12:55:03 +0200 |
|---|---|---|
| committer | Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> | 2021-05-27 12:55:03 +0200 |
| commit | 6b2fd5f520488ff62c65e0098defab1594832082 (patch) | |
| tree | 21fc731e61c299178818e3c794c50c9bf3d40b31 | |
| parent | c0a36a8499bb33acc27afe07fc5a63a9f3c3653c (diff) | |
| download | exynos-gpio-tool-6b2fd5f520488ff62c65e0098defab1594832082.tar.gz exynos-gpio-tool-6b2fd5f520488ff62c65e0098defab1594832082.tar.bz2 exynos-gpio-tool-6b2fd5f520488ff62c65e0098defab1594832082.zip | |
Add command to dump the GPS GPIOs
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
| -rw-r--r-- | main.c | 34 |
1 files changed, 30 insertions, 4 deletions
@@ -17,7 +17,7 @@ int usage(char* progname) { - printf("Usage: %s <flash|gpl1|gpl2|modem|test>\n", progname); + printf("Usage: %s <flash|gpl1|gpl2|gps|gpy0|modem|test>\n", progname); printf("\n"); printf("Available commands:\n"); printf("\tflash: dump flash GPIO (gpj1 1) status\n"); @@ -25,6 +25,7 @@ int usage(char* progname) " (for tests on gpio127 and gpio128)\n"); printf("\tgpl2: dump GPL2 GPIOs status" " (for tests on gpio127 and gpio128)\n"); + printf("\tgps: dump GPS GPIOs status\n"); printf("\tgpy0: dump GPY0 GPIOs status" " (for tests on gpio127 and gpio128)\n"); printf("\tmodem: dump the modem GPIOs status\n"); @@ -48,6 +49,29 @@ int dump_flash_gpio_status(int debug, char* devmem, int fd, size_t page_size) return 0; } +int dump_flash_gps_status(int debug, char* devmem, int fd, size_t page_size) +{ + int rc; + + rc = dump_gpio_infos(devmem, fd, page_size, "gpl2", 1); + if (rc == -1) { + printf("dump_gpio_infos failed with error %d\n", rc); + + /* TODO: return more precise error */ + return EX_UNAVAILABLE; + } + + rc = dump_gpio_infos(devmem, fd, page_size, "gpl2", 2); + if (rc == -1) { + printf("dump_gpio_infos failed with error %d\n", rc); + + /* TODO: return more precise error */ + return EX_UNAVAILABLE; + } + + return 0; +} + int dump_gpio_bank_status(int debug, char* devmem, int fd, size_t page_size, char* bank) { @@ -114,9 +138,7 @@ int main(int argc, char *argv[]) return EX_UNAVAILABLE; } - if (argc == 2 && !strcmp("test", argv[1])) { - return run_tests(debug, devmem, fd, page_size); - } else if (argc == 2 && !strcmp("flash", argv[1])) { + if (argc == 2 && !strcmp("flash", argv[1])) { return dump_flash_gpio_status(debug, devmem, fd, page_size); } else if (argc == 2 && !strcmp("gpl1", argv[1])) { return dump_gpio_bank_status(debug, devmem, fd, page_size, @@ -124,11 +146,15 @@ int main(int argc, char *argv[]) } else if (argc == 2 && !strcmp("gpl2", argv[1])) { return dump_gpio_bank_status(debug, devmem, fd, page_size, "gpl2"); + } else if (argc == 2 && !strcmp("gps", argv[1])) { + return dump_flash_gps_status(debug, devmem, fd, page_size); } else if (argc == 2 && !strcmp("gpy0", argv[1])) { return dump_gpio_bank_status(debug, devmem, fd, page_size, "gpy0"); } else if (argc == 2 && !strcmp("modem", argv[1])) { return dump_modem_gpio_infos(debug, devmem, fd, page_size); + } else if (argc == 2 && !strcmp("test", argv[1])) { + return run_tests(debug, devmem, fd, page_size); } else { usage(argv[0]); return EX_USAGE; |
