Is it just me or is the 5th patch lost?<br><br>Am Dienstag, 11. Oktober 2016 schrieb Alexandre Courbot :<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi everyone,<br>
<br>
Apologies for the big patchset. This is a rework of the secure boot code that<br>
moves the building of the blob into its own set of source files (and own hooks),<br>
making the code more flexible and (hopefully) easier to understand as well.<br>
<br>
This rework is needed to support more signed firmware for existing and new<br>
chips. Since the firmwares in question are not available yet I cannot send the<br>
code for them yet, but hopefully the gain in clarity will be enough to merge<br>
this series ahead of the rest.<br>
<br>
Patch 1 is just to make nv*_printk() more tolerent of my use of const pointers.<br>
Patch 2 lays the foundation of a small common falcon library that could avoid<br>
duplicated code in various parts of the driver. Right now only secure boot makes<br>
use of it (patch 3), but there are many potential users (GR, PMU, etc). I will<br>
test users and send further patches making use of it.<br>
<br>
Patch 4 renames a hook to something better describing its actual use.<br>
<br>
Patch 5 is where the big refactoring occurs. It looks scary, but is really just<br>
moving code (and introducing the nvkm_acr structures).<br>
<br>
Patch 6, 7 and 8 remove a few HS hooks that turn out to be unneeded, and add<br>
support for LS hooks.<br>
<br>
The end result can be observed by looking at acr_v1_gm20b.c: all the specifics<br>
of GM20B's firmware are handled in a single file, with no data structures shared<br>
with acr_v1.c. The gm20b_acr_v1_ls_func variable also describes clearly what<br>
LS firmwares are to be loaded and how.<br>
<br>
Alexandre Courbot (8):<br>
  core: constify nv*_printk macros<br>
  core: add falcon library<br>
  secboot: use falcon library's IMEM/DMEM loading functions<br>
  secboot: rename init() hook to oneinit()<br>
  secboot: move ACR building logic into own source files<br>
  secboot: remove fixup_hs_desc hook<br>
  secboot: add low-secure firmware hooks<br>
  secboot: generate HS BL descriptor in hook<br>
<br>
 drm/nouveau/include/nvkm/core/<wbr>client.h         |    4 +-<br>
 drm/nouveau/include/nvkm/core/<wbr>device.h         |    2 +-<br>
 drm/nouveau/include/nvkm/core/<wbr>falcon.h         |   50 +<br>
 drm/nouveau/include/nvkm/core/<wbr>subdev.h         |    2 +-<br>
 drm/nouveau/include/nvkm/<wbr>subdev/secboot.h      |   33 +-<br>
 drm/nouveau/nvkm/core/Kbuild                   |    1 +<br>
 drm/nouveau/nvkm/core/falcon.c                 |   62 ++<br>
 drm/nouveau/nvkm/engine/gr/<wbr>gf100.c             |   16 +-<br>
 drm/nouveau/nvkm/engine/gr/<wbr>gm200.c             |    6 +-<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/Kbuild         |    2 +<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/acr.h          |   67 ++<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1.c       | 1193 ++++++++++++++++++++<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1.h       |  346 ++++++<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1_gm20b.c |  135 +++<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/base.c         |  113 +-<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/gm200.c        | 1386 +-----------------------<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/gm200.h        |   43 +<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/gm20b.c        |  141 +--<br>
 drm/nouveau/nvkm/subdev/<wbr>secboot/priv.h         |  208 +---<br>
 19 files changed, 2072 insertions(+), 1738 deletions(-)<br>
 create mode 100644 drm/nouveau/include/nvkm/core/<wbr>falcon.h<br>
 create mode 100644 drm/nouveau/nvkm/core/falcon.c<br>
 create mode 100644 drm/nouveau/nvkm/subdev/<wbr>secboot/acr.h<br>
 create mode 100644 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1.c<br>
 create mode 100644 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1.h<br>
 create mode 100644 drm/nouveau/nvkm/subdev/<wbr>secboot/acr_v1_gm20b.c<br>
 create mode 100644 drm/nouveau/nvkm/subdev/<wbr>secboot/gm200.h<br>
<br>
--<br>
2.10.0<br>
<br>
______________________________<wbr>_________________<br>
Nouveau mailing list<br>
<a href="javascript:;" onclick="_e(event, 'cvml', 'Nouveau@lists.freedesktop.org')">Nouveau@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/nouveau" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/nouveau</a><br>
</blockquote>