Add rc.d/ubthidhci. This small script calls usbconfig(1) to change a USB

Bluetooth controller from HID mode to HCI mode.

MFC after:	1 week
This commit is contained in:
Rui Paulo 2010-04-09 17:32:38 +00:00
parent c4597afc3f
commit c6c608b33d
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=206427
3 changed files with 67 additions and 1 deletions

View File

@ -436,6 +436,11 @@ rfcomm_pppd_server_two_channel="3" # Override local channel for 'two'
#rfcomm_pppd_server_two_register_sp="NO" # Override SP and DUN register
#rfcomm_pppd_server_two_register_dun="NO" # for 'two'
#ubthidhci_enable="YES" # Switch an USB BT controller present on
#ubthidhci_busnum="3" # bus 3 and addr 2 from HID mode to HCI mode.
#ubthidhci_addr="2" # Check usbconfig list to find the correct
# numbers for your system.
### Miscellaneous network options: ###
icmp_bmcastecho="NO" # respond to broadcast ping packets

40
etc/rc.d/ubthidhci Executable file
View File

@ -0,0 +1,40 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: ubthidhci
# REQUIRE: DAEMON
# BEFORE: bluetooth
# KEYWORD: nojail shutdown
. /etc/rc.subr
name="ubthidhci"
command="/usr/sbin/usbconfig"
rcvar=`set_rcvar`
start_precmd="ubthidhci_prestart"
ubthidhci_prestart()
{
if [ -z ${ubthidhci_busnum} ]; then
warn ubthidhci_busnum is not set
return 1
fi
if [ -z ${ubthidhci_addr} ]; then
warn ubthidhci_addr is not set
return 1
fi
}
load_rc_config $name
#
# We discard the output because:
# 1) we don't want it to show up during boot; and
# 2) the request usually returns an error, but that doesn't mean it failed
#
# NB: 0x40 is UT_VENDOR
command_args="-u ${ubthidhci_busnum} -a ${ubthidhci_addr} do_request 0x40 0 0 0 0 > /dev/null 2>&1"
run_rc_command "$1"

View File

@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
.Dd April 8, 2010
.Dd April 09, 2010
.Dt RC.CONF 5
.Os
.Sh NAME
@ -4268,6 +4268,26 @@ if it should register Dial-Up Networking service on the speficied
RFCOMM channel.
Default
.Dq Li NO .
.It Va ubthidhci_enable
.Pq Vt bool
If set to
.Dq Li YES ,
change the USB Bluetooth controller from HID mode to HCI mode.
You also need to specify the location of USB Bluetooth controller with the
.Va ubthidhci_busnum
and
.Va ubthidhci_addr
variables.
.It Va ubthidhci_busnum
Bus number where the USB Bluetooth controller is located.
Check the output of
.Xr usbconfig 1
on your system to find this information.
.It Va ubthidhci_addr
Bus address of the USB Bluetooth controller.
Check the output of
.Xr usbconfig 1
on your system to find this information.
.El
.Sh FILES
.Bl -tag -width ".Pa /etc/defaults/rc.conf" -compact
@ -4283,6 +4303,7 @@ Default
.Xr kbdcontrol 1 ,
.Xr makewhatis 1 ,
.Xr sh 1 ,
.Xr usbconfig 1 ,
.Xr vi 1 ,
.Xr vidcontrol 1 ,
.Xr bridge 4 ,