xref: /freebsd/libexec/rc/rc.d/ubthidhci (revision 0696600c41600d80bcd993bfd8e675d0ae6951fe)
1*0696600cSBjoern A. Zeeb#!/bin/sh
2*0696600cSBjoern A. Zeeb#
3*0696600cSBjoern A. Zeeb# $FreeBSD$
4*0696600cSBjoern A. Zeeb#
5*0696600cSBjoern A. Zeeb
6*0696600cSBjoern A. Zeeb# PROVIDE: ubthidhci
7*0696600cSBjoern A. Zeeb# REQUIRE: DAEMON
8*0696600cSBjoern A. Zeeb# BEFORE: bluetooth
9*0696600cSBjoern A. Zeeb# KEYWORD: nojail shutdown
10*0696600cSBjoern A. Zeeb
11*0696600cSBjoern A. Zeeb. /etc/rc.subr
12*0696600cSBjoern A. Zeeb
13*0696600cSBjoern A. Zeebname="ubthidhci"
14*0696600cSBjoern A. Zeebrcvar="ubthidhci_enable"
15*0696600cSBjoern A. Zeebcommand="/usr/sbin/usbconfig"
16*0696600cSBjoern A. Zeebstart_precmd="ubthidhci_prestart"
17*0696600cSBjoern A. Zeeb
18*0696600cSBjoern A. Zeebubthidhci_prestart()
19*0696600cSBjoern A. Zeeb{
20*0696600cSBjoern A. Zeeb
21*0696600cSBjoern A. Zeeb	if [ -z ${ubthidhci_busnum} ]; then
22*0696600cSBjoern A. Zeeb		warn ubthidhci_busnum is not set
23*0696600cSBjoern A. Zeeb		return 1
24*0696600cSBjoern A. Zeeb	fi
25*0696600cSBjoern A. Zeeb	if [ -z ${ubthidhci_addr} ]; then
26*0696600cSBjoern A. Zeeb		warn ubthidhci_addr is not set
27*0696600cSBjoern A. Zeeb		return 1
28*0696600cSBjoern A. Zeeb	fi
29*0696600cSBjoern A. Zeeb}
30*0696600cSBjoern A. Zeeb
31*0696600cSBjoern A. Zeebload_rc_config $name
32*0696600cSBjoern A. Zeeb#
33*0696600cSBjoern A. Zeeb# We discard the output because:
34*0696600cSBjoern A. Zeeb# 1) we don't want it to show up during boot; and
35*0696600cSBjoern A. Zeeb# 2) the request usually returns an error, but that doesn't mean it failed
36*0696600cSBjoern A. Zeeb#
37*0696600cSBjoern A. Zeeb# NB: 0x40 is UT_VENDOR
38*0696600cSBjoern A. Zeebcommand_args="-u ${ubthidhci_busnum} -a ${ubthidhci_addr} do_request 0x40 0 0 0 0 > /dev/null 2>&1"
39*0696600cSBjoern A. Zeeb
40*0696600cSBjoern A. Zeebrun_rc_command "$1"
41