Lines Matching refs:core_id

46 static void gpc_imr_core_spin_lock(unsigned int core_id)  in gpc_imr_core_spin_lock()  argument
48 spin_lock(&gpc_imr_lock[core_id]); in gpc_imr_core_spin_lock()
51 static void gpc_imr_core_spin_unlock(unsigned int core_id) in gpc_imr_core_spin_unlock() argument
53 spin_unlock(&gpc_imr_lock[core_id]); in gpc_imr_core_spin_unlock()
56 static void gpc_save_imr_lpm(unsigned int core_id, unsigned int imr_idx) in gpc_save_imr_lpm() argument
58 uint32_t reg = gpc_imr_offset[core_id] + imr_idx * 4; in gpc_save_imr_lpm()
60 gpc_imr_core_spin_lock(core_id); in gpc_save_imr_lpm()
62 gpc_saved_imrs[core_id + imr_idx * 4] = mmio_read_32(reg); in gpc_save_imr_lpm()
65 gpc_imr_core_spin_unlock(core_id); in gpc_save_imr_lpm()
68 static void gpc_restore_imr_lpm(unsigned int core_id, unsigned int imr_idx) in gpc_restore_imr_lpm() argument
70 uint32_t reg = gpc_imr_offset[core_id] + imr_idx * 4; in gpc_restore_imr_lpm()
71 uint32_t val = gpc_saved_imrs[core_id + imr_idx * 4]; in gpc_restore_imr_lpm()
73 gpc_imr_core_spin_lock(core_id); in gpc_restore_imr_lpm()
77 gpc_imr_core_spin_unlock(core_id); in gpc_restore_imr_lpm()
156 static void imx_gpc_mask_irq0(uint32_t core_id, uint32_t mask) in imx_gpc_mask_irq0() argument
158 gpc_imr_core_spin_lock(core_id); in imx_gpc_mask_irq0()
160 mmio_setbits_32(gpc_imr_offset[core_id], 1); in imx_gpc_mask_irq0()
162 mmio_clrbits_32(gpc_imr_offset[core_id], 1); in imx_gpc_mask_irq0()
166 gpc_imr_core_spin_unlock(core_id); in imx_gpc_mask_irq0()
178 void imx_gpc_set_a53_core_awake(uint32_t core_id) in imx_gpc_set_a53_core_awake() argument
180 imx_gpc_mask_irq0(core_id, true); in imx_gpc_set_a53_core_awake()
217 void imx_set_cpu_pwr_off(unsigned int core_id) in imx_set_cpu_pwr_off() argument
222 mmio_setbits_32(IMX_GPC_BASE + LPCR_A53_AD, COREx_WFI_PDN(core_id) | in imx_set_cpu_pwr_off()
223 (1 << (core_id + 20))); in imx_set_cpu_pwr_off()
228 mmio_setbits_32(IMX_GPC_BASE + COREx_PGC_PCR(core_id), 0x1); in imx_set_cpu_pwr_off()
232 void imx_set_cpu_lpm(unsigned int core_id, bool pdn) in imx_set_cpu_lpm() argument
238 mmio_setbits_32(IMX_GPC_BASE + LPCR_A53_AD, COREx_WFI_PDN(core_id) | in imx_set_cpu_lpm()
239 (1 << (core_id + 20)) | COREx_IRQ_WUP(core_id)); in imx_set_cpu_lpm()
241 mmio_setbits_32(IMX_GPC_BASE + COREx_PGC_PCR(core_id), 0x1); in imx_set_cpu_lpm()
244 mmio_clrbits_32(IMX_GPC_BASE + LPCR_A53_AD, COREx_WFI_PDN(core_id) | in imx_set_cpu_lpm()
245 COREx_IRQ_WUP(core_id)); in imx_set_cpu_lpm()
247 mmio_setbits_32(IMX_GPC_BASE + COREx_PGC_PCR(core_id), 0x1); in imx_set_cpu_lpm()