diff options
Diffstat (limited to '')
-rw-r--r-- | completions/_nvme | 124 | ||||
-rw-r--r-- | completions/bash-nvme-completion.sh | 61 |
2 files changed, 141 insertions, 44 deletions
diff --git a/completions/_nvme b/completions/_nvme index 49736f5..0d28788 100644 --- a/completions/_nvme +++ b/completions/_nvme @@ -36,7 +36,7 @@ _nvme () { 'get-log:retrieve any log in raw format' 'predictable-lat-log:retrieve predictable latency per nvmset log' 'pred-lat-event-agg-log:retrieve predictable latency event aggregate log' - 'persistent-event-log:retrieve presistent event log' + 'persistent-event-log:retrieve persistent event log' 'telemetry-log:retrieve telemetry log' 'fw-log:retrieve fw log' 'changed-ns-list-log:retrieve changed namespaces log' @@ -102,6 +102,8 @@ _nvme () { 'virt-mgmt:submit a Virtualization Management command' 'rpmb:submit an NVMe RPMB command' 'show-topology:show subsystem topology' + 'nvme-mi-recv:send a NVMe-MI receive command' + 'nvme-mi-send:send a NVMe-MI send command' 'version:show the program version' 'ocp:OCP cloud SSD extensions' 'help:print brief descriptions of all nvme commands' @@ -217,15 +219,15 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme ocp clear-pcie-correctable-error-counters options" _clear_pcie_correctable_error_counters ;; - (vs-fw-activate-history) - local _vs_fw_activate_history - _vs_fw_activate_history=( + (fw-activate-history) + local _fw_activate_history + _fw_activate_history=( /dev/nvme':supply a device to use (required)' --output-format=':Output format: normal|json' -o':alias for --output-format' ) _arguments '*:: :->subcmds' - _describe -t commands "nvme ocp vs-fw-activate-history options" _vs_fw_activate_history + _describe -t commands "nvme ocp fw-activate-history options" _fw_activate_history ;; (device-capability-log) local _device_capability_log @@ -237,6 +239,30 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme ocp device-capability-log options" _device_capability_log ;; + (set-dssd-power-state-feature) + local _set_dssd_power_state_feature + _set_dssd_power_state_feature=( + /dev/nvme':supply a device to use (required)' + --power-state=':DSSD Power State to set in watts' + -p':alias for --power-state' + --save':Specifies that the controller shall save the attribute' + -s':alias for --save' + --no-uuid':Skip UUID index search' + -n':alias for --no-uuid' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme ocp set-dssd-power-state-feature options" _set_dssd_power_state_feature + ;; + (telemetry-string-log) + local _telemetry_string_log + _telemetry_string_log=( + /dev/nvme':supply a device to use (required)' + --output-file=':Output file name with path' + -o':alias for --output-file' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme ocp internal-log options" _internal_log + ;; (*) _files ;; @@ -290,7 +316,7 @@ _nvme () { --human-readable':show infos in readable format' -H':alias of --human-readable' --vendor-specific':also dump binary vendor infos' - -v':alias of --vendor-specific' + -V':alias of --vendor-specific' ) _arguments '*:: :->subcmds' _describe -t commands "nvme id-ctrl options" _idctrl @@ -306,7 +332,7 @@ _nvme () { --human-readable':show infos in readable format' -H':alias of --human-readable' --vendor-specific':also dump binary vendor infos' - -v':alias of --vendor-specific' + -V':alias of --vendor-specific' ) _arguments '*:: :->subcmds' _describe -t commands "nvme id-ns options" _idns @@ -525,6 +551,8 @@ _nvme () { -a':alias of --anagrp-id' --nvmset-id=':NVM Set Identifier' -i':alias of --nvmset-id' + --endg-id=':Endurance Group Identifier' + -e':alias of --endg-id' --block-size=':target block size' -b':alias of --block-size' --timeout=':value for timeout' @@ -537,6 +565,16 @@ _nvme () { -S':alias of --nsze-si' --ncap-si=':capacity of ns (NCAP) in standard SI units' -C':alias of --ncap-si' + --azr=':Allocate ZRWA Resources (AZR) for Zoned Namespace Command Set' + -z':alias of --azr' + --rar=':Requested Active Resources (RAR) for Zoned Namespace Command Set' + -r':alias of --rar' + --ror=':Requested Open Resources (ROR) for Zoned Namespace Command Set' + -O':alias of --ror' + --rnumzrwa=':Requested Number of ZRWA Resources (RNUMZRWA) for Zoned Namespace Command Set' + -u':alias of --rnumzrwa' + --phndls=':Comma separated list of Placement Handle Associated RUH' + -p':alias of --phndls' ) _arguments '*:: :->subcmds' _describe -t commands "nvme create-ns options" _createns @@ -612,7 +650,7 @@ _nvme () { --aen=':result of the aen, use to override log id' -a':alias of --aen' --lpo=':log page offset specifies the location within a log page from where to start returning data' - -o':alias of --lpo' + -L':alias of --lpo' --lsi=':log specific identifier specifies an identifier that is required for a particular log page' -S':alias of --lsi' --rae':Retain an Asynchronous Event' @@ -648,7 +686,7 @@ _nvme () { _telemetry_log=( /dev/nvme':supply a device to use (required)' --output-file=':telemetry data output write' - -o':alias for --output-file' + -O':alias for --output-file' --host-generate=':Have the host tell the controller to generate the report' -g':alias to --host-generate' --controller-init':Gather report generated by the controller' @@ -887,7 +925,7 @@ _nvme () { _lockdown=( /dev/nvme':supply a device to use (required)' --ofi=':Opcode or Feature Identifier(OFI) (required)' - -o':alias of --ofi' + -O':alias of --ofi' --ifc=':Interface (INF) field Information (required)' -f':alias of --ifc' --prhbt=':Prohibit(PRHBT) bit field (required)' @@ -913,7 +951,7 @@ _nvme () { --data=':data file for LBA Type Range or host identifier buffer (defaults to stdin)' -d':alias to --data' --value=':new value of feature (required)' - -v'alias to --value' + -V'alias to --value' --uuid-index=':uuid index' -U':alias for --uuid-index' ) @@ -925,9 +963,9 @@ _nvme () { _set_property=( /dev/nvme':supply a device to use (required)' --offset=':the offset of the property' - -o':alias to --offset' + -O':alias to --offset' --value=':the value of the property to be set' - -v':alias to --value' + -V':alias to --value' ) _arguments '*:: :->subcmds' _describe -t commands "nvme set-property options" _set_property @@ -937,7 +975,7 @@ _nvme () { _get_property=( /dev/nvme':supply a device to use (required)' --offset=':the offset of the property' - -o':alias to --offset' + -O':alias to --offset' --human-readable':show infos in readable format' -H':alias of --human-readable' ) @@ -987,7 +1025,7 @@ _nvme () { --xfer=':limit on chunk-size of transfer (if device has download size limit)' -x':alias of --xfer' --offset=':starting offset, in dwords (defaults to 0, only useful if download is split across multiple files)' - -o':alias of --offset' + -O':alias of --offset' ) _arguments '*:: :->subcmds' _describe -t commands "nvme fw-download options" _fwd @@ -997,7 +1035,7 @@ _nvme () { _fwd=( /dev/nvme':supply a device to use (required)' --operation=':Operation to be performed by the controller' - -o':alias of --operation' + -O':alias of --operation' --element-id=':specific to the value of the Operation field' -i':alias of --element-id' --cap-lower=':Least significant 32 bits of the capacity in bytes' @@ -1191,7 +1229,7 @@ _nvme () { _admin=( /dev/nvme':supply a device to use (required)' --opcode=':hexadecimal opcode to send (required)' - -o':alias of --opcode' + -O':alias of --opcode' --flags=':command flags' -f':alias of --flags' --rsvd=':value for reserved field' @@ -1241,7 +1279,7 @@ _nvme () { _io=( /dev/nvme':supply a device to use (required)' --opcode=':hexadecimal opcode to send (required)' - -o':alias of --opcode' + -O':alias of --opcode' --flags=':command flags' -f':alias of --flags' --rsvd=':value for reserved field' @@ -1513,7 +1551,7 @@ _nvme () { --force-unit-access':if included, the data shall be read from non-volatile media' -f':alias of --force-unit access' --show-command':show command instead of sending to device' - -v':alias of --show-command' + -V':alias of --show-command' --dry-run':show command instead of sending to device' -w':alias of --show-command' ) @@ -1549,7 +1587,7 @@ _nvme () { --force-unit-access':data read shall be returned from nonvolatile media before command completion is indicated' -f':alias of --force-unit-access' --show-command':show command instead of sending to device' - -v':alias of --show-command' + -V':alias of --show-command' --dry-run':show command instead of sending to device' -w':alias of --show-command' ) @@ -1585,7 +1623,7 @@ _nvme () { --force-unit-access':data shall be written to nonvolatile media before command completion is indicated' -f':alias of --force-unit-access' --show-command':show command instead of sending to device' - -v':alias of --show-command' + -V':alias of --show-command' --dry-run':show command instead of sending to device' -w':alias of --show-command' ) @@ -1972,6 +2010,48 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme show-topology options" _showtopology ;; + (nvme-mi-recv) + local _nvme_mi_recv + _nvme_mi_recv=( + --opcode=':NVMe-MI opcode to send' + -O':alias of --opcode' + --namespace-id=':value for nsid' + -n':alias of --namespace-id' + --data-len=':length for data buffer' + -l':alias of --data-len' + --nmimt':value for NVMe-MI message type' + -m':alias of --nmimt' + --nmd0':value for NVMe management request dword 0' + -0':alias of --nmd0' + --nmd1':value for NVMe management request dword 1' + -1':alias of --nmd1' + --input-file=':defaults to stdin; input for write (send direction)' + -i':alias for --input-file' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme nvme-mi-recv options" _nvme_mi_recv + ;; + (nvme-mi-send) + local _nvme_mi_send + _nvme_mi_send=( + --opcode=':NVMe-MI opcode to send' + -O':alias of --opcode' + --namespace-id=':value for nsid' + -n':alias of --namespace-id' + --data-len=':length for data buffer' + -l':alias of --data-len' + --nmimt':value for NVMe-MI message type' + -m':alias of --nmimt' + --nmd0':value for NVMe management request dword 0' + -0':alias of --nmd0' + --nmd1':value for NVMe management request dword 1' + -1':alias of --nmd1' + --input-file=':defaults to stdin; input for write (send direction)' + -i':alias for --input-file' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme nvme-mi-send options" _nvme_mi_send + ;; (version) local _version _version=( @@ -1991,6 +2071,8 @@ _nvme () { clear-pcie-correctable-error-counters':Clear PCIe correctable error counters' vs-fw-activate-history':Get firmware activation history log' device-capability-log':Get Device capability log' + set-dssd-power-state-feature':Set DSSD Power State' + telemetry-string-log':Retrieve Telemetry string Log Page' ) _arguments '*:: :->subcmds' _describe -t commands "nvme ocp options" _ocp diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh index 8f451ff..5d62427 100644 --- a/completions/bash-nvme-completion.sh +++ b/completions/bash-nvme-completion.sh @@ -47,11 +47,11 @@ nvme_list_opts () { ;; "id-ctrl") opts+=" --raw-binary -b --human-readable -H \ - --vendor-specific -v --output-format= -o" + --vendor-specific -V --output-format= -o" ;; "id-ns") opts+=" --namespace-id= -n --raw-binary -b \ - --human-readable -H --vendor-specific -v \ + --human-readable -H --vendor-specific -V \ --force -f --output-format= -o" ;; "id-ns-granularity") @@ -114,7 +114,7 @@ nvme_list_opts () { --dps= -d --nmic= -m --anagrp-id= -a --nvmset-id= -i \ --block-size= -b --timeout= -t --csi= -y --lbstm= -l \ --nphndls= -n --nsze-si= -S --ncap-si= -C --azr -z --rar= -r \ - --ror= -o --rnumzrwa= -u --phndls= -p" + --ror= -O --rnumzrwa= -u --phndls= -p --endg-id= -e" ;; "delete-ns") opts+=" -namespace-id= -n --timeout= -t" @@ -130,7 +130,7 @@ nvme_list_opts () { ;; "get-log") opts+=" --log-id= -i --log-len= -l --namespace-id= -n \ - --aen= -a --lpo= -o --lsp= -s --lsi= -S \ + --aen= -a --lpo= -O --lsp= -s --lsi= -S \ --rae -r --uuid-index= -U --csi= -y --ot -O \ --raw-binary -b" ;; @@ -138,7 +138,7 @@ nvme_list_opts () { opts+=" --output-format= -o --human-readable -H" ;; "telemetry-log") - opts+=" --output-file= -o --host-generate= -g \ + opts+=" --output-file= -O --host-generate= -g \ --controller-init -c --data-area= -d" ;; "fw-log") @@ -220,10 +220,10 @@ nvme_list_opts () { --cdw12= -c" ;; "set-property") - opts+=" --offset= -o --value= -v" + opts+=" --offset= -O --value= -V" ;; "get-property") - opts=+" --offset= -o --human-readable -H" + opts=+" --offset= -O --human-readable -H" ;; "format") opts+=" --namespace-id= -n --timeout= -t --lbaf= -l \ @@ -233,18 +233,17 @@ nvme_list_opts () { opts+=" --slot= -s --action= -a --bpid= -b" ;; "fw-download") - opts+=" --fw= -f --xfer= -x --offset= -o" + opts+=" --fw= -f --xfer= -x --offset= -O" ;; "capacity-mgmt") - opts+=" --operation= -f --element-id= -i --cap-lower= -l \ - --cap-upper= -u" + opts+=" --operation= -O --element-id= -i --cap-lower= -l \ + --cap-upper= -u" ;; "lockdown") - opts+=" --ofi= -O --ifc= -F --prhbt= -P \ - -scp= -S --uuid -U" + opts+=" --ofi= -O --ifc= -f --prhbt= -p --scp= -s --uuid -U" ;; "admin-passthru") - opts+=" --opcode= -o --flags= -f --prefil= -p --rsvd= -R \ + opts+=" --opcode= -O --flags= -f --prefil= -p --rsvd= -R \ --namespace-id= -n --data-len= -l --metadata-len= -m \ --timeout= -t --cdw2= -2 --cdw3= -3 --cdw10= -4 \ --cdw11= -5 --cdw12= -6 --cdw13= -7 --cdw14= -8 \ @@ -253,7 +252,7 @@ nvme_list_opts () { --latency -T" ;; "io-passthru") - opts+=" --opcode= -o --flags= -f --prefill= -p --rsvd= -R \ + opts+=" --opcode= -O --flags= -f --prefill= -p --rsvd= -R \ --namespace-id= -n --data-len= -l --metadata-len= -m \ --timeout= -t --cdw2= -2 --cdw3= -3 --cdw10= -4 \ --cdw11= -5 --cdw12= -6 --cdw13= -7 --cdw14= -8 \ @@ -312,7 +311,7 @@ nvme_list_opts () { --metadata= -M --prinfo= -p --app-tag-mask= -m \ --app-tag= -a --limited-retry -l \ --force-unit-access -f --storage-tag-check -C \ - --dir-type= -T --dir-spec= -S --dsm= -D --show-command -v \ + --dir-type= -T --dir-spec= -S --dsm= -D --show-command -V \ --dry-run -w --latency -t" ;; "read") @@ -321,7 +320,7 @@ nvme_list_opts () { --metadata= -M --prinfo= -p --app-tag-mask= -m \ --app-tag= -a --limited-retry -l \ --force-unit-access -f --storage-tag-check -C \ - --dir-type= -T --dir-spec= -S --dsm= -D --show-command -v \ + --dir-type= -T --dir-spec= -S --dsm= -D --show-command -V \ --dry-run -w --latency -t" ;; "write") @@ -330,7 +329,7 @@ nvme_list_opts () { --metadata= -M --prinfo= -p --app-tag-mask= -m \ --app-tag= -a --limited-retry -l \ --force-unit-access -f --storage-tag-check -C \ - --dir-type= -T --dir-spec= -S --dsm= -D --show-command -v \ + --dir-type= -T --dir-spec= -S --dsm= -D --show-command -V \ --dry-run -w --latency -t" ;; "write-zeroes") @@ -446,6 +445,14 @@ nvme_list_opts () { "show-topology") opts+=" --output-format= -o --verbose -v --ranking= -r" ;; + "nvme-mi-recv") + opts+=" --opcode= -O --namespace-id= -n --data-len= -l \ + --nmimt= -m --nmd0= -0 --nmd1= -1 --input-file= -i" + ;; + "nvme-mi-send") + opts+=" --opcode= -O --namespace-id= -n --data-len= -l \ + --nmimt= -m --nmd0= -0 --nmd1= -1 --input-file= -i" + ;; "version") opts+=$NO_OPTS ;; @@ -983,7 +990,7 @@ plugin_shannon_opts () { --data-len= -l --raw-binary -b --cdw11= -c --human-readable -H" ;; "set-feature-add") - opts+=" --namespace-id= -n --feature-id= -f --value= -v \ + opts+=" --namespace-id= -n --feature-id= -f --value= -V \ --data-len= -l --data= -d --save -s" ;; "id-ctrl") @@ -1342,12 +1349,18 @@ plugin_ocp_opts () { "clear-pcie-correctable-error-counters") opts+=" --no-uuid -n" ;; - "vs-fw-activate-history") + "fw-activate-history") opts+=" --output-format= -o" ;; "device-capability-log") opts+=" --output-format= -o" ;; + "set-dssd-power-state-feature") + opts+=" --power-state= -p --no-uuid -n --save -s" + ;; + "telemetry-string-log") + opts+=" --output-file= -o" + ;; "help") opts+=$NO_OPTS ;; @@ -1416,10 +1429,11 @@ _nvme_subcmds () { set-latency-monitor-feature internal-log \ clear-fw-activate-history eol-plp-failure-mode \ clear-pcie-correctable-error-counters \ - vs-fw-activate-history device-capability-log" + vs-fw-activate-history device-capability-log \ + set-dssd-power-state-feature telemetry-string-log" ) - # Associative array mapping plugins to coresponding option completions + # Associative array mapping plugins to corresponding option completions typeset -Ar _plugin_funcs=( [intel]="plugin_intel_opts" [amzn]="plugin_amzn_opts" @@ -1466,14 +1480,15 @@ _nvme_subcmds () { show-hostnqn dir-receive dir-send virt-mgmt \ rpmb boot-part-log fid-support-effects-log \ supported-log-pages lockdown media-unit-stat-log \ - supported-cap-config-log dim show-topology list-endgrp" + supported-cap-config-log dim show-topology list-endgrp \ + nvme-mi-recv nvme-mi-send" # Add plugins: for plugin in "${!_plugin_subcmds[@]}"; do _cmds+=" $plugin" done - cmds+=" version help" + _cmds+=" version help" if [[ ${#words[*]} -lt 3 ]]; then COMPREPLY+=( $(compgen -W "$_cmds" -- $cur ) ) |