瀏覽代碼

heap: use hal specific API to get cpu cycles count

This fixes compilation issue of heap tracing feature for RISC-V
architecture.
Mahavir Jain 4 年之前
父節點
當前提交
dd73ba9601
共有 2 個文件被更改,包括 3 次插入1 次删除
  1. 2 0
      components/heap/Kconfig
  2. 1 1
      components/heap/include/heap_trace.inc

+ 2 - 0
components/heap/Kconfig

@@ -45,6 +45,8 @@ menu "Heap memory debugging"
 
     config HEAP_TRACING_STACK_DEPTH
         int "Heap tracing stack depth"
+        range 0 0 if IDF_TARGET_ARCH_RISCV # Disabled for RISC-V due to `__builtin_return_address` limitation
+        default 0 if IDF_TARGET_ARCH_RISCV
         range 0 10
         default 2
         depends on HEAP_TRACING

+ 1 - 1
components/heap/include/heap_trace.inc

@@ -19,7 +19,7 @@
 /* Encode the CPU ID in the LSB of the ccount value */
 inline static uint32_t get_ccount(void)
 {
-    uint32_t ccount = xthal_get_ccount() & ~3;
+    uint32_t ccount = cpu_hal_get_cycle_count() & ~3;
 #ifndef CONFIG_FREERTOS_UNICORE
     ccount |= xPortGetCoreID();
 #endif