|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
tpidr_el1是启动时每个核写入的值么?
* x/ S9 r( E( \. L1 _7 e8 X* O! C8 K' w) s2 b8 j
#ifdef RT_USING_SMP! O/ C6 b2 \( e4 C8 P: ]
/* The more common mpidr_el1 table, redefine it in BSP if it is in other cases */5 P$ V# a- ] {) t5 P2 o
RT_WEAK rt_uint64_t rt_cpu_mpidr_early[] =, Y$ R |* J% e5 O/ M0 \3 }3 R8 u
{
4 J& f' n* z8 Z# o) `4 M2 U* u' k[0] = 0x80000000,
2 n5 K$ _ f2 @8 g6 x4 P" f[1] = 0x80000001,' D. E% x1 c$ N& n2 i4 ]+ D+ G. ?; {
[2] = 0x80000002,
3 v& c5 n6 h2 |6 Y# |[3] = 0x80000003,1 r# i4 O z( r2 t2 n
[4] = 0x80000004,) E$ W; r& O0 I" u7 b0 \, i9 c) f
[5] = 0x80000005,
3 r2 E2 P4 J/ p4 p5 u[6] = 0x80000006,
$ f* R% y! r: ?[7] = 0x80000007,
0 r* L( n6 @- m0 S[RT_CPUS_NR] = 04 Y p: o' m0 Q7 E- y
};
s/ X i- K" z ^#endif) x* o# r* O4 f
int rt_hw_cpu_id(void)1 m* ? U; P4 i, B3 P* I% v0 _! L! j6 @% v
{) d- E7 `0 I/ {$ d9 {' v
rt_base_t value;
; d( d% u" {, [asm volatile ("mrs %0, tpidr_el1":"=r"(value));# Q! a4 |2 b# ^
return value;1 x! }5 H2 \7 R3 a9 D& S4 t; Q/ H4 W
}
$ L# |' M- a8 ]4 G" U, o" S: x$ F6 k |
|