pub enum Commands {
Load {
command: LoadSubcommand,
},
Set {
attribute: String,
value: String,
},
Status,
Remove {
command: RemoveSubcommand,
},
XlnxSys {
command: XlnxSysSubcommand,
},
DfxMgr {
cmd: Vec<String>,
},
Completions {
shell: Shell,
},
}Expand description
Top-level commands supported by the CLI.
This enum represents all the primary operations available through the fpgad CLI:
- Load: Load bitstreams or device tree overlays onto the FPGA
- Set: Configure FPGA attributes and flags (e.g., programming flags)
- Status: Query the current state of FPGA devices and loaded overlays
- Remove: Unload bitstreams or device tree overlays from the FPGA
- XlnxSys: Low-level read/write access to FPGA manager properties via the xlnx_sys interface
- DfxMgr: Pass commands directly to
dfx-mgr-client(requires dfx-mgr component)
Each command communicates with the fpgad daemon via DBus to perform privileged operations on FPGA devices managed through the Linux kernel’s FPGA subsystem.
§Examples
# Load a bitstream to a specific device
fpgad --device=fpga0 load bitstream /lib/firmware/design.bit.bin
# Load an overlay with platform override
fpgad --platform=xlnx-sys load overlay /lib/firmware/overlay.dtbo --name=my_overlay
# Set flags for a device
fpgad --device=fpga0 set flags 0
# Get status for all devices
fpgad status
# Remove an overlay by name
fpgad remove overlay --name=my_overlay
# Read FPGA flags via xlnx_sys interface
fpgad xlnx-sys read read_flags fpga0
# Write flags via xlnx_sys interface
fpgad xlnx-sys write write_flags fpga0 0x20
# Invoke dfx-mgr-client
fpgad dfx-mgr "-listPackage"Variants§
Load
Load a bitstream or an overlay for the given device handle
Fields
command: LoadSubcommandSet
Set an option (e.g. flags) to a specific value for a given device handle
Status
Get the status information for the given device handle
Remove
Remove bitstream or an overlay
Fields
command: RemoveSubcommandXlnxSys
Low-level read/write access to FPGA manager properties (xlnx_sys platform interface)
Fields
command: XlnxSysSubcommandDfxMgr
Pass a command directly to dfx-mgr-client (requires the dfx-mgr snap component).
This is a thin passthrough to the Xilinx DFX Manager client binary. The arguments are
forwarded verbatim to dfx-mgr-client, so any flag or option that the tool accepts can be
used here.
The dfx-mgr component must be installed:
sudo snap install fpgad+dfx-mgrFor a full list of dfx-mgr-client commands and options, see the upstream project:
https://github.com/Xilinx/dfx-mgr
§Common commands
| Example | Description |
|---|---|
fpgad dfx-mgr -listPackage | List all available acceleration packages |
fpgad dfx-mgr -listSlot | List all FPGA slots and their current state |
fpgad dfx-mgr -load 0 <package_name> | Load a package into slot 0 |
fpgad dfx-mgr -remove 0 | Remove the package loaded in slot 0 |
§Notes
- Arguments that begin with
-(such as-listPackage) are supported directly — no--separator is required. - Multiple tokens are accepted:
fpgad dfx-mgr -load 0 my_design
Fields
Completions
Generate a shell completion script and print it to stdout.
This is primarily used at packaging time (the snap wires the generated bash
script up via the completer keyword), but it can also be sourced manually:
# Enable completions for the current shell session
source <(fpgad completions bash)
# Or install them permanently for the current user
fpgad completions bash > ~/.local/share/bash-completion/completions/fpgadTrait Implementations§
Source§impl FromArgMatches for Commands
impl FromArgMatches for Commands
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for Commands
impl Subcommand for Commands
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommand