On 2021年01月11日 14:43, hongzha1 via Xenomai wrote:
Signed-off-by: hongzha1 <hongzhan.c...@intel.com>
---
  include/cobalt/kernel/dovetail/pipeline/clock.h | 5 ++---
  kernel/cobalt/dovetail/tick.c                   | 8 ++++++++
  2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/include/cobalt/kernel/dovetail/pipeline/clock.h 
b/include/cobalt/kernel/dovetail/pipeline/clock.h
index ce9a5c867..771104ab4 100644
--- a/include/cobalt/kernel/dovetail/pipeline/clock.h
+++ b/include/cobalt/kernel/dovetail/pipeline/clock.h
@@ -12,6 +12,7 @@
  struct timespec64;

  extern inline void xnproxy_timer_set(unsigned long delta);
+inline const char *xn_get_timer_name(void);

  static inline u64 pipeline_read_cycle_counter(void)
  {
@@ -37,9 +38,7 @@ static inline const char *pipeline_timer_name(void)
         * Return the name of the current clock event chip, which is
         * the real device controlled by the proxy tick device.
         */
-       TODO();
-
-       return "?";
+       return xn_get_timer_name();
  }


PATCH 02/10, PATCH 08/10 and this one, all of them have the changes for pipeline_read_cycle_counter in include/cobalt/kernel/dovetail/pipeline/clock.h, and they look different, how so? or they are incremental implementation,but PATCH 02/10 returns ktime_get_raw_fast_ns() and PATCH 09/10 returns xn_get_timer_name();.

  static inline const char *pipeline_clock_name(void)
diff --git a/kernel/cobalt/dovetail/tick.c b/kernel/cobalt/dovetail/tick.c
index 58662e94e..e40ec06cb 100644
--- a/kernel/cobalt/dovetail/tick.c
+++ b/kernel/cobalt/dovetail/tick.c
@@ -16,6 +16,14 @@ extern struct xnintr nktimer;

  static DEFINE_PER_CPU(struct clock_proxy_device *, proxy_device);

+inline const char *xn_get_timer_name(void)
+{
+       struct clock_proxy_device *dev = __this_cpu_read(proxy_device);
+       struct clock_event_device *real_dev = dev->real_device;
+
+       return real_dev->name;
+}
+
  inline void xnproxy_timer_set(unsigned long delta)
  {
        struct clock_proxy_device *dev = __this_cpu_read(proxy_device);




Reply via email to