1*5036d965SVladimir Kondratyev.\" Copyright (c) 2013, 2016 Adrian Chadd <adrian@freebsd.org> 2*5036d965SVladimir Kondratyev.\" Copyright (c) 2019 Vladimir Kondratyev <wulf@FreeBSD.org> 3*5036d965SVladimir Kondratyev.\" Copyright (c) 2023 Future Crew LLC. 4*5036d965SVladimir Kondratyev.\" 5*5036d965SVladimir Kondratyev.\" Redistribution and use in source and binary forms, with or without 6*5036d965SVladimir Kondratyev.\" modification, are permitted provided that the following conditions 7*5036d965SVladimir Kondratyev.\" are met: 8*5036d965SVladimir Kondratyev.\" 1. Redistributions of source code must retain the above copyright 9*5036d965SVladimir Kondratyev.\" notice, this list of conditions and the following disclaimer. 10*5036d965SVladimir Kondratyev.\" 2. Redistributions in binary form must reproduce the above copyright 11*5036d965SVladimir Kondratyev.\" notice, this list of conditions and the following disclaimer in the 12*5036d965SVladimir Kondratyev.\" documentation and/or other materials provided with the distribution. 13*5036d965SVladimir Kondratyev.\" 14*5036d965SVladimir Kondratyev.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*5036d965SVladimir Kondratyev.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*5036d965SVladimir Kondratyev.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*5036d965SVladimir Kondratyev.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18*5036d965SVladimir Kondratyev.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*5036d965SVladimir Kondratyev.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*5036d965SVladimir Kondratyev.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*5036d965SVladimir Kondratyev.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*5036d965SVladimir Kondratyev.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*5036d965SVladimir Kondratyev.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*5036d965SVladimir Kondratyev.\" SUCH DAMAGE. 25*5036d965SVladimir Kondratyev.\" 26*5036d965SVladimir Kondratyev.Dd July 19, 2023 27*5036d965SVladimir Kondratyev.Dt RTLBTFW 8 28*5036d965SVladimir Kondratyev.Os 29*5036d965SVladimir Kondratyev.Sh NAME 30*5036d965SVladimir Kondratyev.Nm rtlbtfw 31*5036d965SVladimir Kondratyev.Nd firmware download utility for Realtek 87XX/88XX chip based Bluetooth 32*5036d965SVladimir KondratyevUSB devices 33*5036d965SVladimir Kondratyev.Sh SYNOPSIS 34*5036d965SVladimir Kondratyev.Nm 35*5036d965SVladimir Kondratyev.Fl d Ar device_name 36*5036d965SVladimir Kondratyev.Fl f Ar firmware_path 37*5036d965SVladimir Kondratyev.Nm 38*5036d965SVladimir Kondratyev.Fl h 39*5036d965SVladimir Kondratyev.Sh DESCRIPTION 40*5036d965SVladimir KondratyevThe 41*5036d965SVladimir Kondratyev.Nm 42*5036d965SVladimir Kondratyevutility downloads the specified firmware file to the specified 43*5036d965SVladimir Kondratyev.Xr ugen 4 44*5036d965SVladimir Kondratyevdevice. 45*5036d965SVladimir Kondratyev.Pp 46*5036d965SVladimir KondratyevThis utility will 47*5036d965SVladimir Kondratyev.Em only 48*5036d965SVladimir Kondratyevwork with Realtek 87XX/88XX chip based Bluetooth USB devices and some of 49*5036d965SVladimir Kondratyevtheir successors. 50*5036d965SVladimir KondratyevThe identification is currently based on USB vendor ID/product ID pair and 51*5036d965SVladimir Kondratyevinterface class. 52*5036d965SVladimir KondratyevFor Realtek devices the vendor ID should be 0x0bda 53*5036d965SVladimir Kondratyev.Pq Dv USB_VENDOR_REALTEK 54*5036d965SVladimir Kondratyevand the 0-th interface class/subclass/protocol should be a Bluetooth RF 55*5036d965SVladimir KondratyevWireless Controller. 56*5036d965SVladimir KondratyevNon-Realtek devices are identified based on USB vendor ID/product ID pair. 57*5036d965SVladimir Kondratyev.Pp 58*5036d965SVladimir KondratyevFirmware files are available in the 59*5036d965SVladimir Kondratyev.Pa comms/rtlbt-firmware 60*5036d965SVladimir Kondratyevport. 61*5036d965SVladimir Kondratyev.Pp 62*5036d965SVladimir KondratyevThe 63*5036d965SVladimir Kondratyev.Nm 64*5036d965SVladimir Kondratyevutility will query the device to determine which firmware image and board 65*5036d965SVladimir Kondratyevconfiguration to load in at runtime. 66*5036d965SVladimir Kondratyev.Pp 67*5036d965SVladimir KondratyevThe options are as follows: 68*5036d965SVladimir Kondratyev.Bl -tag -width indent 69*5036d965SVladimir Kondratyev.It Fl D 70*5036d965SVladimir KondratyevEnable verbose debugging. 71*5036d965SVladimir Kondratyev.It Fl d Ar device_name 72*5036d965SVladimir KondratyevSpecify 73*5036d965SVladimir Kondratyev.Xr ugen 4 74*5036d965SVladimir Kondratyevdevice name. 75*5036d965SVladimir Kondratyev.It Fl I 76*5036d965SVladimir KondratyevEnable informational debugging. 77*5036d965SVladimir Kondratyev.It Fl f Ar firmware_path 78*5036d965SVladimir KondratyevSpecify the directory containing the firmware files to search and upload. 79*5036d965SVladimir Kondratyev.It Fl h 80*5036d965SVladimir KondratyevDisplay usage message and exit. 81*5036d965SVladimir Kondratyev.El 82*5036d965SVladimir Kondratyev.Sh EXIT STATUS 83*5036d965SVladimir Kondratyev.Ex -std 84*5036d965SVladimir Kondratyev.Sh SEE ALSO 85*5036d965SVladimir Kondratyev.Xr libusb 3 , 86*5036d965SVladimir Kondratyev.Xr ng_ubt 4 , 87*5036d965SVladimir Kondratyev.Xr ugen 4 , 88*5036d965SVladimir Kondratyev.Xr devd 8 89*5036d965SVladimir Kondratyev.Sh AUTHORS 90*5036d965SVladimir Kondratyev.Nm 91*5036d965SVladimir Kondratyevis based on 92*5036d965SVladimir Kondratyev.Xr ath3kfw 8 93*5036d965SVladimir Kondratyevutility used as firmware downloader template and on Linux btrtl driver 94*5036d965SVladimir Kondratyevsource code. 95*5036d965SVladimir KondratyevIt is written by 96*5036d965SVladimir Kondratyev.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org 97*5036d965SVladimir Kondratyevunder sponsorship from Future Crew LLC. 98*5036d965SVladimir Kondratyev.Sh BUGS 99*5036d965SVladimir KondratyevMost likely. 100*5036d965SVladimir KondratyevPlease report if found. 101