EDA365电子论坛网

标题: 请教大神rt_hw_cpu_id()是获取逻辑核还是物理核呢? [打印本页]

作者: three    时间: 2022-8-4 13:17
标题: 请教大神rt_hw_cpu_id()是获取逻辑核还是物理核呢?
tpidr_el1是启动时每个核写入的值么?' b2 z$ @. u9 k5 [, b

; d% Z# I8 W" d! ?9 F. d#ifdef RT_USING_SMP% i$ V/ O6 V1 u& {
/* The more common mpidr_el1 table, redefine it in BSP if it is in other cases */3 M  o8 a* v) f: o6 z1 I. T
RT_WEAK rt_uint64_t rt_cpu_mpidr_early[] =) f+ g3 Q8 ]& m0 R+ \
{
' J0 r3 E# N1 Q* C) ~" H[0] = 0x80000000,7 C$ P! i/ z# y
[1] = 0x80000001,
+ p7 R" B/ g$ e6 G[2] = 0x80000002,# X1 R' ~, C0 E* @. X6 t
[3] = 0x80000003,2 e0 t7 w8 k" E0 X) F+ G8 L
[4] = 0x80000004,! J, }% @; G2 z6 L. O, g
[5] = 0x80000005,( S4 O7 \, a( G
[6] = 0x80000006,; _3 s5 W; h" ^1 H2 X$ H, z( s) Z+ N
[7] = 0x80000007,- G( U$ S; t) z. }
[RT_CPUS_NR] = 0% z9 T7 t: v1 u: [0 F& D
};2 Z/ a. q9 Y- O4 x
#endif( j, x5 V9 R  r# t( A2 e9 f  W$ f
int rt_hw_cpu_id(void)- a8 @3 _+ {& O3 i% s' {9 v
{
- b* D6 J7 a4 R9 M8 @& y* grt_base_t value;
: ]  f& F* F: q" Pasm volatile ("mrs %0, tpidr_el1":"=r"(value));
6 U$ g4 F" n9 P9 \) `$ Yreturn value;0 ]8 }( v8 n+ m* P" d( d7 D! d
}
0 `) V, q0 Z9 z8 L  p
作者: opipo    时间: 2022-8-4 14:00
总的来说,RTT不管。但这个时候这个cpuid需要和其他对得上,例如按照这样的方式secondary是否没问题,中断是否没问题,还是需要从总体进行梳理的。$ A3 A/ D' w' t7 c# R

作者: Blah    时间: 2022-8-4 14:49
再看看别人是怎么说的  `2 R  X# t) i, C2 A# M7 Y

作者: land    时间: 2022-8-4 15:41
同问,求结果
: G6 F. x( o; ~, o2 c+ V7 E, ]& q




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2