• Dave Gordon's avatar
    drm/i915/guc: add enable_guc_loading parameter · fce91f22
    Dave Gordon authored
    Split the function of "enable_guc_submission" into two separate
    options.  The new one ("enable_guc_loading") controls only the
    *fetching and loading* of the GuC firmware image. The existing
    one is redefined to control only the *use* of the GuC for batch
    submission once the firmware is loaded.
    
    In addition, the degree of control has been refined from a simple
    bool to an integer key, allowing several options:
    -1 (default)     whatever the platform default is
     0  DISABLE      don't load/use the GuC
     1  BEST EFFORT  try to load/use the GuC, fallback if not available
     2  REQUIRE      must load/use the GuC, else leave the GPU wedged
    
    The new platform default (as coded here) will be to attempt to
    load the GuC iff the device has a GuC that requires firmware,
    but not yet to use it for submission. A later patch will change
    to enable it if appropriate.
    
    v4:
        Changed some error-message levels, mostly ERROR->INFO, per
        review comments by Tvrtko Ursulin.
    
    v5:
        Dropped one more error message, disabled GuC submission on
        hypothetical firmware-free devices [Tvrtko Ursulin].
    
    v6:
        Logging tidy by Tvrtko Ursulin:
         * Do not log falling back to execlists when wedging the GPU.
         * Do not log fw load errors when load was disabled by user.
         * Pass down some error code from fw load for log message to
           make more sense.
    Signed-off-by: default avatarDave Gordon <david.s.gordon@intel.com>
    Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
    Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> (v5)
    Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
    Tested-by: default avatarFiedorowicz, Lukasz <lukasz.fiedorowicz@intel.com>
    Signed-off-by: default avatarDave Gordon <david.s.gordon@intel.com>
    Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> (v5)
    Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
    Reviewed-by: Nick Hoath <nicholas.hoath@intel.com> (v6)
    fce91f22
intel_guc_loader.c 21.7 KB