Lines Matching refs:bo_cache
202 if (vc4->bo_cache.size_list_size <= page_index) {
203 uint32_t new_size = max(vc4->bo_cache.size_list_size * 2,
215 for (i = 0; i < vc4->bo_cache.size_list_size; i++) {
217 &vc4->bo_cache.size_list[i];
225 for (i = vc4->bo_cache.size_list_size; i < new_size; i++)
228 kfree(vc4->bo_cache.size_list);
229 vc4->bo_cache.size_list = new_list;
230 vc4->bo_cache.size_list_size = new_size;
233 return &vc4->bo_cache.size_list[page_index];
241 while (!list_empty(&vc4->bo_cache.time_list)) {
242 struct vc4_bo *bo = list_last_entry(&vc4->bo_cache.time_list,
368 if (page_index >= vc4->bo_cache.size_list_size)
371 if (list_empty(&vc4->bo_cache.size_list[page_index]))
374 bo = list_first_entry(&vc4->bo_cache.size_list[page_index],
525 while (!list_empty(&vc4->bo_cache.time_list)) {
526 struct vc4_bo *bo = list_last_entry(&vc4->bo_cache.time_list,
529 mod_timer(&vc4->bo_cache.time_timer,
599 list_add(&bo->unref_head, &vc4->bo_cache.time_list);
612 container_of(work, struct vc4_dev, bo_cache.time_work);
682 struct vc4_dev *vc4 = timer_container_of(vc4, t, bo_cache.time_timer);
684 schedule_work(&vc4->bo_cache.time_work);
1035 INIT_LIST_HEAD(&vc4->bo_cache.time_list);
1037 INIT_WORK(&vc4->bo_cache.time_work, vc4_bo_cache_time_work);
1038 timer_setup(&vc4->bo_cache.time_timer, vc4_bo_cache_time_timer, 0);
1048 timer_delete(&vc4->bo_cache.time_timer);
1049 cancel_work_sync(&vc4->bo_cache.time_work);