OSDN Git Service

Add support of RTL8723BS Bluetooth
[android-x86/device-generic-common.git] / init.sh
diff --git a/init.sh b/init.sh
index 16d5719..e955a8f 100644 (file)
--- a/init.sh
+++ b/init.sh
@@ -48,6 +48,7 @@ function init_hal_bluetooth()
        case "$PRODUCT" in
                T10*TA|HP*Omni*)
                        BTUART_PORT=/dev/ttyS1
+                       set_property hal.bluetooth.uart.proto bcm
                        ;;
                MacBookPro8*)
                        rmmod b43
@@ -65,18 +66,26 @@ function init_hal_bluetooth()
                        modprobe btusb
                        ;;
                *)
-                       for bt in $(lsusb -v | awk ' /Class:.E0/ { print $9 } '); do
+                       for bt in $(busybox lsusb -v | awk ' /Class:.E0/ { print $9 } '); do
                                chown 1002.1002 $bt && chmod 660 $bt
                        done
-                       modprobe btusb
                        ;;
        esac
 
        if [ -n "$BTUART_PORT" ]; then
                set_property hal.bluetooth.uart $BTUART_PORT
                chown bluetooth.bluetooth $BTUART_PORT
-               start btattach:-B$BTUART_PORT
-               log -t hciconfig -p i "`hciconfig`"
+               start btattach
+       fi
+
+       # rtl8723bs bluetooth
+       if dmesg -t | grep -qE '8723bs.*BT'; then
+               TTYSTRING=`dmesg -t | grep -E 'tty.*MMIO' | awk '{print $2}' | head -1`
+               if [ -n "$TTYSTRING" ]; then
+                       echo "RTL8723BS BT uses $TTYSTRING for Bluetooth."
+                       ln -sf $TTYSTRING /dev/rtk_h5
+                       start rtk_hciattach
+               fi
        fi
 }
 
@@ -124,7 +133,7 @@ function init_hal_gralloc()
                *virtiodrmfb)
 #                      set_property ro.hardware.hwcomposer drm
                        ;&
-               0*inteldrmfb|0*radeondrmfb|0*nouveaufb|0*svgadrmfb)
+               0*inteldrmfb|0*radeondrmfb|0*nouveaufb|0*svgadrmfb|0*amdgpudrmfb)
                        set_property ro.hardware.gralloc drm
                        set_drm_mode
                        ;;
@@ -402,16 +411,8 @@ function do_bootcomplete()
                        alsa_amixer -c $c set 'Internal Mic Boost' 3
                fi
        done
-}
 
-function do_hci()
-{
-       local hci=`hciconfig | grep ^hci | cut -d: -f1`
-       local btd="`getprop init.svc.bluetoothd`"
-       log -t bluetoothd -p i "$btd ($hci)"
-       if [ -n "`getprop hal.bluetooth.uart`" ]; then
-               [ "`getprop init.svc.bluetoothd`" = "running" ] && hciconfig $hci up
-       fi
+       post_bootcomplete
 }
 
 PATH=/sbin:/system/bin:/system/xbin
@@ -454,9 +455,6 @@ case "$1" in
        bootcomplete)
                do_bootcomplete
                ;;
-       hci)
-               do_hci
-               ;;
        init|"")
                do_init
                ;;