summaryrefslogtreecommitdiff
path: root/components/drivers/include
diff options
context:
space:
mode:
authorxqyjlj <[email protected]>2023-04-13 16:00:19 +0800
committerGitHub <[email protected]>2023-04-13 16:00:19 +0800
commit970c7c6f7a8b6e26e3254de5c9c0877b18fa0627 (patch)
tree13ccd1fd1ca4b87d117966303fb3833ba31fb583 /components/drivers/include
parent590e603997de5c3a96bfd5311fc5c04fac7bc90d (diff)
🐞 fix(components/drivers): fix cpu timer in multithreading (#7222)
* 🐞 fix(components/drivers): fix cpu timer in multithreading * 🎈 perf(components): change double to uint64_t * 🎈 perf(components): add UL suffix
Diffstat (limited to 'components/drivers/include')
-rw-r--r--components/drivers/include/drivers/cputime.h4
-rw-r--r--components/drivers/include/drivers/cputimer.h1
2 files changed, 3 insertions, 2 deletions
diff --git a/components/drivers/include/drivers/cputime.h b/components/drivers/include/drivers/cputime.h
index bbcbe440cc..9c32cd97f8 100644
--- a/components/drivers/include/drivers/cputime.h
+++ b/components/drivers/include/drivers/cputime.h
@@ -16,12 +16,12 @@
struct rt_clock_cputime_ops
{
- double (*cputime_getres)(void);
+ uint64_t (*cputime_getres)(void);
uint64_t (*cputime_gettime)(void);
int (*cputime_settimeout)(uint64_t tick, void (*timeout)(void *param), void *param);
};
-double clock_cpu_getres(void);
+uint64_t clock_cpu_getres(void);
uint64_t clock_cpu_gettime(void);
int clock_cpu_settimeout(uint64_t tick, void (*timeout)(void *param), void *param);
int clock_cpu_issettimeout(void);
diff --git a/components/drivers/include/drivers/cputimer.h b/components/drivers/include/drivers/cputimer.h
index f15f0c615c..371992a41e 100644
--- a/components/drivers/include/drivers/cputimer.h
+++ b/components/drivers/include/drivers/cputimer.h
@@ -21,6 +21,7 @@ struct rt_cputimer
void *parameter;
rt_uint64_t init_tick;
rt_uint64_t timeout_tick;
+ struct rt_semaphore sem;
};
typedef struct rt_cputimer *rt_cputimer_t;