home | help
NG_BT3C(4)		     Kernel Interfaces Manual		      NG_BT3C(4)

NAME
     ng_bt3c -- Netgraph node type that is also a 3Com Bluetooth PC card driver

SYNOPSIS
     #include <sys/types.h>
     #include <netgraph/bluetooth/include/ng_bt3c.h>

DESCRIPTION
     The  btccc  node  type is both a persistent Netgraph node type and a driver
     for 3Com Bluetooth PC card (3CRWB6096-HP).  It implements a  Bluetooth  HCI
     UART  transport layer as per chapter H4 of the Bluetooth Specification Book
     v1.1.  A new node is created when the card is plugged.

     In order to use the card one MUST download firmware first.   Due  to  copy-
     right  issues  I  will  no  longer  provide  firmware with the driver.  The
     firmware can be obtained from the Windows driver package that can be  down-
     loaded  from  the	3COM  web  site  at  no  charge.   The	firmware name is
     BT3CPCC.BIN.  To load firmware into the card, use bt3cfw(8).   I  am  using
     original firmware that came with the card on CD-ROM.

	   MD5 (BT3CPCC.BIN) = 36170fda56ea9fdbf1702c966f8a97f1

     For OLDCARD systems the entry in pccard.conf(5) might look like this

	   # 3Com 3CRWB60-A Bluetooth PC Card
	   card "3COM" "3CRWB60-A" "Bluetooth PC Card"
		   config  auto    "btccc" ?
		   insert  /usr/sbin/bt3cfw -n $device -f /etc/BT3CPCC.bin

     Do not forget to load module and SIGHUP pccardd(8).

     The node has a single hook called hook.  Incoming bytes received on the de-
     vice  are re-assembled into HCI frames (according to the length).	Full HCI
     frames are sent out on the hook.  HCI frames received on hook are transmit-
     ted out.  No modification to the data is performed in either direction.

HOOKS
     This node type supports the following hooks:

     hook    single HCI frame contained in single mbuf structure.

CONTROL MESSAGES
     This node type supports the generic control messages, plus the following:

     NGM_BT3C_NODE_GET_STATE
	     Returns current receiving state for the node.

     NGM_BT3C_NODE_GET_DEBUG
	     Returns an integer containing the current debug level for the node.

     NGM_BT3C_NODE_SET_DEBUG
	     This command takes an integer argument and sets current debug level
	     for the node.

     NGM_BT3C_NODE_GET_QLEN
	     This command takes a parameter that specifies queue number and  re-
	     turns current length of the queue for the node.

     NGM_BT3C_NODE_SET_QLEN
	     This  command  takes  two	parameters that specify queue number and
	     maximum length of the queue and sets maximum length  of  the  queue
	     for the node.

     NGM_BT3C_NODE_GET_STAT
	     Returns various statistic information for the node, such as: number
	     of  bytes (frames) sent, number of bytes (frames) received and num-
	     ber of input (output) errors.

     NGM_BT3C_NODE_RESET_STAT
	     Reset all statistic counters to zero.

     NGM_BT3C_NODE_DOWNLOAD_FIRMWARE
	     Download card firmware.

SHUTDOWN
     This node shuts down when the corresponding card is un-plugged.

BUGS
     The driver is based on  information  obtained  from  Jose	Orlando  Pereira
     <jop@di.uminho.pt> and disassembled W2K driver.

SEE ALSO
     cardbus(4),  netgraph(4),	pccbb(4),  pcic(4),  pccard.conf(5),  bt3cfw(8),
     ngctl(8), pccardc(8), pccardd(8)

HISTORY
     The btccc node type was implemented in FreeBSD 5.0.

AUTHORS
     Maksim Yevmenkin <m_evmenkin@yahoo.com>

FreeBSD 5.2.1			  June 14, 2002 		      NG_BT3C(4)

home | help