xref: /aosp_15_r20/external/vboot_reference/futility/README.md (revision 8617a60d3594060b7ecbd21bc622a7c14f3cf2bc)
1*8617a60dSAndroid Build Coastguard Worker% FUTILITY(1) Version 1.0 | Unified Firmware Utility Program
2*8617a60dSAndroid Build Coastguard Worker
3*8617a60dSAndroid Build Coastguard Worker[TOC]
4*8617a60dSAndroid Build Coastguard Worker
5*8617a60dSAndroid Build Coastguard WorkerNAME
6*8617a60dSAndroid Build Coastguard Worker============
7*8617a60dSAndroid Build Coastguard Worker
8*8617a60dSAndroid Build Coastguard Worker**futility** - Futility is a unified firmware tool that provides a variety of
9*8617a60dSAndroid Build Coastguard Workerfirmware peripheral functions and subcommands.
10*8617a60dSAndroid Build Coastguard Worker
11*8617a60dSAndroid Build Coastguard WorkerSYNOPSIS
12*8617a60dSAndroid Build Coastguard Worker========
13*8617a60dSAndroid Build Coastguard Worker
14*8617a60dSAndroid Build Coastguard Worker- **futility** \[options] COMMAND \[args...]
15*8617a60dSAndroid Build Coastguard Worker- **futility** **help** COMMAND
16*8617a60dSAndroid Build Coastguard Worker
17*8617a60dSAndroid Build Coastguard WorkerDESCRIPTION
18*8617a60dSAndroid Build Coastguard Worker===========
19*8617a60dSAndroid Build Coastguard Worker
20*8617a60dSAndroid Build Coastguard WorkerThis is the unified firmware utility, which contains various of distinct verified
21*8617a60dSAndroid Build Coastguard Workerboot tools as subcommands.
22*8617a60dSAndroid Build Coastguard Worker
23*8617a60dSAndroid Build Coastguard WorkerOptions
24*8617a60dSAndroid Build Coastguard Worker-------
25*8617a60dSAndroid Build Coastguard Worker
26*8617a60dSAndroid Build Coastguard Worker### Global Options:
27*8617a60dSAndroid Build Coastguard Worker
28*8617a60dSAndroid Build Coastguard Worker\--vb1
29*8617a60dSAndroid Build Coastguard Worker
30*8617a60dSAndroid Build Coastguard Worker:   Use only vboot v1.0 binary formats.
31*8617a60dSAndroid Build Coastguard Worker
32*8617a60dSAndroid Build Coastguard Worker\--vb21
33*8617a60dSAndroid Build Coastguard Worker
34*8617a60dSAndroid Build Coastguard Worker:   Use only vboot v2.1 binary formats.
35*8617a60dSAndroid Build Coastguard Worker
36*8617a60dSAndroid Build Coastguard Worker\--debug
37*8617a60dSAndroid Build Coastguard Worker
38*8617a60dSAndroid Build Coastguard Worker:   Be noisy about what's going on.
39*8617a60dSAndroid Build Coastguard Worker
40*8617a60dSAndroid Build Coastguard Worker
41*8617a60dSAndroid Build Coastguard Worker### Commands
42*8617a60dSAndroid Build Coastguard Worker
43*8617a60dSAndroid Build Coastguard Workercreate
44*8617a60dSAndroid Build Coastguard Worker
45*8617a60dSAndroid Build Coastguard Worker:   Create a keypair from an RSA .pem file.
46*8617a60dSAndroid Build Coastguard Worker
47*8617a60dSAndroid Build Coastguard Workerdump_fmap
48*8617a60dSAndroid Build Coastguard Worker
49*8617a60dSAndroid Build Coastguard Worker:   Display FMAP contents from a firmware image.
50*8617a60dSAndroid Build Coastguard Worker
51*8617a60dSAndroid Build Coastguard Workerdump_kernel_config
52*8617a60dSAndroid Build Coastguard Worker
53*8617a60dSAndroid Build Coastguard Worker:   Prints the kernel command line.
54*8617a60dSAndroid Build Coastguard Worker
55*8617a60dSAndroid Build Coastguard Workerflash
56*8617a60dSAndroid Build Coastguard Worker
57*8617a60dSAndroid Build Coastguard Worker:   Manage AP SPI flash properties and writeprotect configuration.
58*8617a60dSAndroid Build Coastguard Worker
59*8617a60dSAndroid Build Coastguard Workergbb, gbb_utility
60*8617a60dSAndroid Build Coastguard Worker
61*8617a60dSAndroid Build Coastguard Worker:   Manipulate the Google Binary Block (GBB).
62*8617a60dSAndroid Build Coastguard Worker    See [cmd_gbb_utility](./docs/cmd_gbb_utility.md) for detailed information.
63*8617a60dSAndroid Build Coastguard Worker
64*8617a60dSAndroid Build Coastguard Worker    Examples:
65*8617a60dSAndroid Build Coastguard Worker
66*8617a60dSAndroid Build Coastguard Worker        futility gbb --get $FILE
67*8617a60dSAndroid Build Coastguard Worker        (dut) futility gbb --get --flash
68*8617a60dSAndroid Build Coastguard Worker        (host) futility gbb --get --servo
69*8617a60dSAndroid Build Coastguard Worker        (host) futility gbb --set --flags=$FLAGS --servo
70*8617a60dSAndroid Build Coastguard Worker
71*8617a60dSAndroid Build Coastguard Workergscvd
72*8617a60dSAndroid Build Coastguard Worker
73*8617a60dSAndroid Build Coastguard Worker:   Create RO verification structure.
74*8617a60dSAndroid Build Coastguard Worker
75*8617a60dSAndroid Build Coastguard Workerhelp
76*8617a60dSAndroid Build Coastguard Worker
77*8617a60dSAndroid Build Coastguard Worker:   Show a bit of help.
78*8617a60dSAndroid Build Coastguard Worker
79*8617a60dSAndroid Build Coastguard Workerload_fmap
80*8617a60dSAndroid Build Coastguard Worker
81*8617a60dSAndroid Build Coastguard Worker:   Replace the contents of specified FMAP areas.
82*8617a60dSAndroid Build Coastguard Worker
83*8617a60dSAndroid Build Coastguard Workerpcr
84*8617a60dSAndroid Build Coastguard Worker
85*8617a60dSAndroid Build Coastguard Worker:   Simulate a TPM PCR extension operation.
86*8617a60dSAndroid Build Coastguard Worker
87*8617a60dSAndroid Build Coastguard Workerread
88*8617a60dSAndroid Build Coastguard Worker
89*8617a60dSAndroid Build Coastguard Worker:   Read AP firmware.
90*8617a60dSAndroid Build Coastguard Worker
91*8617a60dSAndroid Build Coastguard Worker    Examples:
92*8617a60dSAndroid Build Coastguard Worker
93*8617a60dSAndroid Build Coastguard Worker        (dut) futility read $IMG_OUT
94*8617a60dSAndroid Build Coastguard Worker        (host) futility read --servo $IMG_OUT
95*8617a60dSAndroid Build Coastguard Worker        (host) futility read --ccd_without_servod -r RO_VPD $IMG_OUT
96*8617a60dSAndroid Build Coastguard Worker
97*8617a60dSAndroid Build Coastguard Workershow
98*8617a60dSAndroid Build Coastguard Worker
99*8617a60dSAndroid Build Coastguard Worker:   Display the content of various binary components.
100*8617a60dSAndroid Build Coastguard Worker
101*8617a60dSAndroid Build Coastguard Workersign
102*8617a60dSAndroid Build Coastguard Worker
103*8617a60dSAndroid Build Coastguard Worker:   Sign / resign various binary components.
104*8617a60dSAndroid Build Coastguard Worker
105*8617a60dSAndroid Build Coastguard Workerupdate
106*8617a60dSAndroid Build Coastguard Worker
107*8617a60dSAndroid Build Coastguard Worker:   Update system firmware.
108*8617a60dSAndroid Build Coastguard Worker
109*8617a60dSAndroid Build Coastguard Worker    Examples:
110*8617a60dSAndroid Build Coastguard Worker
111*8617a60dSAndroid Build Coastguard Worker        (dut) futility update -i $IMG
112*8617a60dSAndroid Build Coastguard Worker        (host) futility update --wp 0 -i $IMG --servo
113*8617a60dSAndroid Build Coastguard Worker        (host) futility update --force -i $IMG --servo
114*8617a60dSAndroid Build Coastguard Worker
115*8617a60dSAndroid Build Coastguard Workervbutil_firmware
116*8617a60dSAndroid Build Coastguard Worker
117*8617a60dSAndroid Build Coastguard Worker:   Verified boot firmware utility.
118*8617a60dSAndroid Build Coastguard Worker
119*8617a60dSAndroid Build Coastguard Workervbutil_kernel
120*8617a60dSAndroid Build Coastguard Worker
121*8617a60dSAndroid Build Coastguard Worker:   Creates, signs, and verifies the kernel partition.
122*8617a60dSAndroid Build Coastguard Worker
123*8617a60dSAndroid Build Coastguard Workervbutil_key
124*8617a60dSAndroid Build Coastguard Worker
125*8617a60dSAndroid Build Coastguard Worker:   Wraps RSA keys with vboot headers.
126*8617a60dSAndroid Build Coastguard Worker
127*8617a60dSAndroid Build Coastguard Workervbutil_keyblock
128*8617a60dSAndroid Build Coastguard Worker
129*8617a60dSAndroid Build Coastguard Worker:   Creates, signs, and verifies a keyblock.
130*8617a60dSAndroid Build Coastguard Worker
131*8617a60dSAndroid Build Coastguard Workerverify
132*8617a60dSAndroid Build Coastguard Worker
133*8617a60dSAndroid Build Coastguard Worker:   Verify the signatures of various binary components. This does not verify GSCVD contents.
134*8617a60dSAndroid Build Coastguard Worker
135*8617a60dSAndroid Build Coastguard Workerversion
136*8617a60dSAndroid Build Coastguard Worker
137*8617a60dSAndroid Build Coastguard Worker:   Show the futility source revision and build date.
138