X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=init.sh;h=8ca4e3b35ca4b170c6904defd1cad53b3060f31c;hb=4a953b2967bcf736ba55206a165b37dc7a3d2075;hp=58aa432e85121bf00441408ae84b9b80c26104c7;hpb=445b176b2cd3a94424c508e506d073ebfc021146;p=android-x86%2Fdevice-generic-common.git diff --git a/init.sh b/init.sh index 58aa432..8ca4e3b 100644 --- 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 ;; @@ -169,6 +183,7 @@ function init_hal_sensors() [ -f /system/lib/hw/sensors.${ro_hardware}.so ] && return 0 local hal_sensors=kbd + local has_sensors=true case "$(cat $DMIPATH/uevent)" in *Lucid-MWE*) set_property ro.ignore_atkbd 1 @@ -232,7 +247,11 @@ function init_hal_sensors() *ST70416-6*) set_property hal.sensors.iio.accel.matrix 0,-1,0,-1,0,0,0,0,-1 ;; + *ONDATablet*) + set_property hal.sensors.iio.accel.matrix 0,1,0,1,0,0,0,0,-1 + ;; *) + #has_sensors=false ;; esac @@ -245,6 +264,8 @@ function init_hal_sensors() fi set_property ro.hardware.sensors $hal_sensors + [ "$hal_sensors" != "kbd" ] && has_sensors=true + set_property config.override_forced_orient $has_sensors } function create_pointercal() @@ -337,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 @@ -398,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 @@ -450,9 +460,6 @@ case "$1" in bootcomplete) do_bootcomplete ;; - hci) - do_hci - ;; init|"") do_init ;;