xref: /openbsd-src/usr.sbin/fw_update/fw_update.8 (revision 14dcac1e21112136e6ca9511b066cb7353e5f80d)
1.\" $OpenBSD: fw_update.8,v 1.6 2024/11/09 02:19:48 afresh1 Exp $
2.\"
3.\" Copyright (c) 2011 Alexander Hall <alexander@beard.se>
4.\"
5.\" Permission to use, copy, modify, and distribute this software for any
6.\" purpose with or without fee is hereby granted, provided that the above
7.\" copyright notice and this permission notice appear in all copies.
8.\"
9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\"
17.Dd $Mdocdate: November 9 2024 $
18.Dt FW_UPDATE 8
19.Os
20.Sh NAME
21.Nm fw_update
22.Nd install non-free firmware
23.Sh SYNOPSIS
24.Nm
25.Op Fl adFlnv
26.Op Fl p Ar path
27.Op Ar driver | file ...
28.Sh DESCRIPTION
29The
30.Nm
31utility installs, updates, or deletes firmware for
32.Ar driver
33from the Internet.
34By default,
35.Nm
36tries to determine which firmware are needed.
37.Pp
38Since firmware with an acceptable license is already present in
39.Ox ,
40.Nm
41exists purely to deal with firmware that may not be freely
42distributed with
43.Ox .
44.Pp
45The options are as follows:
46.Bl -tag -width Ds
47.It Fl a
48Install or update firmware for all drivers.
49It is an error to specify this option with any
50.Ar driver
51arguments.
52.It Fl d
53Delete firmware for
54.Ar driver .
55If used without parameters, delete all firmware that is not required by
56a driver.
57If used in conjunction with
58.Fl a ,
59delete firmware for all drivers.
60.It Fl F
61Download SHA256.sig and firmware .tgz to the current directory.
62.It Fl l
63List drivers without installing.
64With
65.Fl F
66lists the full path to the files that will be downloaded.
67.It Fl n
68Dry run.
69Do not actually install or update any firmware;
70just report the steps that would be taken.
71.It Fl p Ar path
72Use
73.Ar path ,
74either a local directory or a URL,
75as the source for firmware instead of the default location.
76.It Fl v
77Turn on verbose output.
78This flag can be specified multiple times for increased verbosity.
79.El
80.Pp
81Firmware is downloaded from release-specific directories at
82.Lk http://firmware.openbsd.org/firmware/
83unless overridden with
84.Fl p .
85.Sh ENVIRONMENT
86.Bl -tag -width DESTDIRXXX
87.It Ev DESTDIR
88The root of the system to install into.
89.El
90.Sh FILES
91.Bl -tag -width Ds
92.It Pa ${DESTDIR}/usr/share/misc/firmware_patterns
93A list of patterns used to detect needed firmware from the
94.Xr dmesg 8 .
95.It Pa ${DESTDIR}/etc/signify/openbsd-XX-fw.pub
96Used with
97.Xr signify 1
98to verify downloaded firmware files.
99.El
100.Sh SEE ALSO
101.Xr pkg_add 1 ,
102.Xr dmesg 8
103.Sh AUTHORS
104.An -nosplit
105The
106.Nm
107program was designed by
108.An Alexander Hall Aq Mt alexander@beard.se ;
109it was then replaced with a perl version by
110.An Marc Espie Aq Mt espie@openbsd.org .
111It was rewritten to be able to be run from the installer by
112.An Andrew Hewus Fresh Aq Mt afresh1@openbsd.org .
113