OSDN Git Service

overlay: add configs for tethering
[android-x86/device-generic-common.git] / init.sh
diff --git a/init.sh b/init.sh
index f9b268b..8ca4e3b 100644 (file)
--- a/init.sh
+++ b/init.sh
@@ -33,7 +33,7 @@ function init_hal_audio()
                        ;;
        esac
 
-       if [ "`cat /proc/asound/card0/id`" = "IntelHDMI" ]; then
+       if grep -qi "IntelHDMI" /proc/asound/card0/id; then
                [ -d /proc/asound/card1 ] || set_property ro.hardware.audio.primary hdmi
        fi
 }
@@ -48,6 +48,8 @@ function init_hal_bluetooth()
        case "$PRODUCT" in
                T10*TA|HP*Omni*)
                        BTUART_PORT=/dev/ttyS1
+                       set_property hal.bluetooth.uart.proto bcm
+                       [ -z "$(getprop sleep.state)" ] && set_property sleep.state none
                        ;;
                MacBookPro8*)
                        rmmod b43
@@ -65,18 +67,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
 }
 
@@ -97,6 +107,9 @@ function set_drm_mode()
                ET1602*)
                        drm_mode=1366x768
                        ;;
+               VMware*)
+                       [ -n "$video" ] && drm_mode=$video
+                       ;;
                *)
                        ;;
        esac
@@ -122,9 +135,10 @@ function init_hal_gralloc()
 {
        case "$(cat /proc/fb | head -1)" in
                *virtiodrmfb)
-#                      set_property ro.hardware.hwcomposer drm
-                       ;&
-               0*inteldrmfb|0*radeondrmfb|0*nouveaufb|0*svgadrmfb)
+                       set_property ro.hardware.hwcomposer drm
+                       set_property ro.hardware.gralloc gbm
+                       ;;
+               0*inteldrmfb|0*radeondrmfb|0*nouveaufb|0*svgadrmfb|0*amdgpudrmfb)
                        set_property ro.hardware.gralloc drm
                        set_drm_mode
                        ;;
@@ -237,7 +251,7 @@ function init_hal_sensors()
                        set_property hal.sensors.iio.accel.matrix 0,1,0,1,0,0,0,0,-1
                        ;;
                *)
-                       has_sensors=false
+                       #has_sensors=false
                        ;;
        esac
 
@@ -344,10 +358,7 @@ function do_bootcomplete()
 
        [ -z "$(getprop persist.sys.root_access)" ] && setprop persist.sys.root_access 3
 
-       # FIXME: autosleep works better on i965?
-       [ "$(getprop debug.mesa.driver)" = "i965" ] && setprop debug.autosleep 1
-
-       lsmod | grep -e brcmfmac && setprop wlan.no-unload-driver 1
+       lsmod | grep -Ehq "brcmfmac|rtl8723be" && setprop wlan.no-unload-driver 1
 
        case "$PRODUCT" in
                1866???|1867???|1869???) # ThinkPad X41 Tablet
@@ -405,16 +416,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
@@ -457,9 +460,6 @@ case "$1" in
        bootcomplete)
                do_bootcomplete
                ;;
-       hci)
-               do_hci
-               ;;
        init|"")
                do_init
                ;;