qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 for 5.0 0/6] linux-user: Add support for real time clock ioctls
@ 2019-11-14 15:13 Filip Bozuta
  2019-11-14 15:13 ` [PATCH v2 for 5.0 1/6] linux-user: Add support for enable/disable RTC features using ioctls Filip Bozuta
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Filip Bozuta @ 2019-11-14 15:13 UTC (permalink / raw)
  To: qemu-devel; +Cc: laurent, Filip.Bozuta

Add ioctls for all RTC features that are currently supported in linux kernel.

This series covers following iocts:

    * RTC_AIE_ON
    * RTC_AIE_OFF
    * RTC_UIE_ON
    * RTC_UIE_OFF
    * RTC_PIE_ON
    * RTC_PIE_OFF
    * RTC_WIE_ON
    * RTC_WIE_OFF
    * RTC_ALM_SET
    * RTC_ALM_READ
    * RTC_RD_TIME
    * RTC_SET_TIME
    * RTC_IRQP_READ
    * RTC_IRQP_SET
    * RTC_EPOCH_READ
    * RTC_EPOCH_SET
    * RTC_WKALM_SET
    * RTC_WKALM_RD
    * RTC_PLL_GET
    * RTC_PLL_SET
    * RTC_VL_READ
    * RTC_VL_CLR

The functionalities of individual ioctls were described in this series
patch commit messages.

Testing method:

    Mini test programs were written for each ioctl. Those programs were
    compiled (sometimes using cross-compilers) for the following 
    architectures:

        * Intel 64-bit (little endian)
        * Power pc 32-bit (big endian)
        * Power pc 64-bit (big endian)

    The corresponding native programs were executed without using 
    QEMU on following hosts:

        * Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz
        *.7447A, (ppc32 host)

    All applicable compiled programs were in turn executed through QEMU
    and the results obtained were the same ones gotten for native
    execution.

Example of a test program:

    For ioctl RTC_RD_TIME we have used the following test program:

    #include <stdio.h>
    #include <stdlib.h>
    #include <linux/rtc.h>
    #include <fcntl.h>
    #include <linux/input.h>
    #include <sys/types.h>
    #include <unistd.h>

    #define ERROR -1

    int main()
    {

        int fd = open("/dev/rtc", O_RDWR | O_NONBLOCK);

        if(fd == ERROR)
        {
            perror("open");
            return -1;
        }

        struct rtc_time cur_time;

        if(ioctl(fd, RTC_RD_TIME, &cur_time) < 0)
        {
            perror("ioctl");
            return -1;
        }

        printf("Second: %d, Minute: %d, Hour: %d, Day: %d, Month: %d, Year: %d,",
            cur_time.tm_sec, cur_time.tm_min, cur_time.tm_hour, 
            cur_time.tm_mday, cur_time.tm_mon, cur_time.tm_year);

        return 0;
    }



Filip Bozuta (6):
  linux-user: Add support for enable/disable RTC features using ioctls
  linux-user: Add support for read/set RTC time and alarm using ioctls
  linux-user: Add support for read/set RTC periodic interrupt and epoch
    using ioctls
  linux-user: Add support for get/set RTC wakeup alarm using ioctls
  linux-user: Add support for get/set RTC PLL correction using ioctls
  linux-user: Add support for read/clear RTC voltage low detector using
    ioctls

 linux-user/ioctls.h        | 23 +++++++++++++++++++++++
 linux-user/syscall.c       |  1 +
 linux-user/syscall_defs.h  | 36 ++++++++++++++++++++++++++++++++++++
 linux-user/syscall_types.h | 25 +++++++++++++++++++++++++
 4 files changed, 85 insertions(+)

-- 
2.7.4



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-11-14 15:21 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-14 15:13 [PATCH v2 for 5.0 0/6] linux-user: Add support for real time clock ioctls Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 1/6] linux-user: Add support for enable/disable RTC features using ioctls Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 2/6] linux-user: Add support for read/set RTC time and alarm " Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 3/6] linux-user: Add support for read/set RTC periodic interrupt and epoch " Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 4/6] linux-user: Add support for get/set RTC wakeup alarm " Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 5/6] linux-user: Add support for get/set RTC PLL correction " Filip Bozuta
2019-11-14 15:13 ` [PATCH v2 for 5.0 6/6] linux-user: Add support for read/clear RTC voltage low detector " Filip Bozuta

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).