Lines Matching refs:ccu

129 	struct vepu_ccu *ccu;  member
318 struct vepu_ccu *ccu = enc->ccu; in vepu_prepare() local
324 spin_lock_irqsave(&ccu->lock, flags); in vepu_prepare()
326 core_idle = ccu->core_idle; in vepu_prepare()
328 for (i = 0; i < ccu->core_num; i++) { in vepu_prepare()
329 struct mpp_dev *mpp = ccu->cores[i]; in vepu_prepare()
335 core_id = find_first_bit(&core_idle, ccu->core_num); in vepu_prepare()
336 if (core_id >= ARRAY_SIZE(ccu->cores)) { in vepu_prepare()
338 mpp_dbg_core("core %d all busy %lx\n", core_id, ccu->core_idle); in vepu_prepare()
343 clear_bit(core_id, &ccu->core_idle); in vepu_prepare()
344 mpp_task->mpp = ccu->cores[core_id]; in vepu_prepare()
348 ccu->core_num, core_id, core_idle, ccu->core_idle); in vepu_prepare()
351 spin_unlock_irqrestore(&ccu->lock, flags); in vepu_prepare()
427 struct vepu_ccu *ccu = enc->ccu; in vepu_isr() local
450 if (ccu) { in vepu_isr()
451 core_idle = ccu->core_idle; in vepu_isr()
452 set_bit(mpp->core_id, &ccu->core_idle); in vepu_isr()
455 ccu->core_idle); in vepu_isr()
685 if (enc->ccu) in vepu_procfs_init()
861 struct vepu_ccu *ccu = enc->ccu; in vepu_reset() local
877 if (ccu) { in vepu_reset()
878 set_bit(mpp->core_id, &ccu->core_idle); in vepu_reset()
879 mpp_dbg_core("core %d reset idle %lx\n", mpp->core_id, ccu->core_idle); in vepu_reset()
998 struct vepu_ccu *ccu; in vepu_ccu_probe() local
1001 ccu = devm_kzalloc(dev, sizeof(*ccu), GFP_KERNEL); in vepu_ccu_probe()
1002 if (!ccu) in vepu_ccu_probe()
1005 platform_set_drvdata(pdev, ccu); in vepu_ccu_probe()
1006 spin_lock_init(&ccu->lock); in vepu_ccu_probe()
1014 struct vepu_ccu *ccu; in vepu_attach_ccu() local
1026 ccu = platform_get_drvdata(pdev); in vepu_attach_ccu()
1027 if (!ccu) in vepu_attach_ccu()
1030 spin_lock_irqsave(&ccu->lock, flags); in vepu_attach_ccu()
1031 ccu->core_num++; in vepu_attach_ccu()
1032 ccu->cores[enc->mpp.core_id] = &enc->mpp; in vepu_attach_ccu()
1033 set_bit(enc->mpp.core_id, &ccu->core_idle); in vepu_attach_ccu()
1034 spin_unlock_irqrestore(&ccu->lock, flags); in vepu_attach_ccu()
1037 if (!ccu->main_core) { in vepu_attach_ccu()
1042 ccu->main_core = &enc->mpp; in vepu_attach_ccu()
1047 ccu_info = ccu->main_core->iommu_info; in vepu_attach_ccu()
1054 enc->ccu = ccu; in vepu_attach_ccu()
1107 if (mpp == enc->ccu->main_core) in vepu_core_probe()
1192 if (enc->ccu) { in vepu_remove()
1194 struct vepu_ccu *ccu = enc->ccu; in vepu_remove() local
1197 spin_lock_irqsave(&ccu->lock, flags); in vepu_remove()
1198 ccu->core_num--; in vepu_remove()
1199 ccu->cores[core_id] = NULL; in vepu_remove()
1200 clear_bit(core_id, &ccu->core_idle); in vepu_remove()
1201 spin_unlock_irqrestore(&ccu->lock, flags); in vepu_remove()