]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/powerpc/kernel/time.c
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
[karo-tx-linux.git] / arch / powerpc / kernel / time.c
index cdcc156865ef24ddfa78a696db3ed1ff566cff87..192b051df97e27e6a8a74b344151489af6f544d6 100644 (file)
@@ -210,18 +210,18 @@ static u64 scan_dispatch_log(u64 stop_tb)
        if (!dtl)
                return 0;
 
-       if (i == vpa->dtl_idx)
+       if (i == be64_to_cpu(vpa->dtl_idx))
                return 0;
-       while (i < vpa->dtl_idx) {
+       while (i < be64_to_cpu(vpa->dtl_idx)) {
                if (dtl_consumer)
                        dtl_consumer(dtl, i);
-               dtb = dtl->timebase;
-               tb_delta = dtl->enqueue_to_dispatch_time +
-                       dtl->ready_to_enqueue_time;
+               dtb = be64_to_cpu(dtl->timebase);
+               tb_delta = be32_to_cpu(dtl->enqueue_to_dispatch_time) +
+                       be32_to_cpu(dtl->ready_to_enqueue_time);
                barrier();
-               if (i + N_DISPATCH_LOG < vpa->dtl_idx) {
+               if (i + N_DISPATCH_LOG < be64_to_cpu(vpa->dtl_idx)) {
                        /* buffer has overflowed */
-                       i = vpa->dtl_idx - N_DISPATCH_LOG;
+                       i = be64_to_cpu(vpa->dtl_idx) - N_DISPATCH_LOG;
                        dtl = local_paca->dispatch_log + (i % N_DISPATCH_LOG);
                        continue;
                }
@@ -269,7 +269,7 @@ static inline u64 calculate_stolen_time(u64 stop_tb)
 {
        u64 stolen = 0;
 
-       if (get_paca()->dtl_ridx != get_paca()->lppaca_ptr->dtl_idx) {
+       if (get_paca()->dtl_ridx != be64_to_cpu(get_lppaca()->dtl_idx)) {
                stolen = scan_dispatch_log(stop_tb);
                get_paca()->system_time -= stolen;
        }
@@ -612,7 +612,7 @@ unsigned long long sched_clock(void)
 static int __init get_freq(char *name, int cells, unsigned long *val)
 {
        struct device_node *cpu;
-       const unsigned int *fp;
+       const __be32 *fp;
        int found = 0;
 
        /* The cpu node should have timebase and clock frequency properties */