Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

rtc: remove 'setdate' test program

The tool is not embedded in the testing framework. 'rtc' from rtc-tools
serves as a much better programming example. No need to carry this tool
in the kernel tree.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Link: https://lore.kernel.org/r/20250320103433.11673-1-wsa+renesas@sang-engineering.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>

authored by

Wolfram Sang and committed by
Alexandre Belloni
424dfcd4 0cd73ab4

-80
-1
tools/testing/selftests/rtc/.gitignore
··· 1 1 # SPDX-License-Identifier: GPL-2.0-only 2 2 rtctest 3 - setdate
-2
tools/testing/selftests/rtc/Makefile
··· 4 4 5 5 TEST_GEN_PROGS = rtctest 6 6 7 - TEST_GEN_PROGS_EXTENDED = setdate 8 - 9 7 TEST_FILES := settings 10 8 11 9 include ../lib.mk
-77
tools/testing/selftests/rtc/setdate.c
··· 1 - // SPDX-License-Identifier: GPL-2.0-or-later 2 - /* Real Time Clock Driver Test 3 - * by: Benjamin Gaignard (benjamin.gaignard@linaro.org) 4 - * 5 - * To build 6 - * gcc rtctest_setdate.c -o rtctest_setdate 7 - */ 8 - 9 - #include <stdio.h> 10 - #include <linux/rtc.h> 11 - #include <sys/ioctl.h> 12 - #include <sys/time.h> 13 - #include <sys/types.h> 14 - #include <fcntl.h> 15 - #include <unistd.h> 16 - #include <stdlib.h> 17 - #include <errno.h> 18 - 19 - static const char default_time[] = "00:00:00"; 20 - 21 - int main(int argc, char **argv) 22 - { 23 - int fd, retval; 24 - struct rtc_time new, current; 25 - const char *rtc, *date; 26 - const char *time = default_time; 27 - 28 - switch (argc) { 29 - case 4: 30 - time = argv[3]; 31 - /* FALLTHROUGH */ 32 - case 3: 33 - date = argv[2]; 34 - rtc = argv[1]; 35 - break; 36 - default: 37 - fprintf(stderr, "usage: rtctest_setdate <rtcdev> <DD-MM-YYYY> [HH:MM:SS]\n"); 38 - return 1; 39 - } 40 - 41 - fd = open(rtc, O_RDONLY); 42 - if (fd == -1) { 43 - perror(rtc); 44 - exit(errno); 45 - } 46 - 47 - sscanf(date, "%d-%d-%d", &new.tm_mday, &new.tm_mon, &new.tm_year); 48 - new.tm_mon -= 1; 49 - new.tm_year -= 1900; 50 - sscanf(time, "%d:%d:%d", &new.tm_hour, &new.tm_min, &new.tm_sec); 51 - 52 - fprintf(stderr, "Test will set RTC date/time to %d-%d-%d, %02d:%02d:%02d.\n", 53 - new.tm_mday, new.tm_mon + 1, new.tm_year + 1900, 54 - new.tm_hour, new.tm_min, new.tm_sec); 55 - 56 - /* Write the new date in RTC */ 57 - retval = ioctl(fd, RTC_SET_TIME, &new); 58 - if (retval == -1) { 59 - perror("RTC_SET_TIME ioctl"); 60 - close(fd); 61 - exit(errno); 62 - } 63 - 64 - /* Read back */ 65 - retval = ioctl(fd, RTC_RD_TIME, &current); 66 - if (retval == -1) { 67 - perror("RTC_RD_TIME ioctl"); 68 - exit(errno); 69 - } 70 - 71 - fprintf(stderr, "\n\nCurrent RTC date/time is %d-%d-%d, %02d:%02d:%02d.\n", 72 - current.tm_mday, current.tm_mon + 1, current.tm_year + 1900, 73 - current.tm_hour, current.tm_min, current.tm_sec); 74 - 75 - close(fd); 76 - return 0; 77 - }