2 PATH=/bin:/usr/bin:/sbin:/usr/sbin
4 # Script for registering Broadcom UART BT device
5 BT_UART_DEVICE=/dev/ttyAMA0
7 BT_MAC_FILE=/opt/etc/.bd_addr
9 BT_PLATFORM_DEFAULT_HCI_NAME="TIZEN-Mobile"
11 HCI_CONFIG=/usr/bin/hciconfig
12 HCI_ATTACH=/usr/bin/hciattach
14 if [ ! -e "$BT_UART_DEVICE" ]
16 mknod $BT_UART_DEVICE c 204 64
20 #echo "BT Mac addr generates randomly."
21 #MAC_PRE=$(echo "00:02:")
22 #MAC_POST=$(/usr/bin/openssl rand -hex 4 | sed 's/\(..\)/\1:/g; s/.$//')
23 #BT_MAC=$MAC_PRE$MAC_POST
24 echo "Generates BT MAC address based on serial number."
25 SERIAL=`cat /proc/device-tree/serial-number | cut -c9-`
26 B1=`echo $SERIAL | cut -c3-4`
27 B2=`echo $SERIAL | cut -c5-6`
28 B3=`echo $SERIAL | cut -c7-8`
29 BT_MAC=`printf b8:27:eb:%02x:%02x:%02x $((0x$B1 ^ 0xaa)) $((0x$B2 ^ 0xaa)) $((0x$B3 ^ 0xaa))`
32 PIMODEL=`cat /proc/device-tree/model | awk '{print $5}'`
35 if [ "$PIMODEL" = "B" ]
45 if [ ! -e "$BT_MAC_FILE" ]
49 echo $BT_MAC > ${BT_MAC_FILE}
51 BT_MAC=$(cat ${BT_MAC_FILE})
56 echo "Check for Bluetooth device status"
57 if ($HCI_CONFIG | grep hci); then
58 echo "Bluetooth device is UP"
61 echo "Bluetooth device is DOWN"
62 echo "Registering Bluetooth device"
64 # Attaching Broadcom device
68 if ($HCI_ATTACH $BT_UART_DEVICE $BT_CHIP_TYPE $UART_SPEED $FLOW_CONTROL nosleep $BT_MAC -t 5); then
71 echo "HCIATTACH success"
79 echo "HCIATTACH failed"