Request for system-files autoconnection for FGPAd snap

  • name: fpgad
  • description: FPGA utility that manages bitstream[^1] loading and unloading
  • snapcraft: fpgad/snap/snapcraft.yaml at main · canonical/fpgad · GitHub
  • upstream: GitHub - canonical/fgpad
  • upstream-relation: maintainer
  • interfaces:
    • system-files:
      • request-type: auto-connection
      • reasoning: fpgad needs access to access to create/remove device tree overlay files, as described in the snapcraft.yaml [^2], in order to trigger probing events to load the necessary drivers when loading bitstreams. Without device tree overlay features, the kernel cannot be asked to bind the device to a driver when the FPGA configuration changes.

[^1] Bitstreams are binary blobs that configures FPGA devices

[^2] interface definition:

  device-tree-overlays:
    interface: system-files
    read:
      - /sys/kernel/config/device-tree/overlays
    write:
      - /sys/kernel/config/device-tree/overlays

FYI: We had discussions with the snapd team in Gothenburg about how best to provide access to the device-tree overlay subsystem, and the system-files was chosen (as opposed, e.g. to creating a new interface due or adapting the fpga interface in snapd) due to

  1. it’s simplicity
  2. the fact that the exact nature of the access may vary between hardware vendors (or future changes to the upstream kernel), and FPGAd will be updated to reflect that - this reduces snapd maintenance burden.

Thanks in advance, and don’t hesitate to ask if anything isn’t clear Best, Artie (& Talha)

1 Like

Note: These past requests and assosciated discussions may provide more context (I couldn’t add enough links in the original post):

1 Like

This request has been added to the queue for review by the @reviewers team.

I think the provided reasoning makes a lot of sense. Given that this approach has been discussed and agreed with snapd team I have not objection. +1 from me for granting fpgad auto-connection to the requested system-files interface (#voteFor)

2 Likes

+1 (#voteFor) from me as well for granting auto-connection of the system-files interface

1 Like

Voting period has ended. This request is approved with 2 votes for and 0 votes against.

Publisher is vetted. The request will be granted.

1 Like

Request has been granted. This is now live.

2 Likes

Thank you very much all!