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* g
rt_base_t value;
: ] f& F* F: q" P
asm volatile ("mrs %0, tpidr_el1":"=r"(value));
6 U$ g4 F" n9 P9 \) `$ Y
return 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