|
38 | 38 | #if !defined(RT_USING_SMP) && !defined(RT_USING_AMP)
|
39 | 39 | #define RT_CPUS_NR 1
|
40 | 40 | #else
|
41 |
| -extern rt_uint64_t rt_cpu_mpidr_early[]; |
| 41 | +extern rt_uint64_t rt_cpu_mpidr_table[]; |
42 | 42 | #endif /* RT_USING_SMP */
|
43 | 43 |
|
44 | 44 | /* 'ARM_GIC_MAX_NR' is the number of cores */
|
@@ -417,10 +417,10 @@ static rt_uint64_t gicv3_sgi_init(void)
|
417 | 417 |
|
418 | 418 | for (i = 0; i < RT_CPUS_NR; i++)
|
419 | 419 | {
|
420 |
| - icc_sgi1r_value = (rt_uint64_t)((rt_cpu_mpidr_early[i] >> 8) & 0xFF) << 16; |
421 |
| - icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_early[i] >> 16) & 0xFF) << 32; |
422 |
| - icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_early[i] >> 32) & 0xFF) << 48; |
423 |
| - icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_early[i] >> 4) & 0xF) << 44; |
| 420 | + icc_sgi1r_value = (rt_uint64_t)((rt_cpu_mpidr_table[i] >> 8) & 0xFF) << 16; |
| 421 | + icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_table[i] >> 16) & 0xFF) << 32; |
| 422 | + icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_table[i] >> 32) & 0xFF) << 48; |
| 423 | + icc_sgi1r_value |= (rt_uint64_t)((rt_cpu_mpidr_table[i] >> 4) & 0xF) << 44; |
424 | 424 | sgi_aff_add_table(icc_sgi1r_value, i);
|
425 | 425 | }
|
426 | 426 |
|
@@ -455,7 +455,7 @@ rt_inline void gicv3_sgi_target_list_set(rt_uint64_t array, rt_uint32_t cpu_mask
|
455 | 455 | {
|
456 | 456 | value = __builtin_ctzl(cpu_mask);
|
457 | 457 | cpu_mask &= ~(1 << value);
|
458 |
| - sgi_aff_table[i].target_list |= 1 << (rt_cpu_mpidr_early[(array << 5) | value] & 0xF); |
| 458 | + sgi_aff_table[i].target_list |= 1 << (rt_cpu_mpidr_table[(array << 5) | value] & 0xF); |
459 | 459 | }
|
460 | 460 | }
|
461 | 461 | }
|
@@ -629,7 +629,7 @@ int arm_gic_dist_init(rt_uint64_t index, rt_uint64_t dist_base, int irq_start)
|
629 | 629 | arm_gicv3_wait_rwp(0, 32);
|
630 | 630 |
|
631 | 631 | #ifdef RT_USING_SMP
|
632 |
| - main_cpu_affinity_val = rt_cpu_mpidr_early[ARM_SPI_BIND_CPU_ID]; |
| 632 | + main_cpu_affinity_val = rt_cpu_mpidr_table[ARM_SPI_BIND_CPU_ID]; |
633 | 633 | #else
|
634 | 634 | __asm__ volatile ("mrs %0, mpidr_el1":"=r"(main_cpu_affinity_val));
|
635 | 635 | #endif
|
|
0 commit comments