|
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