diff options
Diffstat (limited to '')
-rw-r--r-- | completions/_nvme | 82 | ||||
-rw-r--r-- | completions/bash-nvme-completion.sh | 49 |
2 files changed, 117 insertions, 14 deletions
diff --git a/completions/_nvme b/completions/_nvme index b8070d6..9507cd0 100644 --- a/completions/_nvme +++ b/completions/_nvme @@ -10,6 +10,7 @@ _nvme () { 'id-ctrl:display information about the controller' 'id-ns:display information about the namespace' 'list-ns:identify all namespace(s) attached' + 'cmdset-ind-id-ns':display I/O Command Set Independent information about the namespace' 'id-iocs:display information about I/O command sets' 'id-domain:display information about domain list' 'create-ns:create a new namespace before attachment' @@ -18,6 +19,7 @@ _nvme () { 'detach-ns:detach namespace from controller' 'list-ctrl:identify all controller(s) attached' 'nvm-id-ctrl:display information about the nvm command set' + 'list-endgrp:display information about nvme endurance group list' 'get-ns-id:get namespace id of opened block device' 'get-log:retrieve any log in raw format' 'predictable-lat-log:retrieve predictable latency per nvmset log' @@ -50,6 +52,10 @@ _nvme () { 'write:submit a write command' 'capacity-mgmt: submit capacity management command' 'show-regs:shows the controller registers; requires admin character device' + 'boot-part-log: retrieve boot partition log' + 'fid-support-effects-log:retrieve fid support and effects log' + 'supported-log-pages: retrieve support log pages details' + 'lockdown:submit a lockdown command' 'help:print brief descriptions of all nvme commands' ) @@ -105,6 +111,20 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme list-ns options" _listns ;; + (cmdset-ind-id-ns) + local _cmdset_ind_idns + _cmdset_ind_idns=( + /dev/nvme':supply a device to use (required)' + --namespace-id=':show infos for namespace <nsid>' + -n':alias of --namespace-id' + --raw-binary':dump infos in binary format' + -b':alias of --raw-binary' + --human-readable':show infos in readable format' + -H':alias of --human-readable' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme cmdset-ind-id-ns options" _cmdset_ind_idns + ;; (id-iocs) local _idiocs _idiocs=( @@ -133,6 +153,16 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme nvm-id-ctrl options" _nvmidctrl ;; + (list-endgrp) + local _listendgrp + _listendgrp=( + /dev/nvme':supply a device to use (required)' + --endgrp-id=':endurance group id' + -i':alias of --endgrp-id' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme list-ns options" _listendgrp + ;; (create-ns) local _createns _createns=( @@ -343,6 +373,18 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme resv-notif-log options" _resvnotiflog ;; + (boot-part-log) + local _bootpartlog + _bootpartlog=( + /dev/nvme':supply a device to use (required)' + --lsp=': log specific field' + -s':alias to --lsp' + --output-file=': boot partition data output write' + -f':alias for --output-file' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme boot-part-log options" _bootpartlog + ;; (get-feature) local _getf _getf=( @@ -364,6 +406,24 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme get-feature options" _getf ;; + (lockdown) + local _lockdown + _lockdown=( + /dev/nvme':supply a device to use (required)' + --ofi=': Opcode or Feature Identifier(OFI) (required)' + -o':alias of --ofi' + --ifc=':Interface (INF) field Information (required)' + -f':alias of --ifc' + --prhbt=':Prohibit(PRHBT) bit field (required)' + -p':alias of --prhbt' + --scp=':Scope(SCP) field for identifying opcode or feature id (required)' + -s':alias of --scp' + --uuid=':UUID Index field required aligned with Scope' + -U':alias of --uuid' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme lockdown options" _lockdown + ;; (set-feature) local _setf _setf=( @@ -446,6 +506,16 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme capacity-mgmt options" _fwd ;; + (supported-log-pages) + local _support + _support=( + /dev/nvme':supply a device to use (required)' + --human-readable':show infos in readable format' + -H':alias of --human-readable' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme supported-log-pages options" _support + ;; (admin-passthru) local _admin _admin=( @@ -812,6 +882,14 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme show-regs options" _shor ;; + (fid-support-effects-log) + local _fidsupporteffectslog + _fidsupporteffectslog=( + /dev/nvme':supply a device to use (required)' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme fid-support-effects-log options" _fidsupporteffectslog + ;; (help) local _h _h=( id-ctrl id-ns list-ns id-iocs create-ns delete-ns attach-ns detach-ns @@ -820,7 +898,9 @@ _nvme () { security-send security-recv resv-acquire resv-register resv-release resv-report flush compare read write copy show-regs persistent-event-log pred-lat-event-agg-log nvm-id-ctrl endurance-event-agg-log lba-status-log - resv-notif-log capacity-mgmt id-domain + resv-notif-log capacity-mgmt id-domain boot-part-log fid-support-effects-log + supported-log-pages lockdown + supported-log-pages list-endgrp ) _arguments '*:: :->subcmds' _describe -t commands "help: infos on a specific nvme command, or provide no option to see a synopsis of all nvme commands" _h diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh index d3cca44..41938d7 100644 --- a/completions/bash-nvme-completion.sh +++ b/completions/bash-nvme-completion.sh @@ -100,7 +100,9 @@ _cmds="list list-subsys id-ctrl id-ns \ ns-rescan show-regs discover connect-all \ connect disconnect disconnect-all gen-hostnqn \ show-hostnqn dir-receive dir-send virt-mgmt \ - rpmb" + rpmb boot-part-log fid-support-effects-log \ + supported-log-pages lockdown" + supported-log-pages list-endgrp" # Add plugins: for plugin in "${!_plugin_subcmds[@]}"; do @@ -154,6 +156,10 @@ nvme_list_opts () { opts+=" --namespace-id= -n --cntid= -c \ --output-format= -o" ;; + "cmdset-ind-id-ns") + opts+=" --namespace-id= -n --raw-binary -b \ + --human-readable -H --output-format= -o" + ;; "id-domain") opts+=" --dom-id= -d --output-format= -o" ;; @@ -176,6 +182,9 @@ nvme_list_opts () { "id-uuid") opts+=" --output-format= -o --raw-binary -b --human-readable -H" ;; + "list-endgrp") + opts+=" --endgrp-id= -i --output-format= -o" + ;; "id-iocs") opts+=" --controller-id= -c --output-format= -o --human-readable -H" ;; @@ -202,6 +211,9 @@ nvme_list_opts () { --rae -r --uuid-index= -U --csi= -y --ot -O \ --raw-binary -b" ;; + "supported-log-pages") + opts+=" --output-format= -o --human-readable -H" + ;; "telemetry-log") opts+=" --output-file= -o --host-generate= -g \ --controller-init -c --data-area= -d" @@ -219,6 +231,9 @@ nvme_list_opts () { "ana-log") opts+=" --output-format -o" ;; + "fid-support-effects-log") + opts+=" --output-format -o" + ;; "error-log") opts+=" --raw-binary -b --log-entries= -e \ --output-format= -o" @@ -252,6 +267,10 @@ nvme_list_opts () { "resv-notif-log") opts+=" --output-format= -o" ;; + "boot-part-log") + opts+=" --lsp -s --output-file= -f \ + --output-format= -o" + ;; "get-feature") opts+=" --namespace-id= -n --feature-id= -f --sel= -s \ --data-len= -l --cdw11= --c -uuid-index= -U --raw-binary -b \ @@ -289,6 +308,10 @@ nvme_list_opts () { opts+=" --operation= -f --element-id= -i --cap-lower= -l \ --cap-upper= -u" ;; + "lockdown") + opts+=" --ofi= -O --ifc= -F --prhbt= -P \ + -scp= -S --uuid -U" + ;; "admin-passthru") opts+=" --opcode= -o --flags= -f --prefil= -p --rsvd= -R \ --namespace-id= -n --data-len= -l --metadata-len= -m \ @@ -572,7 +595,7 @@ plugin_amzn_opts () { "id-ctrl") opts+=" --raw-binary -b --human-readable -H \ --vendor-specific -v --output-format= -o" - ;; + ;; "help") opts+=$NO_OPTS ;; @@ -624,7 +647,7 @@ plugin_lnvm_opts () { opts+=" --target-name= -n" ;; "factory") - opts+=" --device-name= -d --erase-only-marked -e + opts+=" --device-name= -d --erase-only-marked -e --clear-host-side-blks -s --clear-bb-blks -b" ;; "diag-bbtbl") @@ -836,7 +859,7 @@ plugin_huawei_opts () { "id-ctrl") opts+=" --raw-binary -b --human-readable -H \ --vendor-specific -v --output-format= -o" - ;; + ;; "help") opts+=$NO_OPTS ;; @@ -878,7 +901,7 @@ plugin_toshiba_opts () { opts+=$NO_OPTS ;; esac - + COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) ) return 0 @@ -1081,12 +1104,12 @@ plugin_shannon_opts () { "id-ctrl") opts+=" --raw-binary -b --human-readable -H \ --vendor-specific -v --output-format= -o" - ;; + ;; "help") opts+=$NO_OPTS ;; esac - + COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) ) return 0 @@ -1112,12 +1135,12 @@ plugin_dera_opts () { case "$1" in "smart-log-add") opts+=$NO_OPTS - ;; + ;; "help") opts+=$NO_OPTS ;; esac - + COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) ) return 0 @@ -1166,7 +1189,7 @@ plugin_sfx_opts () { opts+=$NO_OPTS ;; esac - + COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) ) return 0 @@ -1312,7 +1335,7 @@ plugin_nvidia_opts () { "id-ctrl") opts+=" --raw-binary -b --human-readable -H \ --vendor-specific -v --output-format= -o" - ;; + ;; "help") opts+=$NO_OPTS ;; @@ -1343,12 +1366,12 @@ plugin_ymtc_opts () { case "$1" in "smart-log-add") opts+=" --namespace-id= -n --raw-binary -b" - ;; + ;; "help") opts+=NO_OPTS ;; esac - + COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) ) return 0 |