esp_pm: Fix string formatting type errors

This commit fixes a string formatting error in esp_pm with CONFIG_PM_PROFILING
is enabled.

Closes https://github.com/espressif/esp-idf/issues/10347
This commit is contained in:
Darian Leung 2022-11-29 18:58:54 +08:00
parent 4be58114dc
commit bedfc5063d
3 changed files with 4 additions and 3 deletions

View File

@ -7,6 +7,7 @@
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <stdint.h>
#include <sys/param.h>
#include "esp_attr.h"
@ -695,7 +696,7 @@ void esp_pm_impl_dump_stats(FILE* out)
/* don't display light sleep mode if it's not enabled */
continue;
}
fprintf(out, "%-8s %-3dM%-7s %-10lld %-2d%%\n",
fprintf(out, "%-8s %-3"PRIu32"M%-7s %-10lld %-2d%%\n",
s_mode_names[i],
s_cpu_freq_by_mode[i].freq_mhz,
"", //Empty space to align columns

View File

@ -1,3 +1,2 @@
idf_component_register(SRC_DIRS .
PRIV_REQUIRES unity esp_pm ulp driver esp_timer test_utils)
target_compile_options(${COMPONENT_LIB} PRIVATE "-Wno-format")

View File

@ -1,5 +1,6 @@
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <time.h>
#include <sys/time.h>
#include <sys/param.h>
@ -345,7 +346,7 @@ TEST_CASE("esp_timer produces correct delays with light sleep", "[pm]")
test_args_t *p_args = (test_args_t *) arg;
int64_t t_end = esp_clk_rtc_time();
int32_t ms_diff = (t_end - p_args->t_start) / 1000;
printf("timer #%d %dms\n", p_args->cur_interval, ms_diff);
printf("timer #%d %"PRIi32"ms\n", p_args->cur_interval, ms_diff);
p_args->intervals[p_args->cur_interval++] = ms_diff;
// Deliberately make timer handler run longer.
// We check that this doesn't affect the result.