vppinfra: fix cpu freq init error if cpu support aperfmperf

After linux-v4.15, 'cpu MHz' in /proc/cpuinfo is CPU
real frequency on x86 if cpu support aperfmperf flags

more see linux commit: 
https://github.com/torvalds/linux/commit/7d5905dc14a87805a59f3c5bf70173aac2bb18f8

Type: fix
Change-Id: Ib655a9a1c519104142120b343cd8ddbe0b6e50e6
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
diff --git a/src/vppinfra/cpu.h b/src/vppinfra/cpu.h
index 7a1b75f..b3743d4 100644
--- a/src/vppinfra/cpu.h
+++ b/src/vppinfra/cpu.h
@@ -150,6 +150,7 @@
   _ (movdir64b, 7, ecx, 28)                                                   \
   _ (enqcmd, 7, ecx, 29)                                                      \
   _ (avx512_fp16, 7, edx, 23)                                                 \
+  _ (aperfmperf, 0x00000006, ecx, 0)                                          \
   _ (invariant_tsc, 0x80000007, edx, 8)                                       \
   _ (monitorx, 0x80000001, ecx, 29)
 
diff --git a/src/vppinfra/time.c b/src/vppinfra/time.c
index 5a6aaf1..f173649 100644
--- a/src/vppinfra/time.c
+++ b/src/vppinfra/time.c
@@ -76,8 +76,11 @@
   f64 ppc_timebase = 0;		/* warnings be gone */
   unformat_input_t input;
 
-/* $$$$ aarch64 kernel doesn't report "cpu MHz" */
-#if defined(__aarch64__)
+#if defined(__x86_64__)
+  if (clib_cpu_supports_aperfmperf ())
+    return 0.0;
+#elif defined(__aarch64__)
+  /* $$$$ aarch64 kernel doesn't report "cpu MHz" */
   return 0.0;
 #endif