Lines Matching refs:uc_fw
17 int xe_uc_fw_init(struct xe_uc_fw *uc_fw);
18 size_t xe_uc_fw_copy_rsa(struct xe_uc_fw *uc_fw, void *dst, u32 max_len);
19 int xe_uc_fw_upload(struct xe_uc_fw *uc_fw, u32 offset, u32 dma_flags);
20 int xe_uc_fw_check_version_requirements(struct xe_uc_fw *uc_fw);
21 void xe_uc_fw_print(struct xe_uc_fw *uc_fw, struct drm_printer *p);
23 static inline u32 xe_uc_fw_rsa_offset(struct xe_uc_fw *uc_fw) in xe_uc_fw_rsa_offset() argument
25 return sizeof(struct uc_css_header) + uc_fw->ucode_size + uc_fw->css_offset; in xe_uc_fw_rsa_offset()
28 static inline void xe_uc_fw_change_status(struct xe_uc_fw *uc_fw, in xe_uc_fw_change_status() argument
31 uc_fw->__status = status; in xe_uc_fw_change_status()
111 __xe_uc_fw_status(const struct xe_uc_fw *uc_fw) in __xe_uc_fw_status() argument
114 XE_WARN_ON(uc_fw->status == XE_UC_FIRMWARE_UNINITIALIZED); in __xe_uc_fw_status()
115 return uc_fw->status; in __xe_uc_fw_status()
118 static inline bool xe_uc_fw_is_supported(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_supported() argument
120 return __xe_uc_fw_status(uc_fw) != XE_UC_FIRMWARE_NOT_SUPPORTED; in xe_uc_fw_is_supported()
123 static inline bool xe_uc_fw_is_enabled(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_enabled() argument
125 return __xe_uc_fw_status(uc_fw) > XE_UC_FIRMWARE_DISABLED; in xe_uc_fw_is_enabled()
128 static inline bool xe_uc_fw_is_disabled(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_disabled() argument
130 return __xe_uc_fw_status(uc_fw) == XE_UC_FIRMWARE_DISABLED; in xe_uc_fw_is_disabled()
133 static inline bool xe_uc_fw_is_available(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_available() argument
135 return __xe_uc_fw_status(uc_fw) >= XE_UC_FIRMWARE_AVAILABLE; in xe_uc_fw_is_available()
138 static inline bool xe_uc_fw_is_loadable(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_loadable() argument
140 return __xe_uc_fw_status(uc_fw) >= XE_UC_FIRMWARE_LOADABLE && in xe_uc_fw_is_loadable()
141 __xe_uc_fw_status(uc_fw) != XE_UC_FIRMWARE_PRELOADED; in xe_uc_fw_is_loadable()
144 static inline bool xe_uc_fw_is_loaded(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_loaded() argument
146 return __xe_uc_fw_status(uc_fw) >= XE_UC_FIRMWARE_TRANSFERRED; in xe_uc_fw_is_loaded()
149 static inline bool xe_uc_fw_is_running(struct xe_uc_fw *uc_fw) in xe_uc_fw_is_running() argument
151 return __xe_uc_fw_status(uc_fw) >= XE_UC_FIRMWARE_RUNNING; in xe_uc_fw_is_running()
154 static inline bool xe_uc_fw_is_overridden(const struct xe_uc_fw *uc_fw) in xe_uc_fw_is_overridden() argument
156 return uc_fw->user_overridden; in xe_uc_fw_is_overridden()
159 static inline bool xe_uc_fw_is_in_error_state(const struct xe_uc_fw *uc_fw) in xe_uc_fw_is_in_error_state() argument
161 return xe_uc_fw_status_to_error(__xe_uc_fw_status(uc_fw)) < 0; in xe_uc_fw_is_in_error_state()
164 static inline void xe_uc_fw_sanitize(struct xe_uc_fw *uc_fw) in xe_uc_fw_sanitize() argument
166 if (xe_uc_fw_is_loadable(uc_fw)) in xe_uc_fw_sanitize()
167 xe_uc_fw_change_status(uc_fw, XE_UC_FIRMWARE_LOADABLE); in xe_uc_fw_sanitize()
170 static inline u32 __xe_uc_fw_get_upload_size(struct xe_uc_fw *uc_fw) in __xe_uc_fw_get_upload_size() argument
172 return sizeof(struct uc_css_header) + uc_fw->ucode_size; in __xe_uc_fw_get_upload_size()
183 static inline u32 xe_uc_fw_get_upload_size(struct xe_uc_fw *uc_fw) in xe_uc_fw_get_upload_size() argument
185 if (!xe_uc_fw_is_available(uc_fw)) in xe_uc_fw_get_upload_size()
188 return __xe_uc_fw_get_upload_size(uc_fw); in xe_uc_fw_get_upload_size()