From 661daac545c3fa3dee8b997e8e80a07d75c47c29 Mon Sep 17 00:00:00 2001 From: Angell Fear Date: Fri, 3 Sep 2010 01:08:00 +0600 Subject: [PATCH] BT scripts --- BT-SCRIPT/bluetooth | 67 +++++++++++++++++++++++++++++++++++++++++++++ BT-SCRIPT/bluez.psr | 15 ++++++++++ BT-SCRIPT/btatt.sh | 18 ++++++++++++ BT-SCRIPT/bttest.sh | 15 ++++++++++ 4 files changed, 115 insertions(+) create mode 100755 BT-SCRIPT/bluetooth create mode 100644 BT-SCRIPT/bluez.psr create mode 100755 BT-SCRIPT/btatt.sh create mode 100755 BT-SCRIPT/bttest.sh diff --git a/BT-SCRIPT/bluetooth b/BT-SCRIPT/bluetooth new file mode 100755 index 00000000..4eac54a9 --- /dev/null +++ b/BT-SCRIPT/bluetooth @@ -0,0 +1,67 @@ +#!/sbin/runscript +# Copyright angellfear +# Distributed under the terms of the GNU General Public License v2 + + +depend() { + use logger dns + need net +} + +CSR_CONF="/etc/bluez.psr" + +checkconfig() { + if [ ! -e "${CSR_CONF}" ] ; then + eerror "You need an ${CSR_CONF} file to run bluethooth" + return 1 + fi + if [ ! -e "/sys/class/gpio/export" ] ; then + eerror "You need an /sys/class/gpio/export file to run bluethooth" + return 1 + fi +} + + +start() { + checkconfig || return 1 + ebegin "Starting ${SVCNAME}" + + modprobe hci_uart + + echo "83" > "/sys/class/gpio/export" + echo "114" > "/sys/class/gpio/export" + echo "out" > "/sys/class/gpio/gpio114/direction" + echo "1" > "/sys/class/gpio/gpio114/value" + echo "out" > "/sys/class/gpio/gpio83/direction" + echo "0" > "/sys/class/gpio/gpio83/value" + echo "in" > "/sys/class/gpio/gpio83/direction" + sleep 3 + + bccmd -t bcsp -d /dev/ttyS1 psload -r ${CSR_CONF} + + hciattach -s 115200 /dev/ttyS1 bcsp 115200 noflow + hciconfig hci0 name linportege + hciconfig hci0 up + hciconfig hci0 piscan + hciconfig -a hci0 + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + killall hciattach + echo "out" > "/sys/class/gpio/gpio114/direction" + echo "0" > "/sys/class/gpio/gpio114/value" + echo "out" > "/sys/class/gpio/gpio83/direction" + echo "0" > "/sys/class/gpio/gpio83/value" + eend $? +} + +reload() { + checkconfig || return 1 + ebegin "Reloading ${SVCNAME}" + stop + sleep 3 + start + eend $? +} diff --git a/BT-SCRIPT/bluez.psr b/BT-SCRIPT/bluez.psr new file mode 100644 index 00000000..cfad03b3 --- /dev/null +++ b/BT-SCRIPT/bluez.psr @@ -0,0 +1,15 @@ +// PSKEY Parameters for Bluetooth RF +// (1) 0x0031 (PSKEY_LC_ENHANCED_POWER_TABLE) +&0031 = 0900 0000 3f00 4700 ec00 0f00 0000 3f00 4a00 f000 1600 0000 3f00 4d00 f400 1e00 0000 \ +3f00 5000 f800 2600 0000 3f00 5500 fc00 2e00 0000 3f00 5b00 0000 3800 0000 3f00 6900 0400 +// (2) 0x01f6 (PSKEY_ANA_FTRIM) +&01f6 = 001d +// (3) 0x01fe (PSKEY_ANA_FREQ) +&01fe = 6590 // 26MHz reference clock +// (4) 0x01be (PSKEY_UART_BAUDRATE) +&01be = 0x1d8 // 115200 +// (5) 0x0028 (PSKEY_LC_COMBO_DISABLE_PIO_MASK) +&0028 = 0200 0000 0000 +// (6) 0x002a (PSKEY_LC_COMBO_DOT11_CHANNEL_PIO_BASE) +&002a = 0011 + diff --git a/BT-SCRIPT/btatt.sh b/BT-SCRIPT/btatt.sh new file mode 100755 index 00000000..c686a205 --- /dev/null +++ b/BT-SCRIPT/btatt.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +modprobe hci_uart + +#/root/gpio.sh +/root/bttest.sh + +bccmd -t bcsp -d /dev/ttyS1 psload -r bluez.psr + +#hciattach /dev/ttyS1 bcsp +#hciattach /dev/ttyS1 any +#hciattach /dev/ttyS1 csr +hciattach -s 115200 /dev/ttyS1 bcsp 115200 noflow +hciconfig hci0 name linportege +hciconfig hci0 up +hciconfig hci0 piscan +hciconfig -a hci0 + diff --git a/BT-SCRIPT/bttest.sh b/BT-SCRIPT/bttest.sh new file mode 100755 index 00000000..b159a353 --- /dev/null +++ b/BT-SCRIPT/bttest.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +echo "83" > "/sys/class/gpio/export" +echo "114" > "/sys/class/gpio/export" +echo "out" > "/sys/class/gpio/gpio114/direction" +echo "1" > "/sys/class/gpio/gpio114/value" +echo "out" > "/sys/class/gpio/gpio83/direction" +echo "0" > "/sys/class/gpio/gpio83/value" +echo "in" > "/sys/class/gpio/gpio83/direction" +sleep 1 +cat "/sys/class/gpio/gpio83/value" +sleep 1 +cat "/sys/class/gpio/gpio83/value" +#echo "out" > "/sys/class/gpio/gpio114/direction" +#echo "1" > "/sys/class/gpio/gpio114/value"