From: Daniel Vetter <daniel@ffwll.ch>
To: Dave Gordon <david.s.gordon@intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/9 v6] drm/i915: GuC-specific firmware loader
Date: Fri, 14 Aug 2015 11:05:49 +0200 [thread overview]
Message-ID: <20150814090549.GR17734@phenom.ffwll.local> (raw)
In-Reply-To: <1439390624-21724-2-git-send-email-david.s.gordon@intel.com>
On Wed, Aug 12, 2015 at 03:43:36PM +0100, Dave Gordon wrote:
> From: Alex Dai <yu.dai@intel.com>
>
> This fetches the required firmware image from the filesystem,
> then loads it into the GuC's memory via a dedicated DMA engine.
>
> This patch is derived from GuC loading work originally done by
> Vinit Azad and Ben Widawsky.
>
> v2:
> Various improvements per review comments by Chris Wilson
>
> v3:
> Removed 'wait' parameter to intel_guc_ucode_load() as firmware
> prefetch is no longer supported in the common firmware loader,
> per Daniel Vetter's request.
> Firmware checker callback fn now returns errno rather than bool.
>
> v4:
> Squash uC-independent code into GuC-specifc loader [Daniel Vetter]
> Don't keep the driver working (by falling back to execlist mode)
> if GuC firmware loading fails [Daniel Vetter]
>
> v5:
> Clarify WOPCM-related #defines [Tom O'Rourke]
> Delete obsolete code no longer required with current h/w & f/w
> [Tom O'Rourke]
> Move the call to intel_guc_ucode_init() later, so that it can
> allocate GEM objects, and have it fetch the firmware; then
> intel_guc_ucode_load() doesn't need to fetch it later.
> [Daniel Vetter].
>
> v6:
> Update comment describing intel_guc_ucode_load() [Tom O'Rourke]
>
> Issue: VIZ-4884
> Signed-off-by: Alex Dai <yu.dai@intel.com>
> Signed-off-by: Dave Gordon <david.s.gordon@intel.com>
Checkpatch was pretty unhappy with long lines and alignment of
continuations. But didn't look too bad overall so pulled it in.
> +/*
> + * Transfer the firmware image to RAM for execution by the microcontroller.
> + *
> + * GuC Firmware layout:
> + * +-------------------------------+ ----
> + * | CSS header | 128B
> + * | contains major/minor version |
> + * +-------------------------------+ ----
> + * | uCode |
> + * +-------------------------------+ ----
> + * | RSA signature | 256B
> + * +-------------------------------+ ----
> + * | RSA public Key | 256B
> + * +-------------------------------+ ----
> + * | Public key modulus | 4B
> + * +-------------------------------+ ----
> + *
> + * Architecturally, the DMA engine is bidirectional, and can potentially even
> + * transfer between GTT locations. This functionality is left out of the API
> + * for now as there is no need for it.
> + *
> + * Note that GuC needs the CSS header plus uKernel code to be copied by the
> + * DMA engine in one operation, whereas the RSA signature is loaded via MMIO.
Imo this should be included in the kerneldoc too, especially now that we
can handle tables with markdown.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-08-14 9:05 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-12 14:43 [PATCH 0/9 v6] Batch submission via GuC Dave Gordon
2015-08-12 14:43 ` [PATCH 1/9 v6] drm/i915: GuC-specific firmware loader Dave Gordon
2015-08-14 9:05 ` Daniel Vetter [this message]
2015-08-12 14:43 ` [PATCH 2/9 v6] drm/i915: Debugfs interface to read GuC load status Dave Gordon
2015-08-12 14:43 ` [PATCH 3/9 v6] drm/i915: Expose one LRC function for GuC submission mode Dave Gordon
2015-08-12 14:43 ` [PATCH 4/9 v6] drm/i915: Prepare for GuC-based command submission Dave Gordon
2015-08-12 14:43 ` [PATCH 5/9 v6] drm/i915: Enable GuC firmware log Dave Gordon
2015-08-12 14:43 ` [PATCH 6/9 v6] drm/i915: Implementation of GuC submission client Dave Gordon
2015-08-12 14:43 ` [PATCH 7/9 v6] drm/i915: Interrupt routing for GuC submission Dave Gordon
2015-08-12 14:43 ` [PATCH 8/9 v6] drm/i915: Integrate GuC-based command submission Dave Gordon
2015-08-12 14:43 ` [PATCH 9/9 v6] drm/i915: Debugfs interface for GuC submission statistics Dave Gordon
2015-08-12 14:57 ` [PATCH 0/9 v6] Batch submission via GuC Dave Gordon
2015-08-13 2:35 ` O'Rourke, Tom
2015-08-14 9:09 ` Daniel Vetter
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=20150814090549.GR17734@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=david.s.gordon@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox