Lines Matching +full:0 +full:xe
34 static inline struct xe_device *xe_device_const_cast(const struct xe_device *xe) in xe_device_const_cast() argument
36 return (struct xe_device *)xe; in xe_device_const_cast()
46 int xe_device_probe_early(struct xe_device *xe);
47 int xe_device_probe(struct xe_device *xe);
48 void xe_device_remove(struct xe_device *xe);
49 void xe_device_shutdown(struct xe_device *xe);
51 void xe_device_wmb(struct xe_device *xe);
58 static inline struct xe_tile *xe_device_get_root_tile(struct xe_device *xe) in xe_device_get_root_tile() argument
60 return &xe->tiles[0]; in xe_device_get_root_tile()
68 gt_id = 0; in xe_tile_get_gt()
73 static inline struct xe_gt *xe_device_get_gt(struct xe_device *xe, u8 gt_id) in xe_device_get_gt() argument
75 struct xe_tile *root_tile = xe_device_get_root_tile(xe); in xe_device_get_gt()
85 if (MEDIA_VER(xe) >= 13) { in xe_device_get_gt()
88 if (drm_WARN_ON(&xe->drm, gt_id >= XE_MAX_TILES_PER_DEVICE)) in xe_device_get_gt()
89 gt_id = 0; in xe_device_get_gt()
91 gt = xe->tiles[gt_id].primary_gt; in xe_device_get_gt()
97 drm_WARN_ON(&xe->drm, gt->info.id != gt_id); in xe_device_get_gt()
98 drm_WARN_ON(&xe->drm, gt->info.type == XE_GT_TYPE_UNINITIALIZED); in xe_device_get_gt()
115 static inline struct xe_gt *xe_root_mmio_gt(struct xe_device *xe) in xe_root_mmio_gt() argument
117 return xe_device_get_root_tile(xe)->primary_gt; in xe_root_mmio_gt()
120 static inline bool xe_device_uc_enabled(struct xe_device *xe) in xe_device_uc_enabled() argument
122 return !xe->info.force_execlist; in xe_device_uc_enabled()
126 for ((id__) = 0; (id__) < (xe__)->info.tile_count; (id__)++) \
138 for ((id__) = 0; (id__) < (xe__)->info.gt_count; (id__)++) \
146 void xe_device_assert_mem_access(struct xe_device *xe);
148 static inline bool xe_device_has_flat_ccs(struct xe_device *xe) in xe_device_has_flat_ccs() argument
150 return xe->info.has_flat_ccs; in xe_device_has_flat_ccs()
153 static inline bool xe_device_has_sriov(struct xe_device *xe) in xe_device_has_sriov() argument
155 return xe->info.has_sriov; in xe_device_has_sriov()
158 static inline bool xe_device_has_msix(struct xe_device *xe) in xe_device_has_msix() argument
164 static inline bool xe_device_has_memirq(struct xe_device *xe) in xe_device_has_memirq() argument
166 return GRAPHICS_VERx100(xe) >= 1250; in xe_device_has_memirq()
169 static inline bool xe_device_uses_memirq(struct xe_device *xe) in xe_device_uses_memirq() argument
171 return xe_device_has_memirq(xe) && (IS_SRIOV_VF(xe) || xe_device_has_msix(xe)); in xe_device_uses_memirq()
174 u32 xe_device_ccs_bytes(struct xe_device *xe, u64 size);
176 void xe_device_snapshot_print(struct xe_device *xe, struct drm_printer *p);
178 u64 xe_device_canonicalize_addr(struct xe_device *xe, u64 address);
179 u64 xe_device_uncanonicalize_addr(struct xe_device *xe, u64 address);
181 void xe_device_td_flush(struct xe_device *xe);
182 void xe_device_l2_flush(struct xe_device *xe);
184 static inline bool xe_device_wedged(struct xe_device *xe) in xe_device_wedged() argument
186 return atomic_read(&xe->wedged.flag); in xe_device_wedged()
189 void xe_device_declare_wedged(struct xe_device *xe);
199 * and this is beyond xe kmd.