1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 void kgd_gfx_v9_program_sh_mem_settings(struct kgd_dev *kgd, uint32_t vmid,
26 uint32_t sh_mem_config,
27 uint32_t sh_mem_ape1_base, uint32_t sh_mem_ape1_limit,
28 uint32_t sh_mem_bases);
29 int kgd_gfx_v9_set_pasid_vmid_mapping(struct kgd_dev *kgd, unsigned int pasid,
30 unsigned int vmid);
31 int kgd_gfx_v9_init_interrupts(struct kgd_dev *kgd, uint32_t pipe_id);
32 int kgd_gfx_v9_hqd_load(struct kgd_dev *kgd, void *mqd, uint32_t pipe_id,
33 uint32_t queue_id, uint32_t __user *wptr,
34 uint32_t wptr_shift, uint32_t wptr_mask,
35 struct mm_struct *mm);
36 int kgd_gfx_v9_hqd_dump(struct kgd_dev *kgd,
37 uint32_t pipe_id, uint32_t queue_id,
38 uint32_t (**dump)[2], uint32_t *n_regs);
39 bool kgd_gfx_v9_hqd_is_occupied(struct kgd_dev *kgd, uint64_t queue_address,
40 uint32_t pipe_id, uint32_t queue_id);
41 int kgd_gfx_v9_hqd_destroy(struct kgd_dev *kgd, void *mqd,
42 enum kfd_preempt_type reset_type,
43 unsigned int utimeout, uint32_t pipe_id,
44 uint32_t queue_id);
45 int kgd_gfx_v9_address_watch_disable(struct kgd_dev *kgd);
46 int kgd_gfx_v9_address_watch_execute(struct kgd_dev *kgd,
47 unsigned int watch_point_id,
48 uint32_t cntl_val,
49 uint32_t addr_hi,
50 uint32_t addr_lo);
51 int kgd_gfx_v9_wave_control_execute(struct kgd_dev *kgd,
52 uint32_t gfx_index_val,
53 uint32_t sq_cmd);
54 uint32_t kgd_gfx_v9_address_watch_get_offset(struct kgd_dev *kgd,
55 unsigned int watch_point_id,
56 unsigned int reg_offset);
57
58 bool kgd_gfx_v9_get_atc_vmid_pasid_mapping_valid(struct kgd_dev *kgd,
59 uint8_t vmid);
60 uint16_t kgd_gfx_v9_get_atc_vmid_pasid_mapping_pasid(struct kgd_dev *kgd,
61 uint8_t vmid);
62 void kgd_gfx_v9_set_vm_context_page_table_base(struct kgd_dev *kgd, uint32_t vmid,
63 uint64_t page_table_base);
64 void kgd_gfx_v9_set_scratch_backing_va(struct kgd_dev *kgd,
65 uint64_t va, uint32_t vmid);
66 int kgd_gfx_v9_invalidate_tlbs(struct kgd_dev *kgd, uint16_t pasid);
67 int kgd_gfx_v9_invalidate_tlbs_vmid(struct kgd_dev *kgd, uint16_t vmid);
68 int kgd_gfx_v9_get_tile_config(struct kgd_dev *kgd,
69 struct tile_config *config);