xref: /aosp_15_r20/external/flashrom/util/flashrom.bash-completion.tmpl (revision 0d6140be3aa665ecc836e8907834fcd3e3b018fc)
1*0d6140beSAndroid Build Coastguard Worker# Completion file for bash
2*0d6140beSAndroid Build Coastguard Worker#
3*0d6140beSAndroid Build Coastguard Worker# This file is part of the flashrom project.
4*0d6140beSAndroid Build Coastguard Worker#
5*0d6140beSAndroid Build Coastguard Worker# Copyright 2022 Alexander Goncharov <[email protected]>
6*0d6140beSAndroid Build Coastguard Worker#
7*0d6140beSAndroid Build Coastguard Worker# This program is free software; you can redistribute it and/or modify
8*0d6140beSAndroid Build Coastguard Worker# it under the terms of the GNU General Public License as published by
9*0d6140beSAndroid Build Coastguard Worker# the Free Software Foundation; either version 2 of the License, or
10*0d6140beSAndroid Build Coastguard Worker# (at your option) any later version.
11*0d6140beSAndroid Build Coastguard Worker#
12*0d6140beSAndroid Build Coastguard Worker# This program is distributed in the hope that it will be useful,
13*0d6140beSAndroid Build Coastguard Worker# but WITHOUT ANY WARRANTY; without even the implied warranty of
14*0d6140beSAndroid Build Coastguard Worker# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15*0d6140beSAndroid Build Coastguard Worker# GNU General Public License for more details.
16*0d6140beSAndroid Build Coastguard Worker#
17*0d6140beSAndroid Build Coastguard Worker
18*0d6140beSAndroid Build Coastguard Worker_flashrom()
19*0d6140beSAndroid Build Coastguard Worker{
20*0d6140beSAndroid Build Coastguard Worker	local cur prev OPTS
21*0d6140beSAndroid Build Coastguard Worker	COMPREPLY=()
22*0d6140beSAndroid Build Coastguard Worker	cur="${COMP_WORDS[COMP_CWORD]}"
23*0d6140beSAndroid Build Coastguard Worker	prev="${COMP_WORDS[COMP_CWORD-1]}"
24*0d6140beSAndroid Build Coastguard Worker	case $prev in
25*0d6140beSAndroid Build Coastguard Worker		'-r'|'--read'|'-w'|'--write'|'-v'|'--verify'|'-l'|'--layout'| \
26*0d6140beSAndroid Build Coastguard Worker		'--fmap-file'|'-o'|'--output'|'--flash-contents')
27*0d6140beSAndroid Build Coastguard Worker			local IFS=$'\n'
28*0d6140beSAndroid Build Coastguard Worker			compopt -o filenames
29*0d6140beSAndroid Build Coastguard Worker			COMPREPLY=( $(compgen -f -- $cur) )
30*0d6140beSAndroid Build Coastguard Worker			return 0
31*0d6140beSAndroid Build Coastguard Worker			;;
32*0d6140beSAndroid Build Coastguard Worker		'-c'|'--chip'|'--wp-range'|'--wp-region'|'-i'|'--include')
33*0d6140beSAndroid Build Coastguard Worker			return 0
34*0d6140beSAndroid Build Coastguard Worker			;;
35*0d6140beSAndroid Build Coastguard Worker		'-p'|'--programmer')
36*0d6140beSAndroid Build Coastguard Worker			COMPREPLY=( $(compgen -W "@PROGRAMMERS@" -- $cur) )
37*0d6140beSAndroid Build Coastguard Worker			return 0
38*0d6140beSAndroid Build Coastguard Worker			;;
39*0d6140beSAndroid Build Coastguard Worker		'-h'|'--help'|'-R'|'--version'|'-L'|'--list-supported')
40*0d6140beSAndroid Build Coastguard Worker			return 0
41*0d6140beSAndroid Build Coastguard Worker			;;
42*0d6140beSAndroid Build Coastguard Worker	esac
43*0d6140beSAndroid Build Coastguard Worker	OPTS="--help
44*0d6140beSAndroid Build Coastguard Worker		--version
45*0d6140beSAndroid Build Coastguard Worker		--read
46*0d6140beSAndroid Build Coastguard Worker		--write
47*0d6140beSAndroid Build Coastguard Worker		--verify
48*0d6140beSAndroid Build Coastguard Worker		--erase
49*0d6140beSAndroid Build Coastguard Worker		--verbose
50*0d6140beSAndroid Build Coastguard Worker		--chip
51*0d6140beSAndroid Build Coastguard Worker		--force
52*0d6140beSAndroid Build Coastguard Worker		--noverify
53*0d6140beSAndroid Build Coastguard Worker		--noverify-all
54*0d6140beSAndroid Build Coastguard Worker		--extract
55*0d6140beSAndroid Build Coastguard Worker		--layout
56*0d6140beSAndroid Build Coastguard Worker		--wp-disable
57*0d6140beSAndroid Build Coastguard Worker		--wp-enable
58*0d6140beSAndroid Build Coastguard Worker		--wp-list
59*0d6140beSAndroid Build Coastguard Worker		--wp-status
60*0d6140beSAndroid Build Coastguard Worker		--wp-range
61*0d6140beSAndroid Build Coastguard Worker		--wp-region
62*0d6140beSAndroid Build Coastguard Worker		--flash-name
63*0d6140beSAndroid Build Coastguard Worker		--flash-size
64*0d6140beSAndroid Build Coastguard Worker		--fmap
65*0d6140beSAndroid Build Coastguard Worker		--fmap-file
66*0d6140beSAndroid Build Coastguard Worker		--ifd
67*0d6140beSAndroid Build Coastguard Worker		--include
68*0d6140beSAndroid Build Coastguard Worker		--output
69*0d6140beSAndroid Build Coastguard Worker		--flash-contents
70*0d6140beSAndroid Build Coastguard Worker		--list-supported
71*0d6140beSAndroid Build Coastguard Worker		--progress
72*0d6140beSAndroid Build Coastguard Worker		--programmer"
73*0d6140beSAndroid Build Coastguard Worker	COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
74*0d6140beSAndroid Build Coastguard Worker	return 0
75*0d6140beSAndroid Build Coastguard Worker}
76*0d6140beSAndroid Build Coastguard Worker
77*0d6140beSAndroid Build Coastguard Workercomplete -F _flashrom flashrom
78