s390/time: rename store_tod_clock_ext() and use union tod_clock
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 8 Feb 2021 12:56:49 +0000 (13:56 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Sat, 13 Feb 2021 16:17:54 +0000 (17:17 +0100)
Rename store_tod_clock_ext() to store_tod_clock_ext_cc() to reflect
that it returns a condition code and also use union tod_clock as
parameter.

Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/include/asm/timex.h
arch/s390/kernel/early.c

index 271a1e1..2496457 100644 (file)
@@ -53,16 +53,15 @@ static inline int set_tod_clock(__u64 time)
        return cc;
 }
 
-static inline int store_tod_clock_ext(char *time)
+static inline int store_tod_clock_ext_cc(union tod_clock *clk)
 {
-       typedef struct { char _[STORE_CLOCK_EXT_SIZE]; } addrtype;
        int cc;
 
        asm volatile(
                "   stcke  %1\n"
                "   ipm   %0\n"
                "   srl   %0,28\n"
-               : "=d" (cc), "=Q" (*(addrtype *)time) : : "cc");
+               : "=d" (cc), "=Q" (*clk) : : "cc");
        return cc;
 }
 
index ee063b5..8f046f9 100644 (file)
 
 static void __init reset_tod_clock(void)
 {
-       char time[STORE_CLOCK_EXT_SIZE];
+       union tod_clock clk;
 
-       if (store_tod_clock_ext(time) == 0)
+       if (store_tod_clock_ext_cc(&clk) == 0)
                return;
        /* TOD clock not running. Set the clock to Unix Epoch. */
-       if (set_tod_clock(TOD_UNIX_EPOCH) != 0 || store_tod_clock_ext(time) != 0)
+       if (set_tod_clock(TOD_UNIX_EPOCH) || store_tod_clock_ext_cc(&clk))
                disabled_wait();
 
        memset(tod_clock_base, 0, 16);