All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Gordon <david.s.gordon@intel.com>
To: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>,
	intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/3] drm/i915/guc: fix GuC loading/submission check
Date: Fri, 10 Jun 2016 16:45:43 +0100	[thread overview]
Message-ID: <575AE0A7.5070306@intel.com> (raw)
In-Reply-To: <57594D41.7000000@linux.intel.com>

On 09/06/16 12:04, Tvrtko Ursulin wrote:
>
> On 07/06/16 09:41, Tvrtko Ursulin wrote:
>>
>> On 07/06/16 09:14, Dave Gordon wrote:
>>> The last stage of the GuC loader also sanitises the GuC submission
>>> settings, so should be called unconditionally (even on platforms
>>> without a GuC) to ensure consistent settings; in particular, this
>>> prevents any attempt to use GuC submission on GuCless platforms!
>>>
>>> Also fix error path handling and clarify DRM_INFO fallback message.
>>>
>>> Signed-off-by: Dave Gordon <david.s.gordon@intel.com>
>>> ---
>>>   drivers/gpu/drm/i915/i915_gem.c         |  8 +++-----
>>>   drivers/gpu/drm/i915/intel_guc_loader.c | 12 ++++++++----
>>>   2 files changed, 11 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_gem.c
>>> b/drivers/gpu/drm/i915/i915_gem.c
>>> index 1bfc260..eae8d7a 100644
>>> --- a/drivers/gpu/drm/i915/i915_gem.c
>>> +++ b/drivers/gpu/drm/i915/i915_gem.c
>>> @@ -4930,11 +4930,9 @@ int i915_gem_init_engines(struct drm_device *dev)
>>>       intel_mocs_init_l3cc_table(dev);
>>>
>>>       /* We can't enable contexts until all firmware is loaded */
>>> -    if (HAS_GUC(dev)) {
>>> -        ret = intel_guc_setup(dev);
>>> -        if (ret)
>>> -            goto out;
>>> -    }
>>> +    ret = intel_guc_setup(dev);
>>> +    if (ret)
>>> +        goto out;
>>>
>>>       /*
>>>        * Increment the next seqno by 0x100 so we have a visible break
>>> diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c
>>> b/drivers/gpu/drm/i915/intel_guc_loader.c
>>> index f2b88c7..4e34c2e 100644
>>> --- a/drivers/gpu/drm/i915/intel_guc_loader.c
>>> +++ b/drivers/gpu/drm/i915/intel_guc_loader.c
>>> @@ -425,9 +425,13 @@ int intel_guc_setup(struct drm_device *dev)
>>>       if (!i915.enable_guc_loading) {
>>>           err = 0;
>>>           goto fail;
>>> -    } else if (fw_path == NULL || *fw_path == '\0') {
>>> -        if (*fw_path == '\0')
>>
>> Ops. I can only assume I meant !fw_path.
>>
>>> -            DRM_INFO("No GuC firmware known for this platform\n");
>>> +    } else if (fw_path == NULL) {
>>> +        /* Device is known to have no uCode (e.g. no GuC) */
>>> +        err = -ENXIO;
>>> +        goto fail;
>>> +    } else if (*fw_path == '\0') {
>>> +        /* Device has a GuC but we don't know what f/w to load? */
>>> +        DRM_INFO("No GuC firmware known for this platform\n");
>>>           err = -ENODEV;
>>>           goto fail;
>>>       }
>>> @@ -535,7 +539,7 @@ int intel_guc_setup(struct drm_device *dev)
>>>           if (fw_path == NULL)
>>>               DRM_INFO("GuC submission without firmware not
>>> supported\n");
>>>           if (ret == 0)
>>> -            DRM_INFO("Falling back to execlist mode\n");
>>> +            DRM_INFO("Falling back from GuC submission to execlist
>>> mode\n");
>>>           else
>>>               DRM_ERROR("GuC init failed: %d\n", ret);
>>>       }
>>>
>>
>> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>
> Bah now on BDW we get on boot:
>
> [drm:gen8_init_common_ring] Execlists enabled for render ring
> [drm:gen8_init_common_ring] Execlists enabled for blitter ring
> [drm:gen8_init_common_ring] Execlists enabled for bsd ring
> [drm:gen8_init_common_ring] Execlists enabled for video enhancement ring
> [drm:intel_guc_setup] GuC fw status: path (null), fetch NONE, load NONE
> [drm] GuC firmware load skipped
> [drm] GuC submission without firmware not supported
> [drm] Falling back from GuC submission to execlist mode
>
> Which is a bit untidy. :(
>
> Regards,
> Tvrtko

You shouldn't get the second or third [drm] message, if you haven't 
overridden the default values. The default for enable_guc_submission
is (-1) which gets mapped to HAS_GUC_SCHED() which is 0 on BDW; you only 
get the extra messages if you've set it to a non-default value.

.Dave.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2016-06-10 15:45 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-07  8:14 [PATCH 1/3] drm/i915/guc: fix GuC loading/submission check Dave Gordon
2016-06-07  8:14 ` [PATCH 2/3] drm/i915/guc: disable GuC submission earlier during GuC (re)load Dave Gordon
2016-06-07  9:51   ` Tvrtko Ursulin
2016-06-07 10:13     ` Dave Gordon
2016-06-07  8:14 ` [PATCH 3/3] drm/i915/guc: enable GuC loading & submission by default Dave Gordon
2016-06-07  9:53   ` Tvrtko Ursulin
2016-06-07  8:41 ` [PATCH 1/3] drm/i915/guc: fix GuC loading/submission check Tvrtko Ursulin
2016-06-09 11:04   ` Tvrtko Ursulin
2016-06-10 15:45     ` Dave Gordon [this message]
2016-06-10 16:21     ` [PATCH] drm/i915/guc: suppress GuC-related message on non-GuC platforms Dave Gordon
2016-06-13  9:00       ` Tvrtko Ursulin
2016-06-07  8:43 ` ✗ Ro.CI.BAT: failure for series starting with [1/3] drm/i915/guc: fix GuC loading/submission check Patchwork
2016-06-07 10:54   ` Dave Gordon
2016-06-07 13:23     ` Tvrtko Ursulin
2016-06-07 20:00       ` Chris Wilson
2016-06-08  8:18         ` Dave Gordon
2016-06-10 16:59 ` ✗ Ro.CI.BAT: failure for series starting with drm/i915/guc: suppress GuC-related message on non-GuC platforms (rev2) Patchwork
2016-06-10 18:14   ` Dave Gordon
2016-06-13  9:06     ` Tvrtko Ursulin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=575AE0A7.5070306@intel.com \
    --to=david.s.gordon@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=tvrtko.ursulin@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.