|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
tpidr_el1是启动时每个核写入的值么?
1 b3 d- Z9 a3 B0 \) `0 p
; O& h9 o+ i- ]: k#ifdef RT_USING_SMP
. P0 K9 Y6 N+ R! d. k( A; O/* The more common mpidr_el1 table, redefine it in BSP if it is in other cases */: S$ i# o& b' h$ n9 h
RT_WEAK rt_uint64_t rt_cpu_mpidr_early[] =0 M# G4 n; `. k; I$ h3 I
{
; w* t& {) n+ {[0] = 0x80000000,
1 ~9 y4 t3 `0 y4 @2 J[1] = 0x80000001,
4 }2 |( n2 [2 g* Y0 m[2] = 0x80000002,
1 F( ]- ^1 @% S[3] = 0x80000003,
. |8 w! K0 u `) _& u- c' L( k& ][4] = 0x80000004,! I1 ^: J" j' Q# l8 m, a2 ]
[5] = 0x80000005,
( n7 y; X5 K4 g: A[6] = 0x80000006,* r4 c Z. [+ i$ o! L. X
[7] = 0x80000007,
( R n: _4 F( s+ k9 r) l[RT_CPUS_NR] = 0: C0 P/ B6 H' R
};" S1 @0 i3 l8 x
#endif
+ N3 p! w% f' P0 L4 Mint rt_hw_cpu_id(void) ^0 k: n+ T$ d1 `! y, N n# ~
{
$ ]+ L* c/ @$ G; krt_base_t value;' ~' `1 Z A0 ` |
asm volatile ("mrs %0, tpidr_el1":"=r"(value));# m, r$ y# r2 k$ ^/ P. ]3 ]
return value;
/ B l( w+ K2 `7 F}9 O' ?, W. r! z5 c& u, q4 C
|
|