diff options
Diffstat (limited to 'completions')
-rw-r--r-- | completions/_nvme | 111 | ||||
-rw-r--r-- | completions/bash-nvme-completion.sh | 29 |
2 files changed, 138 insertions, 2 deletions
diff --git a/completions/_nvme b/completions/_nvme index e90fc42..159a4ab 100644 --- a/completions/_nvme +++ b/completions/_nvme @@ -104,6 +104,8 @@ _nvme () { 'show-topology:show subsystem topology' 'nvme-mi-recv:send a NVMe-MI receive command' 'nvme-mi-send:send a NVMe-MI send command' + 'get-reg:read and show the defined NVMe controller register' + 'set-seg:write and show the defined NVMe controller register' 'version:show the program version' 'ocp:OCP cloud SSD extensions' 'solidigm:Solidigm plug-in extensions' @@ -264,6 +266,29 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme ocp telemetry-string-log options" _telemetry_string_log ;; + (set-dssd-async-event-config) + local _set_dssd_async_event_config + _set_dssd_async_event_config=( + /dev/nvme':supply a device to use (required)' + --enable-panic-notices':Specifies whether an asynchronous event notification + is sent to the host for a panic event' + -e':alias for --enable-panic-notices' + --save':Specifies that the controller shall save the attribute' + -s':alias for --save' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme ocp set-dssd-async-event-config options" _set_dssd_async_event_config + ;; + (get-dssd-async-event-config) + local _get_dssd_async_event_config + _get_dssd_async_event_config=( + /dev/nvme':supply a device to use (required)' + --sel=':select from 0 - current, 1 - default, 2 - saved, 3 - supported' + -S':alias to --sel' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme ocp get-dssd-async-event-config options" _get_dssd_async_event_config + ;; (*) _files ;; @@ -445,6 +470,16 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme solidigm vs-drive-info" _vs_drive_info ;; + (set-telemetry-profile) + local _ocp_set_telemetry_profile_feature + _ocp_set_telemetry_profile_feature=( + /dev/nvme':supply a device to use (required)' + --telemetry-profile-select=':Telemetry Profile Select' + -t':alias for --telemetry-profile-select' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme ocp set-telemetry-profile options" _ocp_set_telemetry_profile_feature + ;; (*) _files ;; @@ -2234,6 +2269,81 @@ _nvme () { _arguments '*:: :->subcmds' _describe -t commands "nvme nvme-mi-send options" _nvme_mi_send ;; + (get-reg) + local _get_reg + _get_reg=( + --offset=':offset of the requested register' + -O':alias for --offset' + --human-readable':show register in readable format' + -H':alias for --human-readable' + --cap':CAP=0x0 register offset' + --vs':VS=0x8 register offset' + --cmbloc':CMBLOC=0x38 register offset' + --cmbsz':CMBSZ=0x3c register offset' + --bpinfo':BPINFO=0x40 register offset' + --cmbsts':CMBSTS=0x58 register offset' + --cmbebs':CMBEBS=0x5c register offset' + --cmbswtp':CMBSWTP=0x60 register offset' + --crto':CRTO=0x68 register offset' + --pmrcap':PMRCAP=0xe00 register offset' + --pmrsts':PMRSTS=0xe08 register offset' + --pmrebs':PMREBS=0xe0c register offset' + --pmrswtp':PMRSWTP=0xe10 register offset' + --intms':INTMS=0xc register offset' + --intmc':INTMC=0x10 register offset' + --cc':CC=0x14 register offset' + --csts':CSTS=0x1c register offset' + --nssr':NSSR=0x20 register offset' + --aqa':AQA=0x24 register offset' + --asq':ASQ=0x28 register offset' + --acq':ACQ=0x30 register offset' + --bprsel':BPRSEL=0x44 register offset' + --bpmbl':BPMBL=0x48 register offset' + --cmbmsc':CMBMSC=0x50 register offset' + --nssd':NSSD=0x64 register offset' + --pmrctl':PMRCTL=0xe04 register offset' + --pmrmscl':PMRMSCL=0xe14 register offset' + --pmrmscu':PMRMSCU=0xe18 register offset' + --output-format=':Output format: normal|json|binary' + -o ':alias for --output-format' + --verbose':Increase the information detail in the output.' + -v':alias for --verbose' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme get-reg options" _get_reg + ;; + (set-reg) + local _set_reg + _set_reg=( + --offset=':offset of the requested register' + -O':alias for --offset' + --value=':the value of the register to be set' + -V':alias for --value' + --mmio32':Access 64-bit registers as 2 32-bit' + -m':alias for --mmio32' + --intms=':INTMS=0xc register offset' + --intmc=':INTMC=0x10 register offset' + --cc=':CC=0x14 register offset' + --csts=':CSTS=0x1c register offset' + --nssr=':NSSR=0x20 register offset' + --aqa=':AQA=0x24 register offset' + --asq=':ASQ=0x28 register offset' + --acq=':ACQ=0x30 register offset' + --bprsel=':BPRSEL=0x44 register offset' + --bpmbl=':BPMBL=0x48 register offset' + --cmbmsc=':CMBMSC=0x50 register offset' + --nssd=':NSSD=0x64 register offset' + --pmrctl=':PMRCTL=0xe04 register offset' + --pmrmscl=':PMRMSCL=0xe14 register offset' + --pmrmscu=':PMRMSCU=0xe18 register offset' + --output-format=':Output format: normal|json|binary' + -o ':alias for --output-format' + --verbose':Increase the information detail in the output.' + -v':alias for --verbose' + ) + _arguments '*:: :->subcmds' + _describe -t commands "nvme set-reg options" _set_reg + ;; (version) local _version _version=( @@ -2255,6 +2365,7 @@ _nvme () { device-capability-log':Get Device capability log' set-dssd-power-state-feature':Set DSSD Power State' telemetry-string-log':Retrieve Telemetry string Log Page' + set-telemetry-profile':Set Telemetry Profile' ) _arguments '*:: :->subcmds' _describe -t commands "nvme ocp options" _ocp diff --git a/completions/bash-nvme-completion.sh b/completions/bash-nvme-completion.sh index d862aab..f5cdb43 100644 --- a/completions/bash-nvme-completion.sh +++ b/completions/bash-nvme-completion.sh @@ -453,6 +453,20 @@ nvme_list_opts () { opts+=" --opcode= -O --namespace-id= -n --data-len= -l \ --nmimt= -m --nmd0= -0 --nmd1= -1 --input-file= -i" ;; + "get-reg") + opts+=" --offset, -O --human-readable -H --cap --vs --cmbloc \ + --cmbsz --bpinfo --cmbsts --cmbebs --cmbswtp --crto \ + --pmrcap --pmrsts --pmrebs --pmrswtp --intms --intmc \ + --cc --csts --nssr --aqa --asq --acq --bprsel --bpmbl \ + --cmbmsc --nssd --pmrctl --pmrmscl --pmrmscu \ + --output-format -o --verbose -v" + ;; + "set-reg") + opts+=" --offset, -O --value= -V --mmio32 -m --intms= --intmc= \ + --cc= --csts= --nssr= --aqa= --asq= --acq= --bprsel= \ + --bpmbl= --cmbmsc= --nssd= --pmrctl= --pmrmscl= \ + --pmrmscu= --output-format= -o --verbose= -v" + ;; "version") opts+=$NO_OPTS ;; @@ -1444,6 +1458,15 @@ plugin_ocp_opts () { "telemetry-string-log") opts+=" --output-file= -o" ;; + "set-telemetry-profile") + opts+=" --telemetry-profile-select= -t" + ;; + "set-dssd-async-event-config") + opts+=" --enable-panic-notices -e --save -s" + ;; + "get-dssd-power-state-feature") + opts+=" --sel= -S" + ;; "help") opts+=$NO_OPTS ;; @@ -1519,7 +1542,9 @@ _nvme_subcmds () { clear-fw-activate-history eol-plp-failure-mode \ clear-pcie-correctable-error-counters \ vs-fw-activate-history device-capability-log \ - set-dssd-power-state-feature telemetry-string-log" + set-dssd-power-state-feature telemetry-string-log \ + set-telemetry-profile set-dssd-async-event-config \ + get-dssd-async-event-config" ) # Associative array mapping plugins to corresponding option completions @@ -1571,7 +1596,7 @@ _nvme_subcmds () { 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 \ - nvme-mi-recv nvme-mi-send" + nvme-mi-recv nvme-mi-send get-reg set-reg" # Add plugins: for plugin in "${!_plugin_subcmds[@]}"; do |