update for HEAD-2003021201
[reactos.git] / drivers / net / packet / time_calls.h
index 2355d45..04731cf 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (c) 2001
- *     Politecnico di Torino.  All rights reserved.
+ *  Politecnico di Torino.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that: (1) source code distributions
@@ -40,8 +40,8 @@ struct timeval {
 #endif /*WIN_NT_DRIVER*/
 
 struct time_conv {
-       ULONGLONG reference;
-       struct timeval start;
+    ULONGLONG reference;
+    struct timeval start;
 };
 
 #ifdef __GNUC__
@@ -57,9 +57,9 @@ void GET_TIME(struct timeval *dst, struct time_conv *data);
 
 __inline void TIME_DESYNCHRONIZE(struct time_conv *data)
 {
-       data->reference = 0;
-       data->start.tv_sec = 0;
-       data->start.tv_usec = 0;
+    data->reference = 0;
+    data->start.tv_sec = 0;
+    data->start.tv_usec = 0;
 }
 
 #ifdef KQPC_TS
@@ -68,48 +68,48 @@ __inline void TIME_DESYNCHRONIZE(struct time_conv *data)
 
 __inline VOID TIME_SYNCHRONIZE(struct time_conv *data)
 {
-       struct timeval tmp;
-       LARGE_INTEGER SystemTime;
-       LARGE_INTEGER i;
-       ULONG tmp2;
-       LARGE_INTEGER TimeFreq,PTime;
+    struct timeval tmp;
+    LARGE_INTEGER SystemTime;
+    LARGE_INTEGER i;
+    ULONG tmp2;
+    LARGE_INTEGER TimeFreq,PTime;
 
-       if (data->reference!=0)
-               return;
-       
-       // get the absolute value of the system boot time.   
-       PTime=KeQueryPerformanceCounter(&TimeFreq);
-       KeQuerySystemTime(&SystemTime);
-       tmp.tv_sec=(LONG)(SystemTime.QuadPart/10000000-11644473600);
-       tmp.tv_usec=(LONG)((SystemTime.QuadPart%10000000)/10);
-       tmp.tv_sec-=(ULONG)(PTime.QuadPart/TimeFreq.QuadPart);
-       tmp.tv_usec-=(LONG)((PTime.QuadPart%TimeFreq.QuadPart)*1000000/TimeFreq.QuadPart);
-       if (tmp.tv_usec<0) {
-               tmp.tv_sec--;
-               tmp.tv_usec+=1000000;
-       }
-       data->start=tmp;
-       data->reference=1;
+    if (data->reference!=0)
+        return;
+    
+    // get the absolute value of the system boot time.   
+    PTime=KeQueryPerformanceCounter(&TimeFreq);
+    KeQuerySystemTime(&SystemTime);
+    tmp.tv_sec=(LONG)(SystemTime.QuadPart/10000000-11644473600);
+    tmp.tv_usec=(LONG)((SystemTime.QuadPart%10000000)/10);
+    tmp.tv_sec-=(ULONG)(PTime.QuadPart/TimeFreq.QuadPart);
+    tmp.tv_usec-=(LONG)((PTime.QuadPart%TimeFreq.QuadPart)*1000000/TimeFreq.QuadPart);
+    if (tmp.tv_usec<0) {
+        tmp.tv_sec--;
+        tmp.tv_usec+=1000000;
+    }
+    data->start=tmp;
+    data->reference=1;
 }
 
-__inline void FORCE_TIME(struct timeval *src, struct time_conv *dest)
+__inline void GET_TIME(struct timeval *dst, struct time_conv *data)
 {
-       dest->start=*src;
+    LARGE_INTEGER PTime, TimeFreq;
+    LONG tmp;
+
+    PTime=KeQueryPerformanceCounter(&TimeFreq);
+    tmp=(LONG)(PTime.QuadPart/TimeFreq.QuadPart);
+    dst->tv_sec=data->start.tv_sec+tmp;
+    dst->tv_usec=data->start.tv_usec+(LONG)((PTime.QuadPart%TimeFreq.QuadPart)*1000000/TimeFreq.QuadPart);
+    if (dst->tv_usec>=1000000) {
+        dst->tv_sec++;
+        dst->tv_usec-=1000000;
+    }
 }
 
-__inline void GET_TIME(struct timeval *dst, struct time_conv *data)
+__inline void FORCE_TIME(struct timeval *src, struct time_conv *dest)
 {
-       LARGE_INTEGER PTime, TimeFreq;
-       LONG tmp;
-
-       PTime=KeQueryPerformanceCounter(&TimeFreq);
-       tmp=(LONG)(PTime.QuadPart/TimeFreq.QuadPart);
-       dst->tv_sec=data->start.tv_sec+tmp;
-       dst->tv_usec=data->start.tv_usec+(LONG)((PTime.QuadPart%TimeFreq.QuadPart)*1000000/TimeFreq.QuadPart);
-       if (dst->tv_usec>=1000000) {
-               dst->tv_sec++;
-               dst->tv_usec-=1000000;
-       }
+    dest->start=*src;
 }
 
 #else
@@ -119,138 +119,138 @@ __inline void GET_TIME(struct timeval *dst, struct time_conv *data)
 /* callers must be at IRQL=PASSIVE_LEVEL */
 __inline VOID TIME_SYNCHRONIZE(struct time_conv *data)
 {
-       struct timeval tmp;
-       LARGE_INTEGER system_time;
-       ULONGLONG curr_ticks;
-       KIRQL old;
-       LARGE_INTEGER start_kqpc,stop_kqpc,start_freq,stop_freq;
-       ULONGLONG start_ticks,stop_ticks;
-       ULONGLONG delta,delta2;
-       KEVENT event;
-       LARGE_INTEGER i;
-       ULONGLONG reference;
+    struct timeval tmp;
+    LARGE_INTEGER system_time;
+    ULONGLONG curr_ticks;
+    KIRQL old;
+    LARGE_INTEGER start_kqpc,stop_kqpc,start_freq,stop_freq;
+    ULONGLONG start_ticks,stop_ticks;
+    ULONGLONG delta,delta2;
+    KEVENT event;
+    LARGE_INTEGER i;
+    ULONGLONG reference;
 
-       if (data->reference!=0)
-               return;
-       
-       KeInitializeEvent(&event,NotificationEvent,FALSE);
-       i.QuadPart=-3500000;
-       KeRaiseIrql(HIGH_LEVEL,&old);
-       start_kqpc=KeQueryPerformanceCounter(&start_freq);
+    if (data->reference!=0)
+        return;
+    
+    KeInitializeEvent(&event,NotificationEvent,FALSE);
+    i.QuadPart=-3500000;
+    KeRaiseIrql(HIGH_LEVEL,&old);
+    start_kqpc=KeQueryPerformanceCounter(&start_freq);
 #ifndef __GNUC__
-       __asm
-       {
-               push eax
-               push edx
-               push ecx
-               rdtsc
-               lea ecx, start_ticks
-               mov [ecx+4], edx
-               mov [ecx], eax
-               pop ecx
-               pop edx
-               pop eax
-       }
+    __asm
+    {
+        push eax
+        push edx
+        push ecx
+        rdtsc
+        lea ecx, start_ticks
+        mov [ecx+4], edx
+        mov [ecx], eax
+        pop ecx
+        pop edx
+        pop eax
+    }
 #else
 #endif
-       KeLowerIrql(old);
+    KeLowerIrql(old);
     KeWaitForSingleObject(&event,UserRequest,KernelMode,TRUE ,&i);
-       KeRaiseIrql(HIGH_LEVEL,&old);
-       stop_kqpc=KeQueryPerformanceCounter(&stop_freq);
+    KeRaiseIrql(HIGH_LEVEL,&old);
+    stop_kqpc=KeQueryPerformanceCounter(&stop_freq);
 #ifndef __GNUC__
-       __asm
-       {
-               push eax
-               push edx
-               push ecx
-               rdtsc
-               lea ecx, stop_ticks
-               mov [ecx+4], edx
-               mov [ecx], eax
-               pop ecx
-               pop edx
-               pop eax
-       }
+    __asm
+    {
+        push eax
+        push edx
+        push ecx
+        rdtsc
+        lea ecx, stop_ticks
+        mov [ecx+4], edx
+        mov [ecx], eax
+        pop ecx
+        pop edx
+        pop eax
+    }
 #else
 #endif
-       KeLowerIrql(old);
-       delta=stop_ticks-start_ticks;
-       delta2=stop_kqpc.QuadPart-start_kqpc.QuadPart;
-       if (delta>10000000000) {
-               delta/=16;
-               delta2/=16;
-       }
-       reference=delta*(start_freq.QuadPart)/delta2;
-       data->reference=reference/1000;
-       if (reference%1000>500) 
-               data->reference++;
-       data->reference*=1000;
-       reference=data->reference;
-       KeQuerySystemTime(&system_time);
+    KeLowerIrql(old);
+    delta=stop_ticks-start_ticks;
+    delta2=stop_kqpc.QuadPart-start_kqpc.QuadPart;
+    if (delta>10000000000) {
+        delta/=16;
+        delta2/=16;
+    }
+    reference=delta*(start_freq.QuadPart)/delta2;
+    data->reference=reference/1000;
+    if (reference%1000>500) 
+        data->reference++;
+    data->reference*=1000;
+    reference=data->reference;
+    KeQuerySystemTime(&system_time);
 #ifndef __GNUC__
-       __asm
-       {
-               push eax
-               push edx
-               push ecx
-               rdtsc
-               lea ecx, curr_ticks
-               mov [ecx+4], edx
-               mov [ecx], eax
-               pop ecx
-               pop edx
-               pop eax
-       }
+    __asm
+    {
+        push eax
+        push edx
+        push ecx
+        rdtsc
+        lea ecx, curr_ticks
+        mov [ecx+4], edx
+        mov [ecx], eax
+        pop ecx
+        pop edx
+        pop eax
+    }
 #else
 #endif
-       tmp.tv_sec=-(LONG)(curr_ticks/reference);
-       tmp.tv_usec=-(LONG)((curr_ticks%reference)*1000000/reference);
-       system_time.QuadPart-=116444736000000000;
-       tmp.tv_sec+=(LONG)(system_time.QuadPart/10000000);
-       tmp.tv_usec+=(LONG)((system_time.QuadPart%10000000)/10);
-       if (tmp.tv_usec<0) {
-               tmp.tv_sec--;
-               tmp.tv_usec+=1000000;
-       }
-       data->start=tmp;
-       IF_LOUD(DbgPrint("Frequency %I64u MHz\n",data->reference);)
+    tmp.tv_sec=-(LONG)(curr_ticks/reference);
+    tmp.tv_usec=-(LONG)((curr_ticks%reference)*1000000/reference);
+    system_time.QuadPart-=116444736000000000;
+    tmp.tv_sec+=(LONG)(system_time.QuadPart/10000000);
+    tmp.tv_usec+=(LONG)((system_time.QuadPart%10000000)/10);
+    if (tmp.tv_usec<0) {
+        tmp.tv_sec--;
+        tmp.tv_usec+=1000000;
+    }
+    data->start=tmp;
+    IF_LOUD(DbgPrint("Frequency %I64u MHz\n",data->reference);)
 }
 
 __inline void FORCE_TIME(struct timeval *src, struct time_conv *dest)
 {
-       dest->start=*src;
+    dest->start=*src;
 }
 
 __inline void GET_TIME(struct timeval *dst, struct time_conv *data)
 {
-       ULONGLONG tmp;
+    ULONGLONG tmp;
 #ifndef __GNUC__
-       __asm
-       {
-               push eax
-               push edx
-               push ecx
-               rdtsc
-               lea ecx, tmp
-               mov [ecx+4], edx
-               mov [ecx], eax
-               pop ecx
-               pop edx
-               pop eax
-       }
+    __asm
+    {
+        push eax
+        push edx
+        push ecx
+        rdtsc
+        lea ecx, tmp
+        mov [ecx+4], edx
+        mov [ecx], eax
+        pop ecx
+        pop edx
+        pop eax
+    }
 #else
 #endif
-       if (data->reference==0) {
-               return;
-       }
-       dst->tv_sec=(LONG)(tmp/data->reference);
-       dst->tv_usec=(LONG)((tmp-dst->tv_sec*data->reference)*1000000/data->reference);
-       dst->tv_sec+=data->start.tv_sec;
-       dst->tv_usec+=data->start.tv_usec;
-       if (dst->tv_usec>=1000000) {
-               dst->tv_sec++;
-               dst->tv_usec-=1000000;
-       }
+    if (data->reference==0) {
+        return;
+    }
+    dst->tv_sec=(LONG)(tmp/data->reference);
+    dst->tv_usec=(LONG)((tmp-dst->tv_sec*data->reference)*1000000/data->reference);
+    dst->tv_sec+=data->start.tv_sec;
+    dst->tv_usec+=data->start.tv_usec;
+    if (dst->tv_usec>=1000000) {
+        dst->tv_sec++;
+        dst->tv_usec-=1000000;
+    }
 }
 
 #endif /*KQPC_TS*/