Quoting Daniele Ceraolo Spurio (2019-07-24 03:21:51) > All the GuC objects are perma-pinned, so their offset can't change at > runtime. We can therefore set (and log!) the parameters only once during > boot. Much better, but I still have the same information (fw loaded) repeated. <7>[ 345.432995] [drm:intel_uc_fw_upload [i915]] HuC fw load i915/kbl_huc_ver02_00_1810.bin <7>[ 345.433589] [drm:intel_uc_fw_upload [i915]] HuC fw load completed <6>[ 345.433592] [drm] HuC: Loaded firmware i915/kbl_huc_ver02_00_1810.bin (version 2.0) <7>[ 345.433686] [drm:intel_uc_fw_upload [i915]] GuC fw load i915/kbl_guc_33.0.0.bin <7>[ 345.434046] [drm:intel_uc_fw_upload [i915]] GuC fw load completed <6>[ 345.434048] [drm] GuC: Loaded firmware i915/kbl_guc_33.0.0.bin (version 33.0) <7>[ 345.436578] [drm:intel_guc_fw_upload [i915]] GuC status 0x8002f0ec <6>[ 345.436643] [drm] GuC communication enabled <6>[ 345.436718] i915 0000:00:02.0: GuC firmware version 33.0 <6>[ 345.436719] i915 0000:00:02.0: GuC submission disabled <6>[ 345.436720] i915 0000:00:02.0: HuC enabled <7>[ 345.437910] [drm:intel_uc_fw_upload [i915]] HuC fw load i915/kbl_huc_ver02_00_1810.bin <7>[ 345.438591] [drm:intel_uc_fw_upload [i915]] HuC fw load completed <6>[ 345.438593] [drm] HuC: Loaded firmware i915/kbl_huc_ver02_00_1810.bin (version 2.0) <7>[ 345.438724] [drm:intel_uc_fw_upload [i915]] GuC fw load i915/kbl_guc_33.0.0.bin <7>[ 345.439085] [drm:intel_uc_fw_upload [i915]] GuC fw load completed <6>[ 345.439086] [drm] GuC: Loaded firmware i915/kbl_guc_33.0.0.bin (version 33.0) <7>[ 345.441594] [drm:intel_guc_fw_upload [i915]] GuC status 0x8002f0ec <6>[ 345.441652] [drm] GuC communication enabled <6>[ 345.441727] i915 0000:00:02.0: GuC firmware version 33.0 <6>[ 345.441728] i915 0000:00:02.0: GuC submission disabled <6>[ 345.441729] i915 0000:00:02.0: HuC enabled Also note that we are repeating at KERN_INFO the same information (fw loaded). Having the path before loading is reasonable (or rather I expect reasonable object to any request to drop it until error), but the repeated completion information could be whittled down :) > Suggested-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@xxxxxxxxx> > Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Cc: Michal Wajdeczko <michal.wajdeczko@xxxxxxxxx> > --- > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc.h > index f51c4c3c1d0b..714e9892aaff 100644 > --- a/drivers/gpu/drm/i915/gt/uc/intel_guc.h > +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.h > @@ -76,6 +76,9 @@ struct intel_guc { > /* Cyclic counter mod pagesize */ > u32 db_cacheline; > > + /* Control params for fw initialization */ > + u32 params[GUC_CTL_MAX_DWORDS]; > + Upon init, save parameters to intel_guc. Then write from guc->params instead of the local stack. Reviewed-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx