drm/i915/uc: Unify initialization of the uC firmware helper

Unify initialization of the uC firmware helper as we want to
maximize code reuse.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171004181343.66348-6-michal.wajdeczko@intel.com
This commit is contained in:
Michal Wajdeczko 2017-10-04 18:13:43 +00:00 committed by Joonas Lahtinen
parent ddf79d88f3
commit 959a3b6f57
3 changed files with 11 additions and 8 deletions

View File

@ -386,10 +386,7 @@ int intel_guc_select_fw(struct intel_guc *guc)
{ {
struct drm_i915_private *dev_priv = guc_to_i915(guc); struct drm_i915_private *dev_priv = guc_to_i915(guc);
guc->fw.path = NULL; intel_uc_fw_init(&guc->fw, INTEL_UC_FW_TYPE_GUC);
guc->fw.fetch_status = INTEL_UC_FIRMWARE_NONE;
guc->fw.load_status = INTEL_UC_FIRMWARE_NONE;
guc->fw.type = INTEL_UC_FW_TYPE_GUC;
if (i915_modparams.guc_firmware_path) { if (i915_modparams.guc_firmware_path) {
guc->fw.path = i915_modparams.guc_firmware_path; guc->fw.path = i915_modparams.guc_firmware_path;

View File

@ -150,10 +150,7 @@ void intel_huc_select_fw(struct intel_huc *huc)
{ {
struct drm_i915_private *dev_priv = huc_to_i915(huc); struct drm_i915_private *dev_priv = huc_to_i915(huc);
huc->fw.path = NULL; intel_uc_fw_init(&huc->fw, INTEL_UC_FW_TYPE_HUC);
huc->fw.fetch_status = INTEL_UC_FIRMWARE_NONE;
huc->fw.load_status = INTEL_UC_FIRMWARE_NONE;
huc->fw.type = INTEL_UC_FW_TYPE_HUC;
if (i915_modparams.huc_firmware_path) { if (i915_modparams.huc_firmware_path) {
huc->fw.path = i915_modparams.huc_firmware_path; huc->fw.path = i915_modparams.huc_firmware_path;

View File

@ -91,6 +91,15 @@ static inline const char *intel_uc_fw_type_repr(enum intel_uc_fw_type type)
return "uC"; return "uC";
} }
static inline
void intel_uc_fw_init(struct intel_uc_fw *uc_fw, enum intel_uc_fw_type type)
{
uc_fw->path = NULL;
uc_fw->fetch_status = INTEL_UC_FIRMWARE_NONE;
uc_fw->load_status = INTEL_UC_FIRMWARE_NONE;
uc_fw->type = type;
}
void intel_uc_fw_fetch(struct drm_i915_private *dev_priv, void intel_uc_fw_fetch(struct drm_i915_private *dev_priv,
struct intel_uc_fw *uc_fw); struct intel_uc_fw *uc_fw);
void intel_uc_fw_fini(struct intel_uc_fw *uc_fw); void intel_uc_fw_fini(struct intel_uc_fw *uc_fw);