summaryrefslogtreecommitdiffstats
path: root/completions
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-02-19 10:45:37 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-02-19 10:45:45 +0000
commit476d0b41d27c48140ec2284a5a5f505e8423fe65 (patch)
tree369a4a0f5ba4b1e66dc22bcb107b1825fa15c247 /completions
parentReleasing debian version 2.7.1-1. (diff)
downloadnvme-cli-476d0b41d27c48140ec2284a5a5f505e8423fe65.tar.xz
nvme-cli-476d0b41d27c48140ec2284a5a5f505e8423fe65.zip
Merging upstream version 2.8.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'completions')
-rw-r--r--completions/_nvme210
-rw-r--r--completions/bash-nvme-completion.sh90
2 files changed, 298 insertions, 2 deletions
diff --git a/completions/_nvme b/completions/_nvme
index 0d28788..e90fc42 100644
--- a/completions/_nvme
+++ b/completions/_nvme
@@ -106,6 +106,7 @@ _nvme () {
'nvme-mi-send:send a NVMe-MI send command'
'version:show the program version'
'ocp:OCP cloud SSD extensions'
+ 'solidigm:Solidigm plug-in extensions'
'help:print brief descriptions of all nvme commands'
'json:dump output in json format'
)
@@ -261,7 +262,188 @@ _nvme () {
-o':alias for --output-file'
)
_arguments '*:: :->subcmds'
- _describe -t commands "nvme ocp internal-log options" _internal_log
+ _describe -t commands "nvme ocp telemetry-string-log options" _telemetry_string_log
+ ;;
+ (*)
+ _files
+ ;;
+ esac
+ ;;
+ (solidigm)
+ case ${words[2]} in
+ (id-ctrl)
+ local _id_ctrl
+ _id_ctrl=(
+ --verbose':Increase output verbosity'
+ -v':alias for --verbose'
+ --output-format':Output format: normal|json|binary'
+ -o':alias for --output-format'
+ --vendor-specific':dump binary vendor field'
+ -V':alias for --vendor-specific'
+ --raw-binary':show identify in binary format'
+ -b':alias for --raw-binary'
+ --human-readable':show identify in readable format'
+ -H':alias for --human-readable'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm id-ctrl options" _id_ctrl
+ ;;
+ (smart-log-add)
+ local _smart_log_add
+ _smart_log_add=(
+ --namespace-id':(optional) desired namespace'
+ -n':alias for --namespace-id'
+ --output-format':Output format: normal|json|binary'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm smart-log-add options" _smart_log_add
+ ;;
+ (vs-smart-add-log)
+ local _vs_smart_add_log
+ _vs_smart_add_log=(
+ --output-format':output Format: normal|json'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm vs-smart-add-log options" _vs_smart_add_log
+ ;;
+ (vs-internal-log)
+ local _vs_internal_log
+ _vs_internal_log=(
+ --type':Log type: ALL,
+ CONTROLLERINITTELEMETRY,
+ HOSTINITTELEMETRY,
+ HOSTINITTELEMETRYNOGEN, NLOG,
+ ASSERT, EVENT. Defaults to ALL.'
+ -t':alias for --type'
+ --namespace-id':Namespace to get logs from.'
+ -n':alias for --namespace-id'
+ --dir-prefix':Output dir prefix; defaults to device serial number.'
+ -p':alias for --dir-prefix'
+ --verbose':To print out verbose info.'
+ -v':alias for --verbose'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm vs-internal-log" _vs_internal_log
+ ;;
+ (garbage-collect-log)
+ local _garbage_collect_log
+ _garbage_collect_log=(
+ --output-format':Output format: normal|json|binary'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm garbage-collect-log" _garbage_collect_log
+ ;;
+ (market-log)
+ local _market_log
+ _market_log=(
+ --raw-binary':dump output in binary format'
+ -b':alias for --raw-binary'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm market-log" _market_log
+ ;;
+ (latency-tracking-log)
+ local _latency_tracking_log
+ _latency_tracking_log=(
+ --enable':Enable Latency Tracking'
+ -e':alias for --enable'
+ --disable':Disable Latency Tracking'
+ -d':alias for --disable'
+ --read':Get read statistics'
+ -r':alias for --read'
+ --write':Get write statistics'
+ -w':alias for --write'
+ --type':Log type to get'
+ -t':alias for --type'
+ --output-format':Output format: normal|json|binary'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm latency-tracking-log" _latency_tracking_log
+ ;;
+ (parse-telemetry-log)
+ local _parse_telemetry_log
+ _parse_telemetry_log=(
+ --host-generate':Controls when to generate new
+ host initiated report. Default
+ value '1' generates new host
+ initiated report, value '0'
+ causes retrieval of existing
+ log.'
+ -g':alias for --host-generate'
+ --controller-init':Gather report generated by the controller.'
+ -c':alias for --controller-init'
+ --data-area':Pick which telemetry data area to
+ report. Default is 3 to fetch
+ areas 1-3. Valid options are 1,
+ 2, 3, 4.'
+ -d':alias for --data-area'
+ --config-file':JSON configuration file'
+ -j':alias for --config-file'
+ --source-file':data source <device> is binary
+ file containing log dump instead
+ of block or character device'
+ -s':alias for --source-file'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm parse-telemetry-log" _parse_telemetry_log
+ ;;
+ (clear-pcie-correctable-errors)
+ local _clear_pcie_correctable_errors
+ _clear_pcie_correctable_errors=(
+ --no-uuid':Skip UUID index search (UUID index not required for OCP 1.0)'
+ -n':alias for --no-uuid'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm clear-pcie-correctable-errors" _clear_pcie_correctable_errors
+ ;;
+ (clear-fw-activate-history)
+ local _clear_fw_activate_history
+ _clear_fw_activate_history=(
+ --no-uuid':Skip UUID index search (UUID index not required for OCP 1.0)'
+ -n':alias for --no-uuid'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm clear-fw-activate-history" _clear_fw_activate_history
+ ;;
+ (vs-fw-activate-history)
+ local _vs_fw_activate_history
+ _vs_fw_activate_history=(
+ --output-format':output format : normal | json'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm vs-fw-activate-history" _vs_fw_activate_history
+ ;;
+ (log-page-directory)
+ local _log_page_directory
+ _log_page_directory=(
+ --output-format':output format : normal | json'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm log-page-directory" _log_page_directory
+ ;;
+ (temp-stats)
+ local _temp_stats
+ _temp_stats=(
+ --raw-binary':dump output in binary format'
+ -b':alias for --raw-binary'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm temp-stats" _temp_stats
+ ;;
+ (vs-drive-info)
+ local _vs_drive_info
+ _vs_drive_info=(
+ --output-format':output format : normal | json'
+ -o':alias for --output-format'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm vs-drive-info" _vs_drive_info
;;
(*)
_files
@@ -2077,6 +2259,30 @@ _nvme () {
_arguments '*:: :->subcmds'
_describe -t commands "nvme ocp options" _ocp
;;
+ (solidigm)
+ local _solidigm
+ _solidigm=(
+ id-ctrl':Send NVMe Identify Controller'
+ smart-log-add':Retrieve Solidigm SMART Log'
+ vs-smart-add-log':Get SMART / health extended log (redirects to ocp plug-in)'
+ vs-internal-log':Retrieve Debug log binaries'
+ garbage-collect-log':Retrieve Garbage Collection Log'
+ market-log':Retrieve Market Log'
+ latency-tracking-log':Enable/Retrieve Latency tracking Log'
+ parse-telemetry-log':Parse Telemetry Log binary'
+ clear-pcie-correctable-errors':Clear PCIe Correctable Error Counters (redirects to ocp plug-in)'
+ clear-fw-activate-history':Clear firmware update history log (redirects to ocp plug-in)'
+ vs-fw-activate-history':Get firmware activation history log (redirects to ocp plug-in)'
+ log-page-directory':Retrieve log page directory'
+ temp-stats':Retrieve Temperature Statistics log'
+ vs-drive-info':Retrieve drive information'
+ cloud-SSDplugin-version':Prints plug-in OCP version'
+ version':Shows the program version'
+ help':Display this help'
+ )
+ _arguments '*:: :->subcmds'
+ _describe -t commands "nvme solidigm options" _solidigm
+ ;;
(help)
local _h
_h=( id-ctrl id-ns list-ns id-iocs create-ns delete-ns attach-ns detach-ns
@@ -2094,7 +2300,7 @@ _nvme () {
get-property write-zeroes write-uncor verify sanitize sanitize-log reset
subsystem-reset ns-rescan get-lba-status dsm discover connect-all connect
dim disconnect disconnect-all gen-hostnqn show-hostnqn dir-receive dir-send
- virt-mgmt rpmb version ocp
+ virt-mgmt rpmb version ocp solidigm
)
_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 5d62427..d862aab 100644
--- a/completions/bash-nvme-completion.sh
+++ b/completions/bash-nvme-completion.sh
@@ -1087,6 +1087,89 @@ plugin_sfx_opts () {
return 0
}
+plugin_solidigm_opts () {
+ local opts=""
+ local compargs=""
+
+ local nonopt_args=0
+ for (( i=0; i < ${#words[@]}-1; i++ )); do
+ if [[ ${words[i]} != -* ]]; then
+ let nonopt_args+=1
+ fi
+ done
+
+ if [ $nonopt_args -eq 3 ]; then
+ opts="/dev/nvme* "
+ fi
+
+ opts+=" "
+
+ case "$1" in
+ "id-ctrl")
+ opts+=" --raw-binary -b --human-readable -H \
+ --vendor-specific -v --output-format= -o \
+ --verbose -v "
+ ;;
+ "vs-smart-add-log")
+ opts+="--output-format= -o"
+ ;;
+ "garbage-collect-log")
+ opts+="--output-format= -o"
+ ;;
+ "vs-internal-log")
+ opts+=" --type= -t --namespace-id= -n \
+ --file-prefix= -p --verbose -v"
+ ;;
+ "latency-tracking-log")
+ opts+=" --enable -e --disable -d \
+ --read -r --write -w \
+ --type -t --output-format -o"
+ ;;
+ "clear-pcie-correctable-errors")
+ opts+=" --no-uuid -n"
+ ;;
+ "parse-telemetry-log")
+ opts+=" --host-generate -g --controller-init -c \
+ --data-area -d --config-file -j \
+ --source-file -s"
+ ;;
+ "clear-fw-activate-history")
+ opts+=" --no-uuid -n"
+ ;;
+ "vs-fw-activate-history")
+ opts+=" --output-format -o"
+ ;;
+ "log-page-directory")
+ opts+=" --output-format -o"
+ ;;
+ "vs-drive-info")
+ opts+=" "
+ ;;
+ "cloud-SSDplugin-version")
+ opts+=$NO_OPTS
+ ;;
+ "market-log")
+ opts+=" --raw-binary -b"
+ ;;
+ "smart-log-add")
+ opts+=" --namespace-id= -n --output-format -o"
+ ;;
+ "temp-stats")
+ opts+=" --raw-binary -b"
+ ;;
+ "version")
+ opts+=$NO_OPTS
+ ;;
+ "help")
+ opts+=$NO_OPTS
+ ;;
+ esac
+
+ COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) )
+
+ return 0
+}
+
plugin_transcend_opts () {
local opts=""
local compargs=""
@@ -1417,6 +1500,12 @@ _nvme_subcmds () {
[dera]="smart-log-add"
[sfx]="smart-log-add lat-stats get-bad-block query-cap \
change-cap set-feature get-feature"
+ [solidigm]="id-ctrl vs-smart-add-log garbage-collect-log \
+ vs-internal-log latency-tracking-log \
+ clear-pcie-correctable-errors parse-telemetry-log \
+ clear-fw-activate-history vs-fw-activate-history log-page-directory \
+ vs-drive-info cloud-SSDplugin-version market-log \
+ smart-log-add temp-stats version help"
[transcend]="healthvalue badblock"
[zns]="id-ctrl id-ns zone-mgmt-recv \
zone-mgmt-send report-zones close-zone \
@@ -1447,6 +1536,7 @@ _nvme_subcmds () {
[shannon]="plugin_shannon_opts"
[dera]="plugin_dera_opts"
[sfx]="plugin_sfx_opts"
+ [solidigm]="plugin_solidigm_opts"
[transcend]="plugin_transcend_opts"
[zns]="plugin_zns_opts"
[nvidia]="plugin_nvidia_opts"