summaryrefslogtreecommitdiffstats
path: root/completions
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--completions/_nvme124
-rw-r--r--completions/bash-nvme-completion.sh61
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 ) )